11 #include <vl/interaction.h>
28 using EventPtr = std::unique_ptr<makVrfEvents::DtEvent>;
34 using ConverterFcn = std::function<EventList(const DtInteraction*, DtCommunicationManager* commMgr)>;
48 template <
typename InteractionType>
52 template <
typename InteractionType>
53 void removeConversionFunction();
56 virtual void registerDefaultConversions();
59 virtual void clearConversionFunctions();
138 : myFcn(fcn), myTranslator(converter) {};
143 myTranslator = converter;
150 template <
typename InteractionType>
161 void registerCallback();
163 void unregisterCallback();
165 static void processInteractionCallback(InteractionType* inter,
void* converter);
167 void processInteraction(InteractionType* inter);
178 #include <vrlinkNetworkInterface/vrlinkCommandInteractionTranslator.inl>
std::unique_ptr< makVrfEvents::DtEvent > EventPtr
Definition: vrlinkCommandInteractionTranslator.h:28
The command interaction translator is capable of translating interactions into messages to be sent to...
Definition: vrlinkCommandInteractionTranslator.h:24
std::vector< ConverterPtr > ConverterList
Definition: vrlinkCommandInteractionTranslator.h:171
virtual void reinitialize(ConverterFcn fcn, DtVrlinkCommandInteractionTranslator *converter)
Definition: vrlinkCommandInteractionTranslator.h:140
Definition: vrlinkCommandInteractionTranslator.h:134
Definition: vrlinkCommandInteractionTranslator.h:151
std::unique_ptr< InteractionConverterBase > ConverterPtr
Definition: vrlinkCommandInteractionTranslator.h:170
InteractionConverterBase(ConverterFcn fcn, DtVrlinkCommandInteractionTranslator *converter)
Definition: vrlinkCommandInteractionTranslator.h:137
std::vector< EventPtr > EventList
Definition: vrlinkCommandInteractionTranslator.h:29
class DtVrlinkNetworkInterface:
Definition: vrlinkNetworkInterface.h:72
virtual bool processEvent(const makVrfEvents::DtEvent &) override
This translator only translates incoming messages, not outgoing. Therefore this method does nothing...
Definition: vrlinkCommandInteractionTranslator.h:130
The DtCommunicationManager class is a convenience class that will create both the DtNetworkInterfaceM...
Definition: communicationManager.h:54
#define DT_DLL_vrlinkNetworkInterface
This file is used to determine how to build.
Definition: vrlinkNetworkInterfaceDefines.h:24
DtVrlinkCommandInteractionTranslator * myTranslator
Definition: vrlinkCommandInteractionTranslator.h:147
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
ConverterFcn myFcn
Definition: vrlinkCommandInteractionTranslator.h:146
ConverterList myConverters
Definition: vrlinkCommandInteractionTranslator.h:172
Definition: vrlinkEventTranslator.h:28
std::function< EventList(const DtInteraction *, DtCommunicationManager *commMgr)> ConverterFcn
The format for a converter function. Takes the incoming interaction and a pointer to communication ma...
Definition: vrlinkCommandInteractionTranslator.h:34