golib  0.5
goSignal3DRef Class Reference

Wrapper for any memory area suitable for representation through a goSignal3DBase type object (e.g. simply linearly stored data) More...

#include <gosignal3dref.h>

Public Member Functions

 goSignal3DRef (void *data_ptr, goTypeEnum data_type, const goSize3D &size, const goSize3D &blockSize, const goSize3D &borderSize, goSize_t channelCount)
 
 goSignal3DRef (void *data_ptr, goTypeEnum data_type, goSize_t sx, goSize_t sy=1, goSize_t sz=1, goSize_t channelCount=1)
 Construct reference using data linearly stored in memory. More...
 
void ref (void *data_ptr, goTypeEnum data_type, const goSize3D &size, const goSize3D &blockSize, const goSize3D &borderSize, goSize_t channelCount)
 
void ref (goSignal3DBase< void > &s)
 
void ref (goSignal3DBase< void > &s, const goSize3D &borderSize)
 
- Public Member Functions inherited from goSignal3DBase< void >
virtual void destroy ()
 
virtual goSize_t memoryUsage () const
 Returns the size of this object or some measure of its memory consumption. More...
 
void setChanged ()
 
goCaller0< void > & getChangedCaller ()
 
void setPtr (void *p)
 
const goTypegetDataType () const
 
void setChannel (goSize_t c)
 
goSize_t getChannel () const
 
goPtrdiff_t getChannelOffset (goSize_t channel) const
 Get the pointer offset from a channel 0 element to the corresponding channel channel element. More...
 
virtual void setBorderFlags (int axes=GO_X|GO_Y|GO_Z, int borderFlag=GO_PERIODIC_BORDER)
 Sets the border behaviour. More...
 
virtual void setBorderFlags (const goFixedArray< int > &flags)
 
const goFixedArray< int > & getBorderFlags () const
 
bool setDataType (goTypeEnum t)
 
goDouble getValue (goIndex_t x, goIndex_t y=0, goIndex_t z=0, goSize_t channel=0) const
 Convenience function to get a value. More...
 
goDouble getValue (goIndex_t x, goIndex_t y, goIndex_t z, goSize_t channel) const
 
void setValue (goDouble value, goIndex_t x, goIndex_t y=0, goIndex_t z=0, goSize_t channel=0)
 Convenience function to set a value. More...
 
void setValue (goDouble value, goIndex_t x, goIndex_t y, goIndex_t z, goSize_t channel)
 
void * getPtr ()
 
const void * getPtr () const
 
void * getPtr (goIndex_t x, goIndex_t y, goIndex_t z)
 
const void * getPtr (goIndex_t x, goIndex_t y, goIndex_t z) const
 
const void * getRealPtr () const
 
void * getRealPtr ()
 
const goPtrdiff_t * getXDiff () const
 
goPtrdiff_t * getXDiff ()
 
const goPtrdiff_t * getYDiff () const
 
goPtrdiff_t * getYDiff ()
 
const goPtrdiff_t * getZDiff () const
 
goPtrdiff_t * getZDiff ()
 
const goPtrdiff_t * getXJump () const
 
goPtrdiff_t * getXJump ()
 
const goPtrdiff_t * getYJump () const
 
goPtrdiff_t * getYJump ()
 
const goPtrdiff_t * getZJump () const
 
goPtrdiff_t * getZJump ()
 
void setSize (goSize_t x, goSize_t y, goSize_t z, goSize_t channelCount=1)
 INTERNAL – DO NOT USE. More...
 
void setSize (const goSize3D &sz)
 INTERNAL – DO NOT USE. More...
 
void setSizeX (goSize_t s)
 INTERNAL – DO NOT USE. More...
 
void setSizeY (goSize_t s)
 INTERNAL – DO NOT USE. More...
 
void setSizeZ (goSize_t s)
 INTERNAL – DO NOT USE. More...
 
const goSize3DgetSize () const
 
const goSize3DgetBlockSize () const
 
const goSize3DgetBorderSize () const
 
void resizeBorder (const goSize3D &size)
 Resize the border and re-initialise internal data structures accordingly. More...
 
goSize_t getSizeX () const
 
goSize_t getSizeY () const
 
goSize_t getSizeZ () const
 
goIndex_t getBorderX () const
 
goIndex_t getBorderY () const
 
goIndex_t getBorderZ () const
 
goSize_t getBlockSizeX () const
 
goSize_t getBlockSizeY () const
 
goSize_t getBlockSizeZ () const
 
goSize_t getChannelCount () const
 
const goSignal3DBase< void > & reference (goSignal3DBase< void > &other)
 
bool operator== (goSignal3DBase< void > &other)
 
goDouble getMaximum () const
 
goDouble getMaximum () const
 
goDouble getMaximum () const
 
goDouble getMinimum () const
 
goDouble getMinimum () const
 
goDouble getMinimum () const
 
void getMinMax (goDouble &minRet, goDouble &maxRet) const
 
virtual void fill (const void *value)
 Fills the current channel. More...
 
virtual void fill (goDouble value)
 
void fill (goDouble v)
 
virtual void shiftLeftDiff (int n, int axes=GO_X|GO_Y|GO_Z)
 Copies the last valid values from the block data into the borders. More...
 
virtual void shiftRightDiff (int n, int axes=GO_X|GO_Y|GO_Z)
 
virtual void shiftLeftSize (int n, int axes=GO_X|GO_Y|GO_Z)
 
virtual void shiftRightSize (int n, int axes=GO_X|GO_Y|GO_Z)
 
void rotateAxes ()
 
void swapXY ()
 
void flip (int axis)
 BROKEN. Fix when there's time. More...
 
const void * getClosest (go3Vector< goFloat > &point) const
 
goFloat sample (go3Vector< goFloat > &point)
 
goFloat sample (go3Vector< goFloat > &point)
 
goFloat sample (go3Vector< goFloat > &point)
 
goDouble sum () const
 
goSignal3DBase< void > & operator+= (const goSignal3DBase< void > &other)
 Element-wise operator. More...
 
goSignal3DBase< void > & operator+= (goFloat scalar)
 Element-wise operator. More...
 
goSignal3DBase< void * > & operator+= (goFloat scalar)
 
goSignal3DBase< void > & operator-= (const goSignal3DBase< void > &other)
 Element-wise operator. More...
 
goSignal3DBase< void > & operator-= (goFloat scalar)
 Element-wise operator. More...
 
goSignal3DBase< void * > & operator-= (goFloat scalar)
 
goSignal3DBase< void > & operator*= (const goSignal3DBase< void > &other)
 Element-wise operator. More...
 
goSignal3DBase< void > & operator*= (goFloat scalar)
 Element-wise operator. More...
 
goSignal3DBase< void * > & operator*= (goFloat scalar)
 
goSignal3DBase< void > & operator/= (const goSignal3DBase< void > &other)
 Element-wise operator. More...
 
goSignal3DBase< void > & operator/= (goFloat scalar)
 Element-wise operator. More...
 
goSignal3DBase< void * > & operator/= (goFloat scalar)
 
void applyBorderFlags (int axis)
 
void applyBorderFlags ()
 
- Public Member Functions inherited from goObjectBase
 goObjectBase ()
 Constructor.
 
virtual ~goObjectBase ()
 Destructor. More...
 
const char * getClassName () const
 Returns the class name. More...
 
int getClassID () const
 
void setObjectName (const char *name)
 Set name string for an object. More...
 
void setObjectName (const goString &name)
 Set name string for an object. More...
 
const goStringgetObjectName () const
 Get the object name. More...
 
virtual bool writeObjectFile (FILE *) const
 Write object to a file. More...
 
virtual bool readObjectFile (FILE *)
 Read object from a file. More...
 
void connectObject (goObjectBase *object)
 Connects an object to this object. More...
 
void disconnectObject (const goObjectBase *object)
 Disconnects an object from this object.
 
virtual bool callObjectMethod (int methodID, goObjectMethodParameters *param=NULL)
 Call an object method by identifier. More...
 
virtual bool queueObjectMethod (int methodID, goObjectMethodParameters *param=NULL, bool blocking=false)
 Enqueue a method call to an internal list of methods. More...
 
bool callQueuedMethods ()
 Call all queued methods. More...
 

Additional Inherited Members

- Public Types inherited from goSignal3DBase< void >
typedef goSignal3DIterator< void > iterator
 
- Public Attributes inherited from goSignal3DBase< void >
const typedef goSignal3DIterator< void > const_iterator
 
- Protected Member Functions inherited from goSignal3DBase< void >
 goSignal3DBase (goSize_t x, goSize_t y, goSize_t z, goSize_t blocksize_x=32, goSize_t blocksize_y=32, goSize_t blocksize_z=32, goSize_t border_x=16, goSize_t border_y=16, goSize_t border_z=16, goSize_t channelCount=1)
 
 goSignal3DBase (goSignal3DBase< void > &other)
 
bool initializeDataType ()
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_INT8)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_INT16)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_INT32)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_UINT8)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_UINT16)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_UINT32)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_FLOAT)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_DOUBLE)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_VOID_POINTER)
 
bool initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_COMPLEX_SINGLE)
 
bool initialize (void *dataptr, goSize_t x, goSize_t y, goSize_t z, goSize_t blocksize_x=32, goSize_t blocksize_y=32, goSize_t blocksize_z=32, goSize_t border_x=16, goSize_t border_y=16, goSize_t border_z=16, goSize_t channelCount=1)
 
void cleanup ()
 
void setBorder (goSize_t x, goSize_t y, goSize_t z)
 INTERNAL – DO NOT USE. More...
 
void constantBorders (int axes=GO_X|GO_Y|GO_Z)
 
void periodicBorders (int axes=GO_X|GO_Y|GO_Z)
 
- Protected Member Functions inherited from goObjectBase
void setClassID (int id)
 Sets the class name.
 
void printClassMessage (const char *msg)
 Sets the class name. More...
 
void printClassMessage (goString &msg)
 Prints an informational message to the calling console. More...
 
void sendObjectMessage (int messageID, void *data=NULL)
 Sends a message to all connected objects.
 
void sendObjectMessage (goObjectBase *object, int messageID, void *data=NULL)
 Sends a message to a specific object.
 
virtual void receiveObjectMessage (const goObjectMessage &message)
 Receive a message. More...
 
- Protected Attributes inherited from goSignal3DBase< void >
void * ptr
 
void * real_ptr
 
goPtrdiff_t * xDiff
 
goPtrdiff_t * yDiff
 
goPtrdiff_t * zDiff
 
goPtrdiff_t * real_xDiff
 
goPtrdiff_t * real_yDiff
 
goPtrdiff_t * real_zDiff
 
goPtrdiff_t * myXJump
 
goPtrdiff_t * myYJump
 
goPtrdiff_t * myZJump
 
goPtrdiff_t * real_myXJump
 
goPtrdiff_t * real_myYJump
 
goPtrdiff_t * real_myZJump
 
goPtrdiff_t * myChannelOffset
 
goSize3D mySize
 
goSize3D myBorderSize
 
goSize3D myBlockSize
 
goSize3D myBlocks
 
goType myDataType
 
goSize_t myChannelCount
 
goSize_t myChannel
 
goFixedArray< int > myBorderFlags
 

Detailed Description

Wrapper for any memory area suitable for representation through a goSignal3DBase type object (e.g. simply linearly stored data)

Constructor & Destructor Documentation

◆ goSignal3DRef()

goSignal3DRef::goSignal3DRef ( void *  data_ptr,
goTypeEnum  data_type,
goSize_t  sx,
goSize_t  sy = 1,
goSize_t  sz = 1,
goSize_t  channelCount = 1 
)

Construct reference using data linearly stored in memory.

Parameters
data_ptrPointer to linearly stored data, first x direction, then y, then z.
data_typeData type.
sxX size
syY size (default: 1)
szZ size (default: 1)
channelCountChannel count (default: 1)

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