Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef MITKRIGIDREGISTRATIONPRESET_H_HEADER
00019 #define MITKRIGIDREGISTRATIONPRESET_H_HEADER
00020
00021 #include <vtkXMLParser.h>
00022 #include "MitkRigidRegistrationExports.h"
00023 #include <map>
00024 #include <string>
00025 #include <itkArray.h>
00026 #include "mitkCommon.h"
00027
00028 namespace mitk {
00029
00042 class MITK_RIGIDREGISTRATION_EXPORT RigidRegistrationPreset : public vtkXMLParser
00043 {
00044 public:
00045 RigidRegistrationPreset();
00046 ~RigidRegistrationPreset();
00047
00051 bool LoadPreset();
00055 bool LoadPreset(std::string fileName);
00059 itk::Array<double> getTransformValues(std::string name);
00063 itk::Array<double> getMetricValues(std::string name);
00067 itk::Array<double> getOptimizerValues(std::string name);
00071 itk::Array<double> getInterpolatorValues(std::string name);
00075 std::map<std::string, itk::Array<double> >& getTransformValuesPresets();
00079 std::map<std::string, itk::Array<double> >& getMetricValuesPresets();
00083 std::map<std::string, itk::Array<double> >& getOptimizerValuesPresets();
00087 std::map<std::string, itk::Array<double> >& getInterpolatorValuesPresets();
00094 bool newPresets(std::map<std::string, itk::Array<double> > newTransformValues,
00095 std::map<std::string, itk::Array<double> > newMetricValues,
00096 std::map<std::string, itk::Array<double> > newOptimizerValues,
00097 std::map<std::string, itk::Array<double> > newInterpolatorValues,
00098 std::string fileName = "");
00099
00100 private:
00101
00102
00106 void StartElement (const char *elementName, const char **atts);
00107
00111
00115 bool save();
00119
00123
00127
00131
00132
00136 itk::Array<double> loadTransformValues(itk::Array<double> transformValues, double transform, const char **atts);
00140 itk::Array<double> loadMetricValues(itk::Array<double> metricValues, double metric, const char **atts);
00144 itk::Array<double> loadOptimizerValues(itk::Array<double> optimizerValues, double optimizer, const char **atts);
00148 itk::Array<double> loadInterpolatorValues(itk::Array<double> interpolatorValues);
00149
00153 std::string ReadXMLStringAttribut( std::string name, const char** atts);
00154
00155 std::string m_Name;
00156 std::map<std::string, itk::Array<double> > m_TransformValues;
00157 std::map<std::string, itk::Array<double> > m_MetricValues;
00158 std::map<std::string, itk::Array<double> > m_OptimizerValues;
00159 std::map<std::string, itk::Array<double> > m_InterpolatorValues;
00160
00161 std::string m_XmlFileName;
00162 };
00163 }
00164 #endif