|
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 (T *p) |
|
const goType & | getDataType () 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...
|
|
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...
|
|
T * | getPtr () |
|
const T * | getPtr () const |
|
const T * | getRealPtr () const |
|
T * | getRealPtr () |
|
T * | getPtr (goIndex_t x, goIndex_t y, goIndex_t z) |
|
const T * | getPtr (goIndex_t x, goIndex_t y, goIndex_t z) const |
|
const goPtrdiff_t * | getXDiff () const |
|
const goPtrdiff_t * | getYDiff () const |
|
const goPtrdiff_t * | getZDiff () const |
|
goPtrdiff_t * | getXDiff () |
|
goPtrdiff_t * | getYDiff () |
|
goPtrdiff_t * | getZDiff () |
|
const goPtrdiff_t * | getXJump () const |
|
const goPtrdiff_t * | getYJump () const |
|
const goPtrdiff_t * | getZJump () const |
|
goPtrdiff_t * | getXJump () |
|
goPtrdiff_t * | getYJump () |
|
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 goSize3D & | getSize () const |
|
const goSize3D & | getBlockSize () const |
|
const goSize3D & | getBorderSize () 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< T > & | reference (goSignal3DBase< T > &other) |
|
bool | operator== (goSignal3DBase< T > &other) |
|
goDouble | getMaximum () const |
|
goDouble | getMinimum () const |
|
void | getMinMax (goDouble &minRet, goDouble &maxRet) const |
|
virtual void | fill (const T *value) |
| Fills the current channel. More...
|
|
virtual void | fill (goDouble value) |
|
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 T * | getClosest (go3Vector< goFloat > &point) const |
|
goFloat | sample (go3Vector< goFloat > &point) |
|
goDouble | sum () const |
|
goSignal3DBase< T > & | operator+= (const goSignal3DBase< T > &other) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator-= (const goSignal3DBase< T > &other) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator*= (const goSignal3DBase< T > &other) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator/= (const goSignal3DBase< T > &other) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator+= (goFloat scalar) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator-= (goFloat scalar) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator*= (goFloat scalar) |
| Element-wise operator. More...
|
|
goSignal3DBase< T > & | operator/= (goFloat scalar) |
| Element-wise operator. More...
|
|
void | applyBorderFlags (int axis) |
|
void | applyBorderFlags () |
|
template<> |
goDouble | getValue (goIndex_t x, goIndex_t y, goIndex_t z, goSize_t channel) const |
|
template<> |
void | setValue (goDouble value, goIndex_t x, goIndex_t y, goIndex_t z, goSize_t channel) |
|
template<> |
goFloat | sample (go3Vector< goFloat > &point) |
|
template<> |
goDouble | getMaximum () const |
|
template<> |
goDouble | getMaximum () const |
|
template<> |
goDouble | getMinimum () const |
|
template<> |
goDouble | getMinimum () const |
|
template<> |
void | fill (goDouble v) |
|
template<> |
goFloat | sample (go3Vector< goFloat > &point) |
|
template<> |
goSignal3DBase< void * > & | operator+= (goFloat scalar) |
|
template<> |
goSignal3DBase< void * > & | operator-= (goFloat scalar) |
|
template<> |
goSignal3DBase< void * > & | operator*= (goFloat scalar) |
|
template<> |
goSignal3DBase< void * > & | operator/= (goFloat scalar) |
|
| 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 goString & | getObjectName () 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...
|
|
|
| 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< T > &other) |
|
bool | initializeDataType () |
|
bool | initialize (T *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) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_INT8) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_INT16) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_INT32) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_UINT8) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_UINT16) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_UINT32) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_FLOAT) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_DOUBLE) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_VOID_POINTER) |
|
template<> |
bool | initializeDataType () INITIALIZE_DATATYPE_METHOD(GO_COMPLEX_SINGLE) |
|
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...
|
|
template<class T>
class goSignal3DBase< T >
Base class for up to 3D signals.
This can be used as a template class as you would expect, giving the data type as template parameter. Alternatively, giving void
as template parameter, goSignal3DBase and its derivatives can be used as a generic signal container with variable data type. This behaviour is preferable in many situations.
This class can handle multichannel data (such as RGBA). To select a channel, use setChannel()
. All data access functions will then work so that any accessed data value is from the selected channel. For details on how to create a multichannel see goSignal3D
- Note
- Although instances for many explicit data types are provided, it is recommended to use the special void type instantiation.
- Todo:
The void
implementation may not completely be done. Check if some of the routines in gosignal3d and base are still marked as "not yet implemented".
typedef the void instantiation to something else and use that.
- Author
- Christian Gosch