#include <vtkMRMLIGTLConnectorNode.h>
typedef std::map<std::string, vtkIGTLCircularBuffer*> vtkMRMLIGTLConnectorNode::CircularBufferMap [private] |
| typedef std::set<int> vtkMRMLIGTLConnectorNode::DeviceIDSetType |
| typedef std::map<int, DeviceInfoType> vtkMRMLIGTLConnectorNode::DeviceInfoMapType |
| typedef std::list<vtkIGTLToMRMLBase*> vtkMRMLIGTLConnectorNode::MessageConverterListType |
| typedef std::map<std::string, vtkIGTLToMRMLBase*> vtkMRMLIGTLConnectorNode::MessageConverterMapType |
| typedef std::vector<vtkMRMLNode*> vtkMRMLIGTLConnectorNode::MRMLNodeListType |
| typedef std::vector<std::string> vtkMRMLIGTLConnectorNode::NameListType |
| typedef std::vector<NodeInfoType> vtkMRMLIGTLConnectorNode::NodeInfoListType |
| anonymous enum |
| vtkMRMLIGTLConnectorNode::vtkMRMLIGTLConnectorNode | ( | ) | [protected] |
References CheckCRC, CircularBufferMutex, EventQueueMutex, vtkMRMLNode::HideFromEditors, IGTLNameToConverterMap, IncomingDeviceIDSet, IncomingMRMLNodeInfoList, MessageConverterList, MRMLIDToConverterMap, Mutex, New(), OutgoingDeviceIDSet, OutgoingMRMLNodeList, RestrictDeviceName, ServerHostname, ServerPort, ServerStopFlag, State, STATE_OFF, ThreadID, Type, TYPE_NOT_DEFINED, and UnspecifiedDeviceIDSet.
| vtkMRMLIGTLConnectorNode::~vtkMRMLIGTLConnectorNode | ( | ) | [protected] |
References Buffer, CircularBufferMutex, EventQueueMutex, Mutex, and Stop().
| vtkMRMLIGTLConnectorNode::vtkMRMLIGTLConnectorNode | ( | const vtkMRMLIGTLConnectorNode & | ) | [protected] |
| void vtkMRMLIGTLConnectorNode::Copy | ( | vtkMRMLNode * | node | ) | [virtual] |
References GetServerHostname(), SetTypeClient(), SetTypeServer(), type, TYPE_CLIENT, TYPE_NOT_DEFINED, and TYPE_SERVER.
| vtkMRMLNode * vtkMRMLIGTLConnectorNode::CreateNodeInstance | ( | ) | [virtual] |
Create instance of the default node. Like New only virtual NOTE: Subclasses should implement this method
Implements vtkMRMLNode.
References autoSlicerTracto2regions::ret.
| vtkIGTLCircularBuffer * vtkMRMLIGTLConnectorNode::GetCircularBuffer | ( | std::string & | key | ) |
References Buffer.
Referenced by ImportDataFromCircularBuffer().
| vtkIGTLToMRMLBase * vtkMRMLIGTLConnectorNode::GetConverterByIGTLDeviceType | ( | const char * | type | ) | [private] |
| vtkIGTLToMRMLBase * vtkMRMLIGTLConnectorNode::GetConverterByMRMLTag | ( | const char * | tag | ) | [private] |
References MessageConverterList.
Referenced by RegisterOutgoingMRMLNode().
| vtkIGTLToMRMLBase * vtkMRMLIGTLConnectorNode::GetConverterByNodeID | ( | const char * | id | ) |
References MRMLIDToConverterMap.
Referenced by vtkOpenIGTLinkIFGUI::UpdateIOConfigTree().
| int vtkMRMLIGTLConnectorNode::GetIGTLTimeStamp | ( | vtkMRMLNode * | node, | |
| int & | second, | |||
| int & | nanosecond | |||
| ) |
References IncomingMRMLNodeInfoList.
| vtkMRMLNode * vtkMRMLIGTLConnectorNode::GetIncomingMRMLNode | ( | unsigned int | i | ) |
References IncomingMRMLNodeInfoList.
Referenced by vtkOpenIGTLinkIFGUI::UpdateIOConfigTree().
| virtual const char* vtkMRMLIGTLConnectorNode::GetNodeTagName | ( | ) | [inline, virtual] |
Get node XML tag name (like Volume, Model) NOTE: Subclasses should implement this method
Implements vtkMRMLNode.
Referenced by vtkOpenIGTLinkIFGUI::ProcessMRMLEvents().
| unsigned int vtkMRMLIGTLConnectorNode::GetNumberOfIncomingMRMLNodes | ( | ) |
References IncomingMRMLNodeInfoList.
Referenced by vtkOpenIGTLinkIFGUI::UpdateIOConfigTree().
| unsigned int vtkMRMLIGTLConnectorNode::GetNumberOfOutgoingMRMLNodes | ( | ) |
References OutgoingMRMLNodeList.
Referenced by vtkOpenIGTLinkIFGUI::UpdateIOConfigTree().
| vtkMRMLNode * vtkMRMLIGTLConnectorNode::GetOutgoingMRMLNode | ( | unsigned int | i | ) |
References OutgoingMRMLNodeList.
Referenced by vtkOpenIGTLinkIFGUI::UpdateIOConfigTree().
| const char* vtkMRMLIGTLConnectorNode::GetServerHostname | ( | ) | [inline] |
| unsigned int vtkMRMLIGTLConnectorNode::GetUpdatedBuffersList | ( | NameListType & | nameList | ) |
References Buffer.
Referenced by ImportDataFromCircularBuffer().
| void vtkMRMLIGTLConnectorNode::ImportDataFromCircularBuffer | ( | ) |
References vtkIGTLToMRMLBase::CreateNewNode(), vtkMRMLNode::DisableModifiedEventOff(), vtkMRMLNode::DisableModifiedEventOn(), vtkIGTLCircularBuffer::EndPull(), GetCircularBuffer(), vtkMRMLScene::GetClassNameByTag(), vtkIGTLToMRMLBase::GetMRMLName(), vtkMRMLScene::GetNodesByClassByName(), vtkMRMLNode::GetNodeTagName(), vtkIGTLCircularBuffer::GetPullBuffer(), vtkMRMLNode::GetScene(), GetUpdatedBuffersList(), IGTLNameToConverterMap, vtkIGTLToMRMLBase::IGTLToMRML(), IncomingMRMLNodeInfoList, vtkMRMLNode::InvokePendingModifiedEvent(), vtkMRMLNode::Modified(), vtkMRMLIGTLConnectorNode::NodeInfoType::nanosecond, New(), NewDeviceEvent, ReceiveEvent, RegisterIncomingMRMLNode(), vtkMRMLIGTLQueryNode::ResponseEvent, RestrictDeviceName, vtkMRMLIGTLConnectorNode::NodeInfoType::second, vtkIGTLCircularBuffer::StartPull(), and vtkMRMLIGTLQueryNode::STATUS_SUCCESS.
Referenced by vtkOpenIGTLinkIFLogic::ImportFromCircularBuffers().
| void vtkMRMLIGTLConnectorNode::ImportEventsFromEventBuffer | ( | ) |
References EventQueue, and EventQueueMutex.
Referenced by vtkOpenIGTLinkIFLogic::ImportEvents().
| void vtkMRMLIGTLConnectorNode::LockIncomingMRMLNode | ( | vtkMRMLNode * | node | ) |
References IncomingMRMLNodeInfoList.
| vtkMRMLIGTLConnectorNode * vtkMRMLIGTLConnectorNode::New | ( | ) | [static] |
Reimplemented from vtkMRMLNode.
References autoSlicerTracto2regions::ret.
Referenced by ImportDataFromCircularBuffer(), ReceiveController(), ThreadFunction(), vtkMRMLIGTLConnectorNode(), and WaitForConnection().
| void vtkMRMLIGTLConnectorNode::operator= | ( | const vtkMRMLIGTLConnectorNode & | ) | [protected] |
Reimplemented from vtkMRMLNode.
| void vtkMRMLIGTLConnectorNode::PrintSelf | ( | ostream & | os, | |
| vtkIndent | indent | |||
| ) |
Reimplemented from vtkMRMLNode.
| void vtkMRMLIGTLConnectorNode::ProcessMRMLEvents | ( | vtkObject * | caller, | |
| unsigned long | event, | |||
| void * | callData | |||
| ) | [virtual] |
method to propagate events generated in mrml
Reimplemented from vtkMRMLNode.
References MRMLIDToConverterMap, vtkIGTLToMRMLBase::MRMLToIGTL(), OutgoingMRMLNodeList, SendData(), and slicerget::size.
| void vtkMRMLIGTLConnectorNode::PushNode | ( | vtkMRMLNode * | node | ) |
References vtkIGTLToMRMLBase::GetNodeEvents(), and MRMLIDToConverterMap.
Referenced by vtkOpenIGTLinkIFGUI::ExportDataToIGTLCallback().
| void vtkMRMLIGTLConnectorNode::ReadXMLAttributes | ( | const char ** | atts | ) | [virtual] |
Set node attributes NOTE: Subclasses should implement this method NOTE: Call this method in the subclass impementation
Reimplemented from vtkMRMLNode.
References birnlexvis::port, SetTypeClient(), SetTypeServer(), type, TYPE_CLIENT, TYPE_NOT_DEFINED, and TYPE_SERVER.
| int vtkMRMLIGTLConnectorNode::ReceiveController | ( | ) |
Dec 7, 2010: Removing the following code, since message without device name should be handled in the MRML scene as well.
References Buffer, CircularBufferMutex, vtkIGTLCircularBuffer::EndPush(), GetConverterByIGTLDeviceType(), vtkIGTLToMRMLBase::GetMRMLName(), vtkMRMLNode::GetNodeTagName(), vtkIGTLCircularBuffer::GetPushBuffer(), IncomingMRMLNodeInfoList, New(), RestrictDeviceName, ServerStopFlag, Skip(), Socket, and vtkIGTLCircularBuffer::StartPush().
Referenced by ThreadFunction().
| vtkMRMLIGTLConnectorNode::NodeInfoType * vtkMRMLIGTLConnectorNode::RegisterIncomingMRMLNode | ( | vtkMRMLNode * | node | ) |
References IncomingMRMLNodeInfoList, vtkMRMLIGTLConnectorNode::NodeInfoType::lock, vtkMRMLNode::Modified(), vtkMRMLIGTLConnectorNode::NodeInfoType::nanosecond, vtkMRMLIGTLConnectorNode::NodeInfoType::node, and vtkMRMLIGTLConnectorNode::NodeInfoType::second.
Referenced by vtkOpenIGTLinkIFGUI::AddNodeCallback(), ImportDataFromCircularBuffer(), and vtkMRMLTransPerinealProstateRobotNode::SetAndObserveRobotConnectorNodeID().
| int vtkMRMLIGTLConnectorNode::RegisterMessageConverter | ( | vtkIGTLToMRMLBase * | converter | ) |
References CheckCRC, vtkIGTLToMRMLBase::GetConverterType(), vtkIGTLToMRMLBase::GetIGTLName(), vtkIGTLToMRMLBase::GetMRMLName(), vtkIGTLToMRMLBase::GetNumberOfIGTLNames(), IGTLNameToConverterMap, MessageConverterList, slicerget::name, and vtkIGTLToMRMLBase::TYPE_NORMAL.
Referenced by vtkOpenIGTLinkIFGUI::ProcessMRMLEvents(), and vtkOpenIGTLinkIFLogic::RegisterMessageConverter().
| int vtkMRMLIGTLConnectorNode::RegisterOutgoingMRMLNode | ( | vtkMRMLNode * | node, | |
| const char * | devType = NULL | |||
| ) |
References vtkEventBroker::AddObservation(), GetConverterByIGTLDeviceType(), GetConverterByMRMLTag(), vtkEventBroker::GetInstance(), vtkIGTLToMRMLBase::GetNodeEvents(), vtkMRMLNode::GetNodeTagName(), vtkMRMLNode::Modified(), vtkMRMLNode::MRMLCallbackCommand, MRMLIDToConverterMap, mathExample::n, OutgoingMRMLNodeList, vtkEventBroker::RemoveObservations(), and ModifyHeader::tag.
Referenced by vtkOpenIGTLinkIFGUI::AddNodeCallback(), and vtkMRMLTransPerinealProstateRobotNode::SetAndObserveRobotConnectorNodeID().
| void vtkMRMLIGTLConnectorNode::RequestInvokeEvent | ( | unsigned long | eventId | ) | [private] |
References EventQueue, and EventQueueMutex.
Referenced by ThreadFunction().
References Socket.
Referenced by ProcessMRMLEvents().
| void vtkMRMLIGTLConnectorNode::SetCheckCRC | ( | int | c | ) |
References CheckCRC, and MessageConverterList.
Referenced by vtkOpenIGTLinkIFGUI::ProcessGUIEvents().
| void vtkMRMLIGTLConnectorNode::SetServerHostname | ( | std::string | str | ) | [inline] |
| void vtkMRMLIGTLConnectorNode::SetServerHostname | ( | const char * | str | ) | [inline] |
Referenced by vtkOpenIGTLinkIFGUI::ProcessGUIEvents().
References vtkMRMLNode::Modified(), ServerHostname, ServerPort, Type, and TYPE_CLIENT.
References vtkMRMLNode::Modified(), ServerHostname, ServerPort, Type, and TYPE_CLIENT.
Referenced by Copy(), and ReadXMLAttributes().
References vtkMRMLNode::Modified(), ServerPort, Type, and TYPE_SERVER.
Referenced by Copy(), and ReadXMLAttributes().
References mathExample::n, and Socket.
Referenced by ReceiveController().
| int vtkMRMLIGTLConnectorNode::Start | ( | ) |
References ActivatedEvent, ServerStopFlag, State, STATE_WAIT_CONNECTION, ThreadFunction(), ThreadID, Type, and TYPE_NOT_DEFINED.
Referenced by vtkOpenIGTLinkIFGUI::ProcessGUIEvents().
| int vtkMRMLIGTLConnectorNode::Stop | ( | ) |
References Mutex, ServerStopFlag, Socket, and ThreadID.
Referenced by vtkOpenIGTLinkIFGUI::ProcessGUIEvents(), vtkOpenIGTLinkIFGUI::ProcessMRMLEvents(), and ~vtkMRMLIGTLConnectorNode().
| void * vtkMRMLIGTLConnectorNode::ThreadFunction | ( | void * | ptr | ) | [static] |
References ConnectedEvent, DeactivatedEvent, DisconnectedEvent, Mutex, New(), ReceiveController(), RequestInvokeEvent(), ServerPort, ServerSocket, ServerStopFlag, Socket, State, STATE_CONNECTED, STATE_OFF, STATE_WAIT_CONNECTION, ThreadID, Type, TYPE_SERVER, and WaitForConnection().
Referenced by Start().
| void vtkMRMLIGTLConnectorNode::UnlockIncomingMRMLNode | ( | vtkMRMLNode * | node | ) |
References IncomingMRMLNodeInfoList.
| void vtkMRMLIGTLConnectorNode::UnregisterIncomingMRMLNode | ( | vtkMRMLNode * | node | ) |
References IncomingMRMLNodeInfoList.
Referenced by vtkOpenIGTLinkIFGUI::DeleteNodeCallback(), and vtkOpenIGTLinkIFGUI::ProcessMRMLEvents().
| void vtkMRMLIGTLConnectorNode::UnregisterMessageConverter | ( | vtkIGTLToMRMLBase * | converter | ) |
References MessageConverterList.
Referenced by vtkOpenIGTLinkIFLogic::UnregisterMessageConverter().
| void vtkMRMLIGTLConnectorNode::UnregisterOutgoingMRMLNode | ( | vtkMRMLNode * | node | ) |
| vtkMRMLIGTLConnectorNode::vtkGetMacro | ( | RestrictDeviceName | , | |
| int | ||||
| ) |
| vtkMRMLIGTLConnectorNode::vtkGetMacro | ( | ServerPort | , | |
| int | ||||
| ) |
| vtkMRMLIGTLConnectorNode::vtkSetMacro | ( | RestrictDeviceName | , | |
| int | ||||
| ) |
| vtkMRMLIGTLConnectorNode::vtkSetMacro | ( | ServerPort | , | |
| int | ||||
| ) |
| vtkMRMLIGTLConnectorNode::vtkTypeMacro | ( | vtkMRMLIGTLConnectorNode | , | |
| vtkMRMLNode | ||||
| ) |
| int vtkMRMLIGTLConnectorNode::WaitForConnection | ( | ) |
References New(), ServerHostname, ServerPort, ServerSocket, ServerStopFlag, Socket, Type, TYPE_CLIENT, and TYPE_SERVER.
Referenced by ThreadFunction().
| void vtkMRMLIGTLConnectorNode::WriteXML | ( | ostream & | of, | |
| int | indent | |||
| ) | [virtual] |
Write this node's information to a MRML file in XML format. NOTE: Subclasses should implement this method NOTE: Call this method in the subclass impementation
Reimplemented from vtkMRMLNode.
References RestrictDeviceName, ServerHostname, ServerPort, Type, TYPE_CLIENT, and TYPE_SERVER.
Referenced by GetCircularBuffer(), GetUpdatedBuffersList(), ReceiveController(), and ~vtkMRMLIGTLConnectorNode().
int vtkMRMLIGTLConnectorNode::CheckCRC [private] |
Referenced by RegisterMessageConverter(), SetCheckCRC(), and vtkMRMLIGTLConnectorNode().
vtkMutexLock* vtkMRMLIGTLConnectorNode::CircularBufferMutex [private] |
Referenced by ReceiveController(), vtkMRMLIGTLConnectorNode(), and ~vtkMRMLIGTLConnectorNode().
std::list<unsigned long> vtkMRMLIGTLConnectorNode::EventQueue [private] |
Referenced by ImportEventsFromEventBuffer(), and RequestInvokeEvent().
vtkMutexLock* vtkMRMLIGTLConnectorNode::EventQueueMutex [private] |
Referenced by ImportDataFromCircularBuffer(), RegisterMessageConverter(), and vtkMRMLIGTLConnectorNode().
Referenced by vtkMRMLIGTLConnectorNode().
vtkMutexLock* vtkMRMLIGTLConnectorNode::Mutex [private] |
Referenced by Stop(), ThreadFunction(), vtkMRMLIGTLConnectorNode(), and ~vtkMRMLIGTLConnectorNode().
std::string vtkMRMLIGTLConnectorNode::Name [private] |
Reimplemented from vtkMRMLNode.
Referenced by vtkMRMLIGTLConnectorNode().
Referenced by ImportDataFromCircularBuffer(), ReceiveController(), vtkMRMLIGTLConnectorNode(), and WriteXML().
std::string vtkMRMLIGTLConnectorNode::ServerHostname [private] |
Referenced by SetTypeClient(), vtkMRMLIGTLConnectorNode(), WaitForConnection(), and WriteXML().
int vtkMRMLIGTLConnectorNode::ServerPort [private] |
Referenced by SetTypeClient(), SetTypeServer(), ThreadFunction(), vtkMRMLIGTLConnectorNode(), WaitForConnection(), and WriteXML().
igtl::ServerSocket::Pointer vtkMRMLIGTLConnectorNode::ServerSocket [private] |
Referenced by ThreadFunction(), and WaitForConnection().
int vtkMRMLIGTLConnectorNode::ServerStopFlag [private] |
Referenced by ReceiveController(), Start(), Stop(), ThreadFunction(), vtkMRMLIGTLConnectorNode(), and WaitForConnection().
igtl::ClientSocket::Pointer vtkMRMLIGTLConnectorNode::Socket [private] |
Referenced by ReceiveController(), SendData(), Skip(), Stop(), ThreadFunction(), and WaitForConnection().
int vtkMRMLIGTLConnectorNode::State [private] |
Referenced by Start(), ThreadFunction(), and vtkMRMLIGTLConnectorNode().
vtkMultiThreader* vtkMRMLIGTLConnectorNode::Thread [private] |
int vtkMRMLIGTLConnectorNode::ThreadID [private] |
Referenced by Start(), Stop(), ThreadFunction(), and vtkMRMLIGTLConnectorNode().
int vtkMRMLIGTLConnectorNode::Type [private] |
Referenced by SetTypeClient(), SetTypeServer(), Start(), ThreadFunction(), vtkMRMLIGTLConnectorNode(), WaitForConnection(), and WriteXML().
Referenced by vtkMRMLIGTLConnectorNode().
1.6.1