-#ifdef KGFO_USE_IDO
-
-// -------------------------------------------------------------------------
-kVolume::kVolume( PPPVOLUME org )
- : _raw( 0 ), _columns( 0 ), _images( 0 ),
- _creator( IDO ),
-#ifdef KGFO_USE_VTK
- _vtk( 0 ),
-#endif // KGFO_USE_VTK
- _privateIdo( 0 )
-{
- switch( IdVolType( org ) ) {
-
- case VOL_UCHAR: _type = UCHAR; break;
- case VOL_CHAR: _type = CHAR; break;
- case VOL_FLOAT: _type = FLOAT; break;
- case VOL_DOUBLE: _type = DOUBLE; break;
- case VOL_SHORT: _type = SHORT; break;
- case VOL_USHORT: _type = USHORT; break;
- case VOL_LONG: _type = INT; break;
- case VOL_ULONG: _type = UINT; break;
- default: break;
-
- } // fswitch
-
- _dims[ CX ] = IdVolDimX( org );
- _dims[ CY ] = IdVolDimY( org );
- _dims[ CZ ] = IdVolDimZ( org );
- _sizes[ CX ] = 1;
- _sizes[ CY ] = 1;
- _sizes[ CZ ] = 1;
-
- _privateIdo = _IdVolPrivate( org );
- _raw = ( ( void*** ) &( _privateIdo[ 1 ] ) )[ 0 ][ 0 ];
- buildIndex( );
-}
-
-// -------------------------------------------------------------------------
-kVolume& kVolume::operator=( PPPVOLUME org )
-{
- copyFrom( org );
- return( *this );
-}
-
-// -------------------------------------------------------------------------
-void kVolume::copyFrom( PPPVOLUME org )
-{
- void* buffer;
-
- deallocate( );
-
- _raw = NULL;
- _columns = NULL;
- _images = NULL;
- _creator = SELF;
-#ifdef KGFO_USE_VTK
- _vtk = NULL;
-#endif // KGFO_USE_VTK
- _privateIdo = NULL;
-
- switch( IdVolType( org ) ) {
-
- case VOL_UCHAR: _type = UCHAR; break;
- case VOL_CHAR: _type = CHAR; break;
- case VOL_FLOAT: _type = FLOAT; break;
- case VOL_DOUBLE: _type = DOUBLE; break;
- case VOL_SHORT: _type = SHORT; break;
- case VOL_USHORT: _type = USHORT; break;
- case VOL_LONG: _type = INT; break;
- case VOL_ULONG: _type = UINT; break;
- default: break;
-
- } // fswitch
-
- _dims[ CX ] = IdVolDimX( org );
- _dims[ CY ] = IdVolDimY( org );
- _dims[ CZ ] = IdVolDimZ( org );
- _sizes[ CX ] = 1;
- _sizes[ CY ] = 1;
- _sizes[ CZ ] = 1;
-
- allocate( );
- buildIndex( );
- buffer = ( ( void*** ) &( org[ 1 ] ) )[ 0 ][ 0 ];
- memcpy( _raw, buffer, getRawSizeInBytes( ) );
-}
-
-#endif // KGFO_USE_IDO