Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | Private Member Functions

Attrib::DataCubes Class Reference

A class for holding cubes with attribute data. All the cubes have the same sampling and size. More...

List of all members.

Public Member Functions

 DataCubes ()
int nrCubes () const
bool addCube (const BinDataDesc *bdd=0)
bool addCube (float, const BinDataDesc *bdd=0)
 Adds the cube and inits it to the given val.
void removeCube (int)
bool setSizeAndPos (const CubeSampling &)
bool setSize (int nrinl, int nrcrl, int nrz)
void setValue (int array, int inlidx, int crlidx, int zidx, float val)
void setValue (int array, float val)
bool getValue (int array, const BinIDValue &, float *res, bool interpolate) const
bool includes (const BinIDValue &) const
bool includes (const BinID &) const
bool includes (const CubeSampling &) const
const Array3D< float > & getCube (int idx) const
Array3D< float > & getCube (int idx)
void setCube (int idx, const Array3D< float > &)
int getInlSz () const
int getCrlSz () const
int getZSz () const
CubeSampling cubeSampling () const

Static Public Member Functions

static int cInlDim ()
static int cCrlDim ()
static int cZDim ()

Public Attributes

SamplingData< int > inlsampling_
SamplingData< int > crlsampling_
int z0_
double zstep_

Protected Attributes

ObjectSet< Array3DImpl< float > > cubes_
int inlsz_
int crlsz_
int zsz_

Private Member Functions

 mRefCountImpl (DataCubes)

Detailed Description

A class for holding cubes with attribute data. All the cubes have the same sampling and size.


Constructor & Destructor Documentation

Attrib::DataCubes::DataCubes (  ) 

Member Function Documentation

bool Attrib::DataCubes::addCube ( const BinDataDesc bdd = 0  ) 
bool Attrib::DataCubes::addCube ( float  ,
const BinDataDesc bdd = 0 
)

Adds the cube and inits it to the given val.

static int Attrib::DataCubes::cCrlDim (  )  [inline, static]
static int Attrib::DataCubes::cInlDim (  )  [inline, static]
CubeSampling Attrib::DataCubes::cubeSampling (  )  const

For convenience. The samling is changed by setting inlsampling, crlsampling, z0 and zstep.

static int Attrib::DataCubes::cZDim (  )  [inline, static]
int Attrib::DataCubes::getCrlSz (  )  const [inline]
const Array3D<float>& Attrib::DataCubes::getCube ( int  idx  )  const

The attrib data. The data is always organized with inl as the slowest dim, and z as the fastest dim. Data can thus be accessed by:

                                    float val = getCube(idx).get(inlidx,crlidx,
                                                                  zidx);
Array3D<float>& Attrib::DataCubes::getCube ( int  idx  ) 

The attrib data. The data is always organized with inl as the slowest dim, and z as the fastest dim. Data can thus be accessed by:

                                    float val = getCube(idx).get(inlidx,crlidx,
                                                                  zidx);
int Attrib::DataCubes::getInlSz (  )  const [inline]
bool Attrib::DataCubes::getValue ( int  array,
const BinIDValue ,
float *  res,
bool  interpolate 
) const
int Attrib::DataCubes::getZSz (  )  const [inline]
bool Attrib::DataCubes::includes ( const BinIDValue  )  const
bool Attrib::DataCubes::includes ( const CubeSampling  )  const
bool Attrib::DataCubes::includes ( const BinID  )  const
Attrib::DataCubes::mRefCountImpl ( DataCubes   )  [private]
int Attrib::DataCubes::nrCubes (  )  const [inline]
void Attrib::DataCubes::removeCube ( int   ) 
void Attrib::DataCubes::setCube ( int  idx,
const Array3D< float > &   
)
bool Attrib::DataCubes::setSize ( int  nrinl,
int  nrcrl,
int  nrz 
)
Note:
that all data will be lost.
bool Attrib::DataCubes::setSizeAndPos ( const CubeSampling  ) 
Note:
that all data will be lost.
void Attrib::DataCubes::setValue ( int  array,
int  inlidx,
int  crlidx,
int  zidx,
float  val 
)
void Attrib::DataCubes::setValue ( int  array,
float  val 
)

Member Data Documentation

int Attrib::DataCubes::crlsz_ [protected]
int Attrib::DataCubes::inlsz_ [protected]
int Attrib::DataCubes::zsz_ [protected]