25 #ifndef IMAGE_STATE_FREQUENCY_DOMAIN_HH
26 #define IMAGE_STATE_FREQUENCY_DOMAIN_HH
37 namespace ost {
namespace img {
namespace image_state {
47 spat_ori_(extent_.GetStart())
65 if(extent_.Contains(p)) {
66 return Val2Val<V,Real>(data.
Value(Point2Index(p)));
74 if(extent_.Contains(p)) {
75 data.
Value(Point2Index(p))=Val2Val<Real,V>(r);
81 if(extent_.Contains(p)) {
82 return Val2Val<V,Complex>(data.
Value(Point2Index(p)));
90 if(extent_.Contains(p)) {
91 data.
Value(Point2Index(p))=Val2Val<Complex,V>(c);
96 const Size& size=extent_.GetSize();
97 return Index(p[0]<0 ? size[0]+p[0] : p[0],
98 p[1]<0 ? size[1]+p[1] : p[1],
99 p[2]<0 ? size[2]+p[2] : p[2]);
Defines lower and upper valid indices.
class encapsulating 1D to 3D point
class encapsulating 1D to 3D size
DataDomain GetDomain() const
Extent GetLogicalExtent() const
FrequencyDomain(const Extent &e)
void SetReal(const Point &p, const Real &r, ValueHolder< V > &data)
Point GetSpatialOrigin() const
Extent GetPhysicalExtent() const
Complex GetComplex(const Point &p, const ValueHolder< V > &data) const
Real GetReal(const Point &p, const ValueHolder< V > &data) const
void SetComplex(const Point &p, const Complex &c, ValueHolder< V > &data)
void SetSpatialOrigin(const Point &o)
Index Point2Index(const Point &p) const
V & Value(const Index &i)
return direct r/w access to the value without boundary check
#define DLLEXPORT_OST_IMG_BASE
std::complex< Real > Complex
DataDomain
underlying data type