Abstract base class for read-only data. More...
#include <data.hh>
Inherited by ConstImageHandle, and Data.
Public Member Functions | |
Initialization and Deconstruction | |
ConstData () | |
virtual | ~ConstData () |
Properties | |
virtual DataType | GetType () const =0 |
virtual DataDomain | GetDomain () const =0 |
bool | IsSpatial () const |
bool | IsFrequency () const |
bool | IsReal () const |
bool | IsComplex () const |
virtual Extent | GetExtent () const =0 |
virtual Point | GetSpatialOrigin () const =0 |
Size | GetSize () const |
Value retrieval | |
The pure virtual methods GetReal() and GetComplex() form the basis for the interpolation and normalization methods. | |
virtual Real | GetReal (const Point &p) const =0 |
virtual Complex | GetComplex (const Point &p) const =0 |
virtual Real | GetIntpolReal (const Vec3 &v) const =0 |
virtual Real | GetIntpolReal (const Vec2 &v) const =0 |
virtual Real | GetIntpolReal (const Real &d) const =0 |
virtual Complex | GetIntpolComplex (const Vec3 &v) const =0 |
virtual Complex | GetIntpolComplex (const Vec2 &v) const =0 |
virtual Complex | GetIntpolComplex (const Real &d) const =0 |
Algorithm interface | |
virtual void | Apply (NonModAlgorithm &a) const =0 |
virtual void | ApplyIP (NonModAlgorithm &a) const =0 |
Observer interface | |
virtual void | Attach (DataObserver *o) const =0 |
virtual void | Detach (DataObserver *o) const =0 |
virtual void | Notify () const =0 |
Misc | |
virtual Real | OverallDifference (const ConstData &d) const |
virtual Real | NormDifference (const ConstData &d) const |
Sampling interface | |
The pixel sampling depends on the current domain ( | |
Vec3 | GetPixelSampling () const |
Vec3 | GetSpatialSampling () const |
Vec3 | GetFrequencySampling () const |
Protected Member Functions | |
ConstData (const ConstData &d) | |
ConstData & | operator= (const ConstData &d) |
void | CalcIntpolWeights (Vec3 v, Real w[8], Point p[8]) const |
Sampling implementation | |
A reference to a PixelSampling instance must be provided by subclasses in order for the sampling interface to work. | |
virtual PixelSampling & | Sampling ()=0 |
virtual const PixelSampling & | Sampling () const =0 |
Abstract base class for read-only data.
This class represents the abstract concept of a read-only (const) data source which allows:
In addition, a meta-info (InfoHandle) is associated with this data
Definition at line 70 of file data.hh.
ConstData | ( | ) |
virtual ~ConstData | ( | ) | [virtual] |
virtual void Apply | ( | NonModAlgorithm & | a | ) | const [pure virtual] |
Algorithm interface: NonModAlgorithm.
Implemented in Data, ImageHandle, ConstImageHandle, and NullData.
virtual void ApplyIP | ( | NonModAlgorithm & | a | ) | const [pure virtual] |
Implemented in Data, ImageHandle, ConstImageHandle, and NullData.
virtual void Attach | ( | DataObserver * | o | ) | const [pure virtual] |
DataObserver interface: attach observer.
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual void Detach | ( | DataObserver * | o | ) | const [pure virtual] |
DataObserver interface: detach observer.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Get explicit complex value.
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual DataDomain GetDomain | ( | ) | const [pure virtual] |
Return domain: SPATIAL
, FREQUENCY
or HALF_FREQUENCY
.
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual Extent GetExtent | ( | ) | const [pure virtual] |
Return (logical) extent of data.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Vec3 GetFrequencySampling | ( | ) | const |
return frequency pixel dimensions
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual Complex GetIntpolComplex | ( | const Vec2 & | v | ) | const [pure virtual] |
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual Complex GetIntpolComplex | ( | const Vec3 & | v | ) | const [pure virtual] |
Get interpolated complex value from 3D,2D or 1D vec.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual Real GetIntpolReal | ( | const Vec2 & | v | ) | const [pure virtual] |
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual Real GetIntpolReal | ( | const Vec3 & | v | ) | const [pure virtual] |
Get interpolated real value from 3D,2D or 1D vec.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Vec3 GetPixelSampling | ( | ) | const |
return pixel sampling of the current domain
Get explicit real value.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Size GetSize | ( | ) | const [inline] |
virtual Point GetSpatialOrigin | ( | ) | const [pure virtual] |
Retrieve spatial origin.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Vec3 GetSpatialSampling | ( | ) | const |
return spatial pixel dimensions
virtual DataType GetType | ( | ) | const [pure virtual] |
Return type of data: REAL
or COMPLEX
.
Implemented in ImageHandle, ConstImageHandle, and NullData.
bool IsComplex | ( | ) | const [inline] |
bool IsFrequency | ( | ) | const [inline] |
Returns true if data is currently in frequency domain.
Convenience wrapper around GetDomain()
bool IsReal | ( | ) | const [inline] |
bool IsSpatial | ( | ) | const [inline] |
Returns true if data is currently in spatial domain.
Convenience wrapper around GetDomain()
virtual void Notify | ( | ) | const [pure virtual] |
Notify each observer that state has changed.
Implemented in ImageHandle, ConstImageHandle, and NullData.
Reimplemented in Data, ImageHandle, and ConstImageHandle.
virtual const PixelSampling& Sampling | ( | ) | const [protected, pure virtual] |
Implemented in ImageHandle, ConstImageHandle, and NullData.
virtual PixelSampling& Sampling | ( | ) | [protected, pure virtual] |
Implemented in ImageHandle, ConstImageHandle, and NullData.