18 #include <vlutil/vlSmartPointers.h>
19 #include <vlutil/vlMutex.h>
28 class DtLgrSystemDriver;
29 class DtCommandInterface;
30 class DtRuntimeCommandFactory;
31 class DtLgrCommandThread;
54 virtual void tick() = 0;
60 virtual const DtString& driverName()
const;
63 virtual const DtString& driverInfo();
66 virtual void processCommand(
const DtCommand& command);
76 virtual bool releasePipeline() = 0;
82 virtual bool getPipeline() = 0;
87 virtual bool hasPipeline()
const = 0;
93 virtual void stopAllThreads();
110 virtual void sendResponse(
DtResponse response);
113 virtual void queueResponse(
DtResponse response);
116 virtual void sendQueuedResponses();
119 virtual void emptyResponseQueue();
The logger command which contains the command type and its parameters.
Definition: lgrCommand.h:110
std::shared_ptr< DtCommandFunctor > DtCommandFunctorSP
Typedefs for shared pointer to the Functors.
Definition: lgrCommandFunctor.h:49
std::list< DtResponse > DtResponseQueue
Definition: lgrDriver.h:130
This class provides the base interface for DtLgrCommandHandler.
Definition: lgrDriver.h:35
DtRuntimeCommandFactory * myRuntimeCommandFactory
Definition: lgrDriver.h:132
std::map< DtString, DtLgrCommandId > DtLgrCommandNameMap
Definition: lgrDriver.h:128
DtMutex myMutex
Definition: lgrDriver.h:140
DtResponseQueue myResponseQueue
Definition: lgrDriver.h:136
DtString myName
Definition: lgrDriver.h:137
Contains MAKLogger::Contains DtCommandDefinition and MAKLogger::DtRuntimeCommandFactory classes...
The factory for decoding text commands.
Definition: lgrRuntimeCommandFactory.h:67
std::shared_ptr< DtLgrCommandHandler > DtLgrCommandHandlerSP
Definition: lgrDriver.h:150
The definition of a command and it's parameters.
Definition: lgrRuntimeCommandFactory.h:40
DtString myInfo
Definition: lgrDriver.h:138
std::shared_ptr< DtCommandDispatcher > DtCommandDispatcherSP
Definition: lgrCommandDispatcher.h:101
Contains MAKLogger::DtLgrCommandType and MAKLogger::DtCommand classes.
/brief Base class for defining command operations that run in a separate thread.
Definition: lgrCommandThread.h:26
std::map< DtLgrCommandThread *, DtThread * > CommandThreadMap
A set of running command threads.
Definition: lgrDriver.h:143
DtLgrCommandHandlerMap myCommandMap
Definition: lgrDriver.h:134
#define DT_DLL_LGRCORE
Definition: lgrCore.h:19
Contains MAKLogger::DtCommandFunctor, MAKLogger::DtResponseFunctor, MAKLogger::DtLgrCommandHandlerFun...
DtCommandDispatcherSP myDispatcher
Definition: lgrDriver.h:135
CommandThreadMap myRunningCommandThreads
Running command threads.
Definition: lgrDriver.h:146
std::map< DtLgrCommandId, DtCommandFunctorSP > DtLgrCommandHandlerMap
Definition: lgrDriver.h:127
std::shared_ptr< const DtCommand > DtResponse
Definition: lgrCommand.h:175
Contains MAKLogger::DtCommandDispatcher class.
Contains lgrCore library definitions.