 |
OpendTect
6.6
|
Go to the documentation of this file.
37 inline bool isOK()
const;
42 inline bool writable()
const;
44 inline void setValue(
od_int64 idx, T v );
50 inline const T* arr()
const;
53 inline char* storArr();
54 inline const char* storArr()
const;
71 template <
class T>
inline
77 , scaler_( scaler ? scaler->clone() : 0 )
91 template <
class T>
inline
100 template <
class T>
inline
104 interpreter_.dataChar(), undefhandler_, scaler_ );
106 OD::memCopy( res->
storArr(), storArr(), size_ * interpreter_.nrBytes());
113 template <
class T>
inline
116 if ( undefhandler_ && !undefhandler_->isOK() )
123 template <
class T>
inline
126 if ( undefhandler_ && undefhandler_->isUdf( ptr_,idx ) )
129 const T val = interpreter_.get( ptr_, idx );
130 return mCast( T, scaler_ ? scaler_->unScale(val) : val );
134 template <
class T>
inline
137 if ( sz==size_ )
return true;
140 mTryAlloc( ptr_,
char[sz*interpreter_.nrBytes()] );
145 template <
class T>
inline
150 template <
class T>
inline
155 template <
class T>
inline
158 if ( undefhandler_ &&
mIsUdf(v) )
159 undefhandler_->setUdf( ptr_, idx );
162 const T val =
mCast( T, scaler_ ? scaler_->scale(v) : v );
163 interpreter_.put( ptr_, idx, val );
164 if ( undefhandler_ ) undefhandler_->unSetUdf( ptr_, idx );
169 template <
class T>
inline
172 return interpreter_.dataChar() == rettype_
173 ?
reinterpret_cast<const T*
>(ptr_) : 0;
176 template <
class T>
inline
178 {
return interpreter_.dataChar()==rettype_ ?
reinterpret_cast<T*
>(ptr_) : 0; }
181 template <
class T>
inline
186 template <
class T>
inline
191 template <
class T>
inline
193 {
return interpreter_.dataChar(); }
Interface to a series of values.
Definition: odmemory.h:16
T value(od_int64 idx) const
Definition: convmemvalseries.h:124
Class that handles undefvalues in arrays that are in a format described by a BinDataDesc.
Definition: undefarray.h:39
bool isOK() const
Definition: convmemvalseries.h:114
char * storArr()
Definition: convmemvalseries.h:182
#define mIsUdf(val)
Use mIsUdf to check for undefinedness of simple types.
Definition: undefval.h:289
#define od_int64
Definition: plftypes.h:35
od_int64 size() const
Definition: convmemvalseries.h:151
void setValue(od_int64 idx, T v)
Definition: convmemvalseries.h:156
bool selfSufficient() const
Definition: convmemvalseries.h:46
Byte-level data interpreter.
Definition: cbvswriter.h:21
bool setSize(od_int64)
Definition: convmemvalseries.h:135
Scaling of floating point numbers.
Definition: scaler.h:33
DataInterpreter< T > interpreter_
Definition: convmemvalseries.h:62
BinDataDesc rettype_
Definition: convmemvalseries.h:63
bool writable() const
Definition: convmemvalseries.h:146
const Scaler * scaler_
Definition: convmemvalseries.h:64
~ConvMemValueSeries()
Definition: convmemvalseries.h:92
#define mClass(module)
Definition: commondefs.h:181
#define mTryAlloc(var, stmt)
Catches bad_alloc and sets ptr to null as normal.
Definition: commondefs.h:246
Description of binary data.
Definition: bindatadesc.h:43
ValueSeries< T > * clone() const
Definition: convmemvalseries.h:101
const T * arr() const
Definition: convmemvalseries.h:170
#define mCast(tp, v)
Definition: commondefs.h:137
Definition: convmemvalseries.h:28
bool reSizeable() const
Definition: convmemvalseries.h:47
ConvMemValueSeries(od_int64 sz, const BinDataDesc &stortype, bool doundef=true, const Scaler *scaler=0)
Definition: convmemvalseries.h:72
#define mUdf(type)
Use this macro to get the undefined for simple types.
Definition: undefval.h:274
bool handlesUndef() const
Definition: convmemvalseries.h:57
BinDataDesc dataDesc() const
Definition: convmemvalseries.h:192
UndefArrayHandler * undefhandler_
Definition: convmemvalseries.h:61
char * ptr_
Definition: convmemvalseries.h:66
byte-level data characteristics of stored data.
Definition: datachar.h:37
od_int64 size_
Definition: convmemvalseries.h:67
Generated at
for the OpendTect
seismic interpretation project.
Copyright (C): dGB Beheer B.V. 1995-2021