43 std::vector<ToolPtr>
toVector(std::map<QString, OpenIGTLinkToolPtr> map)
45 std::vector<ToolPtr> retval;
46 std::map<QString, OpenIGTLinkToolPtr>::iterator it = map.begin();
47 for(; it!= map.end(); ++it)
49 retval.push_back(it->second);
56 mConnection(connection)
59 if(mConnection == NULL)
80 return "org.custusx.core.openigtlink";
96 this->startTracking();
105 this->stopTracking();
107 this->uninitialize();
132 void OpenIGTLinkTrackingSystemService::configure()
134 this->serverIsConfigured();
137 void OpenIGTLinkTrackingSystemService::deconfigure()
141 this->serverIsDeconfigured();
144 void OpenIGTLinkTrackingSystemService::initialize()
149 void OpenIGTLinkTrackingSystemService::uninitialize()
154 void OpenIGTLinkTrackingSystemService::startTracking()
160 void OpenIGTLinkTrackingSystemService::stopTracking()
166 void OpenIGTLinkTrackingSystemService::serverIsConfigured()
171 void OpenIGTLinkTrackingSystemService::serverIsDeconfigured()
176 void OpenIGTLinkTrackingSystemService::serverIsConnected()
182 void OpenIGTLinkTrackingSystemService::serverIsDisconnected()
188 void OpenIGTLinkTrackingSystemService::receiveTransform(QString devicename,
Transform3D transform,
double timestamp)
192 tool->toolTransformAndTimestampSlot(transform, timestamp);
195 void OpenIGTLinkTrackingSystemService::receiveCalibration(QString devicename,
Transform3D calibration)
198 tool->setCalibration_sMt(calibration);
201 void OpenIGTLinkTrackingSystemService::receiveProbedefinition(QString devicename,
ProbeDefinitionPtr definition)
205 ProbeDefinition old_def = probe->getProbeDefinition();
206 definition->setUid(old_def.getUid());
207 definition->applySoundSpeedCompensationFactor(old_def.getSoundSpeedCompensationFactor());
209 probe->setProbeDefinition(*(definition.get()));
212 void OpenIGTLinkTrackingSystemService::internalSetState(
Tool::State state)
221 std::map<QString, OpenIGTLinkToolPtr>::iterator it = mTools.find(devicename);
222 if(it == mTools.end())
225 mTools[devicename] = retval;
void probedefinition(QString devicename, ProbeDefinitionPtr definition)
DoubleBoundingBox3D transform(const Transform3D &m, const DoubleBoundingBox3D &bb)
void transform(QString devicename, Transform3D transform, double timestamp)
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
virtual void setState(const Tool::State val)
asynchronously request a state. Wait for signal stateChanged()
virtual void setLoggingFolder(QString loggingFolder)
virtual TrackerConfigurationPtr getConfiguration()
void disconnectFromServer()
virtual void requestDisconnect()
not thread-safe: use invoke
virtual void requestConnect()
not thread-safe: use invoke
boost::shared_ptr< Probe > ProbePtr
boost::shared_ptr< class TrackerConfiguration > TrackerConfigurationPtr
OpenIGTLinkTrackingSystemService(NetworkConnectionHandlePtr connection)
std::vector< ToolPtr > toVector(std::map< QString, OpenIGTLinkToolPtr > map)
virtual Tool::State getState() const
virtual std::vector< ToolPtr > getTools()
boost::shared_ptr< class NetworkConnectionHandle > NetworkConnectionHandlePtr
The NetworkConnection class handles incoming OpenIGTLink packages.
void calibration(QString devicename, Transform3D calibration)
boost::shared_ptr< OpenIGTLinkTool > OpenIGTLinkToolPtr
virtual ~OpenIGTLinkTrackingSystemService()
boost::shared_ptr< class ProbeDefinition > ProbeDefinitionPtr
virtual ToolPtr getReference()
reference tool used by entire tracking service - NOTE: system fails if several TrackingSystemServices...
boost::shared_ptr< class Tool > ToolPtr
virtual QString getUid() const