17 #ifndef itkAnalyzeObjectMap_h
18 #define itkAnalyzeObjectMap_h
45 template <
class TImage = itk::Image<
unsigned char, 4>,
class TRGBImage = itk::Image<itk::RGBPixel<
unsigned char>, 4> >
52 class AnalyzeObjectMap :
public TImage
57 typedef AnalyzeObjectMap Self;
59 typedef SmartPointer<Self>
Pointer;
62 typedef TImage ImageType;
63 typedef itk::AnalyzeObjectMap<TImage> ObjectMapType;
65 typedef typename TImage::PixelType PixelType;
71 itkTypeMacro(AnalyzeObjectMap, TImage );
78 AnalyzeObjectMap & operator=(
const AnalyzeObjectMap & rhs );
92 itkSetMacro(NumberOfObjects,
int);
93 itkGetConstMacro(NumberOfObjects,
int);
127 void AddObjectEntryBasedOnImagePixel(ImageType *Image,
const int value = -1,
const std::string ObjectName =
"",
128 const int Red = 0,
const int Green = 0,
const int Blue = 0);
135 void AddAnalyzeObjectEntry(
const std::string ObjectName =
"");
145 void DeleteAnalyzeObjectEntry(
const std::string ObjectName =
"");
154 int FindObjectEntry(
const std::string ObjectName =
"");
162 void PlaceObjectMapEntriesIntoMetaData();
185 void ImageToObjectMap(ImageType *image);
191 AnalyzeObjectMap(
void );
196 virtual ~AnalyzeObjectMap(
void );
202 AnalyzeObjectMap(
const AnalyzeObjectMap & );
204 void PrintSelf(std::ostream& os, Indent indent)
const ITK_OVERRIDE;
208 int m_NumberOfObjects;
SmartPointer< Self > Pointer
virtual void PrintSelf(std::ostream &os, Indent indent) const override
std::vector< AnalyzeObjectEntry::Pointer > AnalyzeObjectEntryArrayType
static const int VERSION4
class ITK_FORCE_EXPORT_MACRO(ITKCommon) DataObject typedef Object Superclass
const char *const ANALYZE_OBJECT_LABEL_MAP_ENTRY_ARRAY
SmartPointer< Self > Pointer
static const int VERSION5
static const int VERSION7
SmartPointer< const Self > ConstPointer
static const int VERSION6