Go to the documentation of this file.
16 #ifndef SURGSIM_DEVICES_NIMBLE_NIMBLESCAFFOLD_H
17 #define SURGSIM_DEVICES_NIMBLE_NIMBLESCAFFOLD_H
84 std::shared_ptr<SurgSim::Framework::Logger>
m_logger;
102 #endif // SURGSIM_DEVICES_NIMBLE_NIMBLESCAFFOLD_H
bool unregisterDevice(const NimbleDevice *device)
Unregisters the specified device object.
Definition: NimbleScaffold.cpp:337
static std::shared_ptr< NimbleScaffold > getOrCreateSharedInstance()
Gets or creates the scaffold shared by all NimbleDevice instances.
Definition: NimbleScaffold.cpp:482
void doBeforeStop() override
Prepares the thread for its execution to be stopped.
Definition: NimbleScaffold.cpp:427
NimbleScaffold()
Constructor.
Definition: NimbleScaffold.cpp:279
void resetDeviceData()
Reset the device data.
Definition: NimbleScaffold.cpp:460
friend class NimbleThread
Definition: NimbleScaffold.h:58
bool doUpdate(double dt) override
Implementation of actual work function for this thread, this has a default implementation to handle d...
Definition: NimbleScaffold.cpp:389
std::shared_ptr< SurgSim::Framework::Logger > m_logger
Logger used by the scaffold and all devices.
Definition: NimbleScaffold.h:84
A class implementing the communication with the Nimble server.
Definition: NimbleDevice.h:57
bool doInitialize() override
Definition: NimbleScaffold.cpp:367
bool doStartUp() override
Definition: NimbleScaffold.cpp:384
Definition: CompoundShapeToGraphics.cpp:29
static SurgSim::DataStructures::DataGroup buildDeviceInputData()
Builds the data layout for the application input (i.e. device output).
Definition: NimbleScaffold.cpp:471
A class that manages Nimble devices.
Definition: NimbleScaffold.h:36
A collection of NamedData objects.
Definition: DataGroup.h:68
static std::array< std::pair< std::string, int >, 15 > m_jointPoseNames
The data group name for the joint poses, and the corresponding indices within the state data.
Definition: NimbleScaffold.h:96
std::string m_serverIpAddress
The IP address of the Nimble hand tracking server.
Definition: NimbleScaffold.h:89
Definition: NimbleScaffold.cpp:253
Basic thread implementation, tries to maintain a constant rate, supplies startup an initialization,...
Definition: BasicThread.h:48
~NimbleScaffold()
Destructor.
Definition: NimbleScaffold.cpp:288
std::unique_ptr< StateData > m_state
Internal scaffold state.
Definition: NimbleScaffold.h:86
bool registerDevice(NimbleDevice *device)
Registers the specified device object.
Definition: NimbleScaffold.cpp:302
void updateDeviceData()
Update the devices based on the data read from the Nimble server.
Definition: NimbleScaffold.cpp:442
bool m_serverSocketOpen
Flag to indicate that the socket is opened successfully.
Definition: NimbleScaffold.h:93
std::string m_serverPort
The port where the server is communicating.
Definition: NimbleScaffold.h:91