/*============================================================================= NOTE: THIS FILE IS A HANDMADE WRAPPER FOR THE ManagedITK PROJECT. Project: ManagedITK Program: Insight Segmentation & Registration Toolkit Module: itkManagedImageInformation.cxx Language: C++/CLI Author: Dan Mueller Date: $Date: 2007-09-01 06:17:25 +1000 (Sat, 01 Sep 2007) $ Revision: $Revision: 2 $ Copyright (c) Queensland University of Technology (QUT) 2007. All rights reserved. Portions of this code are covered under the ITK and VTK copyright. See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details. See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the above copyright notices for more information. =============================================================================*/ #pragma once #pragma warning( disable : 4635 ) // Disable warnings about XML doc comments #ifndef __itkManagedImageInformation_cxx #define __itkManagedImageInformation_cxx // Include some managed files #include "itkManagedSize.cxx" #include "itkManagedSpacing.cxx" #include "itkManagedPoint.cxx" #include "itkManagedPixelType.cxx" // Use some managed namespaces #using #using using namespace System; using namespace System::IO; using namespace System::Reflection; using namespace System::ComponentModel; using namespace System::Diagnostics; namespace itk { /// ///This structures holds information regarding the image dimension, pixeltype, ///size, spacing, etc. /// ///This class was added to ManagedITK for simplicity. public ref struct itkImageInformation { private: itkPixelType^ m_PixelType; unsigned int m_Dimension; itkSize^ m_Size; itkSpacing^ m_Spacing; itkPoint^ m_Origin; public: ///Default constructor. itkImageInformation ( itkPixelType^ pixeltype, unsigned int dimension, itkSize^ size, itkSpacing^ spacing, itkPoint^ origin ) { this->m_PixelType = pixeltype; this->m_Dimension = dimension; this->m_Size = size; this->m_Spacing = spacing; this->m_Origin = origin; } ///Get the pixel type of the image. property virtual itkPixelType^ PixelType { itkPixelType^ get() { return this->m_PixelType; } } ///Get the dimensionality of the image. property virtual unsigned int Dimension { unsigned int get() { return this->m_Dimension; } } ///Get the size of the image. property virtual itkSize^ Size { itkSize^ get() { return this->m_Size; } } ///Get the spacing of the image. property virtual itkSpacing^ Spacing { itkSpacing^ get() { return this->m_Spacing; } } ///Get the origin of the image. property virtual itkPoint^ Origin { itkPoint^ get() { return this->m_Origin; } } }; // end ref struct } // end namespace itk #endif