/*============================================================================ MetaIO Copyright 2000-2010 Insight Software Consortium Distributed under the OSI-approved BSD License (the "License"); see accompanying file Copyright.txt for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the License for more information. ============================================================================*/ #include "metaTypes.h" #ifndef ITKMetaIO_METAGAUSSIAN_H #define ITKMetaIO_METAGAUSSIAN_H #include "metaUtils.h" #include "metaObject.h" #include /*! MetaGaussian (.h and .cpp) * * Description: * Reads and Writes MetaGaussianFiles. * * \author Mark Foskey * * \date February 12, 2004 * * Depends on: * MetaUtils.h * MetaObject.h */ #if (METAIO_USE_NAMESPACE) namespace METAIO_NAMESPACE { #endif class METAIO_EXPORT MetaGaussian : public MetaObject { ///// // // PUBLIC // //// public: //// // // Constructors & Destructor // //// MetaGaussian(); MetaGaussian(const char *_headerName); MetaGaussian(const MetaGaussian *_gaussian); MetaGaussian(unsigned int dim); ~MetaGaussian(void) MET_OVERRIDE; void PrintInfo(void) const MET_OVERRIDE; void CopyInfo(const MetaObject * _object) MET_OVERRIDE; void Clear(void) MET_OVERRIDE; /** Set/Get the maximum value. */ void Maximum(float val) { m_Maximum = val; } float Maximum() const { return m_Maximum; } /** Set/Get the radius value. */ void Radius(float val) { m_Radius = val; } float Radius() const { return m_Radius; } /** Set/Get the sigma value. */ void Sigma(float val) { m_Sigma = val; } float Sigma() const { return m_Sigma; } //// // // PROTECTED // //// protected: void M_Destroy(void) MET_OVERRIDE; /** Set up the fields to read a MetaGaussian file. */ void M_SetupReadFields(void) MET_OVERRIDE; /** Set up the fields to write a MetaGaussian file. */ void M_SetupWriteFields(void) MET_OVERRIDE; /** Read the MetaGaussian file properties. */ bool M_Read(void) MET_OVERRIDE; /** The maximum value of the MetaGaussian object. */ float m_Maximum; /** The radius of the MetaGaussian object. */ float m_Radius; /** The standard deviation of the MetaGaussian object. */ float m_Sigma; }; #if (METAIO_USE_NAMESPACE) }; #endif #endif