18 #ifndef __itkPSMProject_h 19 #define __itkPSMProject_h 22 #include "itkPSMDOMNode.h" 23 #include "itkDataObject.h" 24 #include "itkObjectFactory.h" 25 #include "itkEventObject.h" 26 #include "itkExceptionObject.h" 27 #include <vnl/vnl_vector_fixed.h> 52 typedef Object Superclass;
53 typedef SmartPointer<Self> Pointer;
54 typedef SmartPointer<const Self> ConstPointer;
64 static const std::string distance_transform_tag;
65 static const std::string distance_transforms_tag;
66 static const std::string domain_tag;
67 static const std::string correspondences_tag;
68 static const std::string cutting_plane_tag;
69 static const std::string model_tag;
70 static const std::string name_tag;
71 static const std::string optimization_tag;
72 static const std::string number_of_scales_tag;
73 static const std::string preprocessing_tag;
74 static const std::string procrustes_tag;
75 static const std::string psm_project_tag;
76 static const std::string scale_tag;
77 static const std::string scale_number_tag;
78 static const std::string variables_tag;
96 bool HasDomains()
const;
99 const DOMNode *GetDomainNode(
const std::string &name)
const;
103 bool HasDomainDistanceTransform(
const std::string &name)
const;
107 const std::vector<std::string > &
108 GetDomainDistanceTransform(
const std::string &name)
const;
111 bool HasDomainCuttingPlanes(
const std::string &name)
const;
116 std::vector<vnl_vector_fixed<double,3> >
117 GetDomainCuttingPlanes(
const std::string &name)
const;
123 std::vector<std::string> GetDomainNames()
const;
131 const std::vector<std::string> &GetModel(
const std::string &name);
134 bool HasModel(
const std::string &name)
const;
139 const std::vector<std::string> &GetDistanceTransforms()
const;
148 return m_DOMNode->GetChild(optimization_tag);
152 unsigned int GetNumberOfOptimizationScales()
const;
157 bool HasOptimizationAttribute(
const std::string& name,
unsigned int i = 0)
const;
167 double GetOptimizationAttribute(
const std::string &name,
unsigned int i = 0)
const;
170 bool HasProcrustes()
const;
174 bool HasVariables(
const std::string &name)
const;
182 std::vector<double> GetVariables(
const std::string &name)
const;
187 const std::vector<std::string > &GetVariablesText(
const std::string &name)
const;
194 void Stream(std::ostream &os);
198 void PrintSelf(std::ostream& os, Indent indent)
const;
203 void StreamChildren(
PSMDOMNode *,std::ostream &os, Indent indent);
210 void operator=(
const Self &);
213 PSMDOMNode::Pointer m_DOMNode;
static const std::string data_tag
This class is a data object that holds information about a Particle Shape Modeling project...
Class to represent a node in the PSM Document Object Model (DOM) tree structure.
const DOMNode * GetOptimization() const
PSMDOMNode::Pointer & GetDOMNode()