33 #ifndef CXTOOLCONFIGURATIONPARSER_H_
34 #define CXTOOLCONFIGURATIONPARSER_H_
36 #include "org_custusx_core_tracking_Export.h"
42 #include <QDomDocument>
74 QString getApplicationapplication();
75 std::vector<IgstkTracker::InternalStructure> getTrackers();
76 std::vector<QString> getAbsoluteToolFilePaths();
77 QString getAbsoluteReferenceFilePath();
79 static QString getTemplatesAbsoluteFilePath();
83 void setConfigDocument(QString configAbsoluteFilePath);
84 bool isConfigFileValid();
85 QString getAbsoluteToolFilePath(QDomElement toolfileelement);
86 QString findXmlFileWithDirNameInPath(QString path);
87 QString searchForExistingToolFilePath(QString relativeToolFilePath);
88 static QString convertToRelativeToolFilePath(QString configFilename, QString absoluteToolFilePath);
89 static QString getToolPathFromRoot(QString root);
91 QString mConfigurationFilePath;
92 QString mLoggingFolder;
94 QDomDocument mConfigureDoc;
95 const QString mConfigTag, mConfigTrackerTag, mConfigTrackerToolFile;
96 const QString mTypeAttribute, mClinicalAppAttribute, mReferenceAttribute;
109 ToolFileParser(QString absoluteToolFilePath, QString loggingFolder =
"");
114 static QString getTemplatesAbsoluteFilePath();
117 QDomNode getToolNode(QString toolAbsoluteFilePath);
118 igstk::Transform readCalibrationFile(QString absoluteFilePath);
120 QString mToolFilePath;
121 QString mLoggingFolder;
123 QDomDocument mToolDoc;
124 const QString mToolTag, mToolTypeTag, mToolIdTag, mToolNameTag, mToolDescriptionTag, mToolManufacturerTag,
125 mToolClinicalAppTag, mToolGeoFileTag, mToolPicFileTag, mToolDocFileTag, mToolInstrumentTag,
126 mToolInstrumentTypeTag, mToolInstrumentIdTag, mToolInstrumentNameTag,
127 mToolInstrumentManufacturerTag, mToolInstrumentScannerIdTag, mToolInstrumentDescriptionTag,
128 mToolSensorTag, mToolSensorTypeTag, mToolSensorIdTag, mToolSensorNameTag, mToolSensorWirelessTag,
129 mToolSensorDOFTag, mToolSensorPortnumberTag, mToolSensorChannelnumberTag,
130 mToolSensorReferencePointTag, mToolSensorManufacturerTag, mToolSensorDescriptionTag,
131 mToolSensorRomFileTag, mToolCalibrationTag, mToolCalibrationFileTag;
TrackersAndToolsMap mTrackersAndTools
the trackers and tools (relative path) that should be used in the config
std::vector< ToolFileAndReference > ToolFilesAndReferenceVector
std::map< TRACKING_SYSTEM, ToolFilesAndReferenceVector > TrackersAndToolsMap
QString mFileName
absolute path and filename for the new config file
Class for reading the files defining a CustusX tool.
std::pair< QString, bool > ToolFileAndReference
QString mClinical_app
the clinical application this config is made for