16 #ifndef SURGSIM_INPUT_UNITTESTS_TESTDEVICE_H 17 #define SURGSIM_INPUT_UNITTESTS_TESTDEVICE_H 19 #include "SurgSim/Input/CommonDevice.h" 20 #include "SurgSim/Input/InputConsumerInterface.h" 21 #include "SurgSim/Input/OutputProducerInterface.h" 22 #include "SurgSim/DataStructures/DataGroup.h" 23 #include "SurgSim/DataStructures/DataGroupBuilder.h" 35 explicit TestDevice(
const std::string& uniqueName);
54 std::string lastPulledData;
60 bool finalize()
override;
68 m_numTimesReceivedInput(0)
75 virtual void handleInput(
const std::string& device,
const DataGroup& inputData);
77 int m_numTimesReceivedInput;
85 m_numTimesRequestedOutput(0),
86 m_refuseToProduce(
false)
94 virtual bool requestOutput(
const std::string& device,
DataGroup* outputData);
96 int m_numTimesRequestedOutput;
97 bool m_refuseToProduce;
101 #endif // SURGSIM_INPUT_UNITTESTS_TESTDEVICE_H void pushInput() override
Push application input to consumers.
Definition: TestDevice.cpp:46
Definition: TestDevice.h:81
void addInteger(const std::string &name)
A shortcut for adding a named integer entry.
Definition: DataGroupBuilder.cpp:158
NamedData< IntegerType > & integers()
Return the integer data structure.
Definition: DataGroup.cpp:111
bool pullOutput() override
Pull application output from a producer.
Definition: TestDevice.cpp:58
bool set(int index, const T &value)
Record the data for an entry specified by an index.
Definition: NamedData-inl.h:220
DataGroup createData() const
Produces a DataGroup object with an immutable set of names and indices.
Definition: DataGroupBuilder.cpp:28
A collection of NamedData objects.
Definition: DataGroup.h:68
bool initialize() override
Fully initialize the device.
Definition: TestDevice.cpp:25
Definition: TestDevice.h:32
bool m_initialized
true if initialized and not finalized.
Definition: TestDevice.h:57
A class that allows you to build a DataGroup structure.
Definition: DataGroupBuilder.h:38
bool isInitialized() const override
Definition: TestDevice.cpp:40
static DataGroup buildInputData()
Builds the data layout for the application input (i.e. device output).
Definition: TestDevice.cpp:71