5 #include <unordered_map>
9 #include "FASTExport.hpp"
16 class IGTLSocketWrapper;
21 std::set<std::string> getImageStreamNames();
22 std::set<std::string> getTransformStreamNames();
23 std::vector<std::string> getActiveImageStreamNames();
24 std::vector<std::string> getActiveTransformStreamNames();
25 std::string getStreamDescription(std::string streamName);
26 void setConnectionAddress(std::string address);
27 void setConnectionPort(
uint port);
28 uint getNrOfFrames()
const;
43 void generateStream()
override;
46 void loadAttributes()
override;
54 uint mMaximumNrOfFrames;
55 bool mMaximumNrOfFramesSet;
62 IGTLSocketWrapper* mSocketWrapper;
65 std::set<std::string> mImageStreamNames;
66 std::set<std::string> mTransformStreamNames;
67 std::unordered_map<std::string, std::string> mStreamDescriptions;
68 std::unordered_map<std::string, uint> mOutputPortDeviceNames;
70 void updateFirstFrameSetFlag();
78 if(mOutputPortDeviceNames.count(deviceName) == 0) {
80 createOutputPort<T>(portID);
81 mOutputPortDeviceNames[deviceName] = portID;
83 portID = mOutputPortDeviceNames[deviceName];