OpenStructure
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Protected Member Functions
Function Class Reference

#include <function_base.hh>

Inherits Data.

Inherited by FunctionImpl< T >, and NullFunction.

Public Member Functions

Initialization and deconstruction

No publically accessible ctors, Function is an abstract base class.

virtual ~Function ()
Properties
virtual DataType GetType () const =0
virtual DataDomain GetDomain () const
virtual Extent GetExtent () const
void SetExtent (const Extent &e)
virtual void SetSpatialOrigin (const Point &o)
virtual Point GetSpatialOrigin () const
Value retrieval

The pure virtual methods GetReal() and GetComplex() are only given here for completeness. They still need to be implemented by a derived class.

virtual Real GetReal (const Point &p) const
virtual Complex GetComplex (const Point &p) const
virtual Real GetIntpolReal (const Vec3 &v) const =0
virtual Real GetIntpolReal (const Vec2 &v) const
virtual Real GetIntpolReal (const Real &d) const
virtual Complex GetIntpolComplex (const Vec3 &v) const =0
virtual Complex GetIntpolComplex (const Vec2 &v) const
virtual Complex GetIntpolComplex (const Real &d) const
Algorithm interface

On the level of Function, only NonModAlgorithms may be applied

virtual void Apply (NonModAlgorithm &a) const
virtual void ApplyIP (NonModAlgorithm &a) const
Observer interface
virtual void Attach (DataObserver *o) const
virtual void Detach (DataObserver *o) const
virtual void Notify () const
- Public Member Functions inherited from Data
 Data ()
virtual ~Data ()
void SetPixelSampling (const Vec3 &)
void SetPixelSampling (Real d)
void SetSpatialSampling (const Vec3 &)
void SetSpatialSampling (Real d)
- Public Member Functions inherited from ConstData
 ConstData ()
virtual ~ConstData ()
bool IsSpatial () const
bool IsFrequency () const
bool IsReal () const
bool IsComplex () const
Size GetSize () const
virtual Real OverallDifference (const ConstData &d) const
virtual Real NormDifference (const ConstData &d) const
Vec3 GetPixelSampling () const
Vec3 GetSpatialSampling () const
Vec3 GetFrequencySampling () const

Protected Member Functions

 Function (DataDomain d, const Extent &e=Extent())
 Function (const Function &f)
Functionoperator= (const Function &f)
Sampling implementation
virtual PixelSamplingSampling ()
virtual const PixelSamplingSampling () const
- Protected Member Functions inherited from Data
 Data (const Data &d)
Dataoperator= (const Data &d)

Detailed Description

Base class that defines the function interface.

Function only partially implementes the Data interface and is thus still an abstract base class. In particular, the methods GetType(), GetReal() and GetComplex() are still pure virtual methods.

In contrast to ImageHandle, a ConstFunction class is not necessary, since assignement and copy-construction do not share the underlying implementation.

Definition at line 59 of file function_base.hh.


Constructor & Destructor Documentation

virtual ~Function ( )
virtual
Function ( DataDomain  d,
const Extent e = Extent() 
)
protected

Initialization with Domain (required) and Extent(defaults to Size(1))

Function ( const Function f)
protected

Member Function Documentation

virtual void Apply ( NonModAlgorithm a) const
virtual

Algorithm interface: NonModAlgorithm.

Implements Data.

virtual void ApplyIP ( NonModAlgorithm a) const
virtual

Implements Data.

virtual void Attach ( DataObserver o) const
virtual

DataObserver interface: attach observer.

Implements ConstData.

virtual void Detach ( DataObserver o) const
virtual

DataObserver interface: detach observer.

Implements ConstData.

virtual Complex GetComplex ( const Point p) const
virtual

see Data:GetComplex

Implements ConstData.

virtual DataDomain GetDomain ( ) const
virtual

Returns data domain, defaults to SPATIAL.

Implements ConstData.

virtual Extent GetExtent ( ) const
virtual

Returns extent of function.

defaults to [Point(0,0,0), Point(0,0,0)], may be modified by using SetExtent

Implements ConstData.

virtual Complex GetIntpolComplex ( const Vec3 &  v) const
pure virtual

Get interpolated complex value from 3D,2D or 1D vec.

Implements ConstData.

Implemented in NullFunction, and FunctionImpl< T >.

virtual Complex GetIntpolComplex ( const Vec2 &  v) const
virtual

Implements ConstData.

virtual Complex GetIntpolComplex ( const Real d) const
virtual

Implements ConstData.

virtual Real GetIntpolReal ( const Vec3 &  v) const
pure virtual

Get interpolated real value from 3D,2D or 1D vec.

Implements ConstData.

Implemented in FunctionImpl< T >, and NullFunction.

virtual Real GetIntpolReal ( const Vec2 &  v) const
virtual

Implements ConstData.

virtual Real GetIntpolReal ( const Real d) const
virtual

Implements ConstData.

virtual Real GetReal ( const Point p) const
virtual

see Data:GetReal

Implements ConstData.

virtual Point GetSpatialOrigin ( ) const
virtual
virtual DataType GetType ( ) const
pure virtual

See Data::GetType.

Implements ConstData.

Implemented in NullFunction, and FunctionImpl< T >.

virtual void Notify ( ) const
virtual

Notify each observer that state has changed.

Implements ConstData.

Function& operator= ( const Function f)
protected
virtual PixelSampling& Sampling ( )
protectedvirtual

Implements ConstData.

virtual const PixelSampling& Sampling ( ) const
protectedvirtual

Implements ConstData.

void SetExtent ( const Extent e)

set Extent that this function is evaluated in

virtual void SetSpatialOrigin ( const Point o)
virtual

see Data::SetSpatialOrigin

Implements Data.


The documentation for this class was generated from the following file: