commandbase.h File Reference

Classes

class  CommandDataInterface
 
class  CommandDataInterface::SetFunctor
 
class  LegacyCommandDataInterface
 
class  CommandClassInterface
 
class  CommandInteractionClassInterface
 
class  CommandDescriptionClassInterface
 
class  LegacyCommandClassInterface
 
class  MigratedCommandClassInterface
 
class  CommandConversionClassInterface
 
class  CommandCacheData
 
class  CommandCacheInterface
 
class  CommandExecutionInterface
 

Namespaces

 maxon
 
 maxon::COMMAND
 
 maxon::CommandDataClasses
 

Typedefs

using CommandCacheMap = HashMap< Id, CommandCacheRef >
 
using CommandCacheDataRef = StrongRef< CommandCacheData >
 
using MemoizationType = Tuple< Bool, const void *, Int >
 

Enumerations

enum class  COMMANDSTATE {
  DISABLED ,
  ENABLED
}
 
enum class  COMMANDRESULT {
  OK ,
  SKIP ,
  BREAK
}
 
enum class  INTERACTIONTYPE {
  NONE ,
  START ,
  ITERATE ,
  END ,
  REALTIME
}
 

Functions

enum maxon::COMMANDSTATE MAXON_ENUM_LIST (COMMANDSTATE)
 
enum maxon::COMMANDRESULT MAXON_ENUM_LIST (COMMANDRESULT)
 
enum maxon::INTERACTIONTYPE MAXON_ENUM_LIST (INTERACTIONTYPE, "net.maxon.command.interationtype")
 
template<typename T = void, typename KEY >
static Tuple< InternedId, Data > Param (KEY &&key, T &&data)
 
enum MAXON_WARN_UNUSED_CLASS maxon::COMMAND_ACTION_STATE MAXON_ENUM_LIST (COMMAND_ACTION_STATE)
 
 MAXON_DATATYPE (CommandCacheData, "net.maxon.datatype.commandcachedata", MAXON_IMPLEMENTATION_MODULE("net.maxon.command"))
 
 MAXON_DATATYPE (CommandCacheMap, "net.maxon.datatype.commandcachemap", MAXON_IMPLEMENTATION_MODULE("net.maxon.command"))
 
 MAXON_ATTRIBUTE (Bool, INTERACTIVE, "net.maxon.command.interactive", RESOURCE_DEFAULT(false))
 
 MAXON_ATTRIBUTE (CommandClass, INTERACTIONCLASS, "net.maxon.command.interactionclass")
 
 MAXON_ATTRIBUTE (Bool, USECACHE, "net.maxon.command.usecache", RESOURCE_DEFAULT(false))
 
 MAXON_ATTRIBUTE (CommandCacheDataRef, CACHEDATA, "net.maxon.command.cache")
 
 MAXON_ATTRIBUTE (MemoizationType, MEMOIZATION, "net.maxon.command.memoization", RESOURCE_DEFAULT(MemoizationType{}))
 
 MAXON_ATTRIBUTE (ThreadRef, THREAD, "net.maxon.command.thread")
 
 MAXON_ATTRIBUTE (BackgroundProgressRef, BACKGROUNDHANDLER, "net.maxon.command.backgroundhandler")
 
 MAXON_ATTRIBUTE (Bool, ISINMEMOIZATIONCACHE, "net.maxon.command.isinmemoizationcache")
 
 MAXON_REGISTRY (Class< CommandDataRef >, CommandDataClasses, "net.maxon.command.registry.commanddataclasses")
 
 MAXON_REGISTRY (Class< LegacyCommandDataRef >, LegacyCommandDataClasses, "net.maxon.command.registry.legacycommanddataclasses")
 
 MAXON_REGISTRY (CommandClass, CommandClasses, "net.maxon.command.registry.commandclasses")
 
 MAXON_REGISTRY (LegacyCommandClass, LegacyCommand, "net.maxon.command.registry.legacycommandclass")
 
 MAXON_REGISTRY (MigratedCommandClass, MigratedCommand, "net.maxon.command.registry.migratedcommandclass")
 
 MAXON_REGISTRY (CommandInteractionClass, CommandInteraction, "net.maxon.command.registry.commandinteractionclass")
 
 MAXON_REGISTRY (CommandDescriptionClass, CommandDescription, "net.maxon.command.registry.commanddescriptionclass")
 
 MAXON_REGISTRY (CommandConversionClass, CommandConversionClasses, "net.maxon.command.registry.commandconversionclasses")
 
 MAXON_REGISTRY (Class< CommandCacheRef >, CommandCacheClasses, "net.maxon.command.registry.commandcacheclasses")
 
 MAXON_DECLARATION (CommandDataClasses::EntryType, BASE, "net.maxon.commanddata.base", MAXON_IMPLEMENTATION_MODULE("net.maxon.command"))
 

Variables

 DISABLED
 
 ENABLED
 
 OK
 
 SKIP
 
 BREAK
 
 NONE
 
 START
 
 ITERATE
 
 END
 
 REALTIME
 
 NOT_EXECUTED
 

Variable Documentation

◆ DISABLED

DISABLED

The command can't be executed.

◆ ENABLED

ENABLED

The command can be executed.

◆ OK

OK

The command was executed properly.

◆ SKIP

SKIP

The command did not execute because no action was necessary (e.g. no selection).

◆ BREAK

BREAK

The command execution was interrupted.

◆ NONE

NONE

No interaction.

◆ START

START

Interaction start (e.g. first mouse click).

◆ ITERATE

ITERATE

Interaction iteration, performed several times after START (e.g. mouse drag).

◆ END

END

Interaction end (e.g. mouse released).

◆ REALTIME

REALTIME

Real-time iterative interaction (e.g. cursor over viewport).

◆ NOT_EXECUTED

NOT_EXECUTED

Specified action is not implemented or not executed.