SNAP Library 2.3, User Reference  2014-06-16 11:58:46
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
TVVVec< TVal > Class Template Reference

#include <ds.h>

Public Member Functions

 TVVVec ()
 
 TVVVec (const TVVVec &Vec)
 
 TVVVec (const int &_XDim, const int &_YDim, const int &_ZDim)
 
 TVVVec (TSIn &SIn)
 
void Save (TSOut &SOut) const
 
TVVVec< TVal > & operator= (const TVVVec< TVal > &Vec)
 
bool operator== (const TVVVec &Vec) const
 
bool Empty () const
 
void Clr ()
 
void Gen (const int &_XDim, const int &_YDim, const int &_ZDim)
 
TVal & At (const int &X, const int &Y, const int &Z)
 
const TVal & At (const int &X, const int &Y, const int &Z) const
 
TVal & operator() (const int &X, const int &Y, const int &Z)
 
const TVal & operator() (const int &X, const int &Y, const int &Z) const
 
int GetXDim () const
 
int GetYDim () const
 
int GetZDim () const
 

Private Attributes

TInt XDim
 
TInt YDim
 
TInt ZDim
 
TVec< TVal > ValV
 

Detailed Description

template<class TVal>
class TVVVec< TVal >

Definition at line 3287 of file ds.h.

Constructor & Destructor Documentation

template<class TVal>
TVVVec< TVal >::TVVVec ( )
inline

Definition at line 3292 of file ds.h.

3292 : XDim(), YDim(), ZDim(), ValV(){}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289
template<class TVal>
TVVVec< TVal >::TVVVec ( const TVVVec< TVal > &  Vec)
inline

Definition at line 3293 of file ds.h.

3293  :
3294  XDim(Vec.XDim), YDim(Vec.YDim), ZDim(Vec.ZDim), ValV(Vec.ValV){}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289
template<class TVal>
TVVVec< TVal >::TVVVec ( const int &  _XDim,
const int &  _YDim,
const int &  _ZDim 
)
inline

Definition at line 3295 of file ds.h.

3295  :
3296  XDim(), YDim(), ZDim(), ValV(){Gen(_XDim, _YDim, _ZDim);}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289
void Gen(const int &_XDim, const int &_YDim, const int &_ZDim)
Definition: ds.h:3312
template<class TVal>
TVVVec< TVal >::TVVVec ( TSIn SIn)
inlineexplicit

Definition at line 3297 of file ds.h.

3297  :
3298  XDim(SIn), YDim(SIn), ZDim(SIn), ValV(SIn){}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289

Member Function Documentation

template<class TVal>
TVal& TVVVec< TVal >::At ( const int &  X,
const int &  Y,
const int &  Z 
)
inline

Definition at line 3315 of file ds.h.

3315  {
3316  Assert((0<=X)&&(X<int(XDim))&&(0<=Y)&&(Y<int(YDim))&&(0<=Z)&&(Z<int(ZDim)));
3317  return ValV[X*YDim*ZDim+Y*ZDim+Z];}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
#define Assert(Cond)
Definition: bd.h:251
TInt YDim
Definition: ds.h:3289
template<class TVal>
const TVal& TVVVec< TVal >::At ( const int &  X,
const int &  Y,
const int &  Z 
) const
inline

Definition at line 3318 of file ds.h.

3318  {
3319  Assert((0<=X)&&(X<int(XDim))&&(0<=Y)&&(Y<int(YDim))&&(0<=Z)&&(Z<int(ZDim)));
3320  return ValV[X*YDim*ZDim+Y*ZDim+Z];}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
#define Assert(Cond)
Definition: bd.h:251
TInt YDim
Definition: ds.h:3289
template<class TVal>
void TVVVec< TVal >::Clr ( )
inline

Definition at line 3311 of file ds.h.

3311 {XDim=0; YDim=0; ZDim=0; ValV.Clr();}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
void Clr(const bool &DoDel=true, const TSizeTy &NoDelLim=-1)
Clears the contents of the vector.
Definition: ds.h:953
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289
template<class TVal>
bool TVVVec< TVal >::Empty ( ) const
inline

Definition at line 3310 of file ds.h.

3310 {return ValV.Len()==0;}
TVec< TVal > ValV
Definition: ds.h:3290
TSizeTy Len() const
Returns the number of elements in the vector.
Definition: ds.h:535
template<class TVal>
void TVVVec< TVal >::Gen ( const int &  _XDim,
const int &  _YDim,
const int &  _ZDim 
)
inline

Definition at line 3312 of file ds.h.

3312  {
3313  Assert((_XDim>=0)&&(_YDim>=0)&&(_ZDim>=0));
3314  XDim=_XDim; YDim=_YDim; ZDim=_ZDim; ValV.Gen(XDim*YDim*ZDim);}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
#define Assert(Cond)
Definition: bd.h:251
TInt YDim
Definition: ds.h:3289
void Gen(const TSizeTy &_Vals)
Constructs a vector (an array) of _Vals elements.
Definition: ds.h:486
template<class TVal>
int TVVVec< TVal >::GetXDim ( ) const
inline

Definition at line 3325 of file ds.h.

3325 {return XDim;}
TInt XDim
Definition: ds.h:3289
template<class TVal>
int TVVVec< TVal >::GetYDim ( ) const
inline

Definition at line 3326 of file ds.h.

3326 {return YDim;}
TInt YDim
Definition: ds.h:3289
template<class TVal>
int TVVVec< TVal >::GetZDim ( ) const
inline

Definition at line 3327 of file ds.h.

3327 {return ZDim;}
TInt ZDim
Definition: ds.h:3289
template<class TVal>
TVal& TVVVec< TVal >::operator() ( const int &  X,
const int &  Y,
const int &  Z 
)
inline

Definition at line 3321 of file ds.h.

3321  {
3322  return At(X, Y, Z);}
TVal & At(const int &X, const int &Y, const int &Z)
Definition: ds.h:3315
template<class TVal>
const TVal& TVVVec< TVal >::operator() ( const int &  X,
const int &  Y,
const int &  Z 
) const
inline

Definition at line 3323 of file ds.h.

3323  {
3324  return At(X, Y, Z);}
TVal & At(const int &X, const int &Y, const int &Z)
Definition: ds.h:3315
template<class TVal>
TVVVec<TVal>& TVVVec< TVal >::operator= ( const TVVVec< TVal > &  Vec)
inline

Definition at line 3302 of file ds.h.

3302  {
3303  XDim=Vec.XDim; YDim=Vec.YDim; ZDim=Vec.ZDim; ValV=Vec.ValV;
3304  return *this;
3305  }
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289
template<class TVal>
bool TVVVec< TVal >::operator== ( const TVVVec< TVal > &  Vec) const
inline

Definition at line 3306 of file ds.h.

3306  {
3307  return (XDim==Vec.XDim)&&(YDim==Vec.YDim)&&(ZDim==Vec.ZDim)&&
3308  (ValV==Vec.ValV);}
TVec< TVal > ValV
Definition: ds.h:3290
TInt ZDim
Definition: ds.h:3289
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289
template<class TVal>
void TVVVec< TVal >::Save ( TSOut SOut) const
inline

Definition at line 3299 of file ds.h.

3299  {
3300  XDim.Save(SOut); YDim.Save(SOut); ZDim.Save(SOut); ValV.Save(SOut);}
TVec< TVal > ValV
Definition: ds.h:3290
void Save(TSOut &SOut) const
Definition: dt.h:1057
TInt ZDim
Definition: ds.h:3289
void Save(TSOut &SOut) const
Definition: ds.h:885
TInt XDim
Definition: ds.h:3289
TInt YDim
Definition: ds.h:3289

Member Data Documentation

template<class TVal>
TVec<TVal> TVVVec< TVal >::ValV
private

Definition at line 3290 of file ds.h.

template<class TVal>
TInt TVVVec< TVal >::XDim
private

Definition at line 3289 of file ds.h.

template<class TVal>
TInt TVVVec< TVal >::YDim
private

Definition at line 3289 of file ds.h.

template<class TVal>
TInt TVVVec< TVal >::ZDim
private

Definition at line 3289 of file ds.h.


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