17 #include <vlutil/vlThread.h>
19 #include <boost/type_traits.hpp>
26 template <
typename T,
bool>
77 inline const std::string& className()
const;
90 inline bool distributeMessages()
const;
95 inline DtMessage& startNewCall(
unsigned int function);
98 void addCreateObjectCall();
101 void addDeleteObjectCall();
104 inline unsigned int callCount()
const;
109 #define DT_DECLARE_QUEUE_OPERATION_FUNCTION(argCount)\
110 template <typename C, MAKE_LIST(typename T,argCount) >\
111 inline void queueOperationCall(unsigned int state_function,\
112 void (C::*m)( MAKE_LIST(T,argCount) ),\
113 MAKE_MULTILIST(typename Arg<T,>::Type t,argCount));
116 template <
typename C>
117 inline void queueOperationCall(
unsigned int state_function,
void (C::*m)());
140 inline DtAgentManagerInterface::OrderedCallList& callList();
146 std::
string myClassName;
149 bool myDistributeObjectFlag;
150 DtThreadId myThreadId;
T Type
Definition: DtAgent.h:32
Interaction makVrv::DtAgent class.
The IGI Message.
Definition: DtMessage.h:33
#define DT_DECLARE_QUEUE_OPERATION_FUNCTION(argCount)
template <typename C, typename T1 > void queueStateCall(unsigned int state_function, void (C::*m)(T1), typename Arg<T1>::Type t1);
Definition: DtAgent.h:109
DT_DLL_VRVAUDIO void init(DtDe &displayEngine)
Contains utility macros and methods for templates.
A distributed object agent base class.
Definition: DtAgent.h:54
T value(details::expression_node< T > *n)
Definition: exprtk.hpp:12342
DtUniqueID Type
Definition: DtAgent.h:38
Make the types of arguments of a function dependent on the types in a function pointer.
Definition: DtAgent.h:44
Contains makVrv:DtAgentManager class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
The DtAgentManager manages the distributed scene object framework.
Definition: DtAgentManager.h:38
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:36
Contains makVrv::DtAgentManagerInterface class.
ArgOverrideAsId< T, boost::is_pointer< T >::value &&boost::is_class< typename boost::remove_pointer< T >::type >::value >::Type Type
Definition: DtAgent.h:47
Contains DLL export macros.