SIRF  3.4.0
Public Member Functions | Protected Member Functions | List of all members
sirf::DataContainer Class Referenceabstract
Inheritance diagram for sirf::DataContainer:
sirf::ImageData sirf::MRAcquisitionData sirf::PETAcquisitionData sirf::ISMRMRDImageData sirf::NiftiImageData< dataType > sirf::STIRImageData sirf::AcquisitionsVector sirf::PETAcquisitionDataInFile sirf::PETAcquisitionDataInMemory sirf::GadgetronImagesVector sirf::NiftiImageData3D< dataType > sirf::NiftiImageData3DTensor< dataType > sirf::CoilImagesVector sirf::CoilSensitivitiesVector sirf::NiftiImageData3DDeformation< dataType > sirf::NiftiImageData3DDisplacement< dataType >

Public Member Functions

virtual ObjectHandle< DataContainer > * new_data_container_handle () const =0
 
virtual unsigned int items () const =0
 
virtual bool is_complex () const =0
 
virtual float norm () const =0
 returns the norm of this container viewed as a vector
 
virtual void dot (const DataContainer &dc, void *ptr) const =0
 calculates the dot product of this container with another one
 
virtual void multiply (const DataContainer &x, const DataContainer &y)=0
 *this = the elementwise product x*y
 
virtual void divide (const DataContainer &x, const DataContainer &y)=0
 *this = the elementwise ratio x/y
 
virtual void maximum (const DataContainer &x, const DataContainer &y)=0
 *this = the elementwise max(x, y)
 
virtual void minimum (const DataContainer &x, const DataContainer &y)=0
 *this = the elementwise min(x, y)
 
virtual void axpby (const void *ptr_a, const DataContainer &x, const void *ptr_b, const DataContainer &y)=0
 *this = the linear combination of x and y
 
virtual void xapyb (const DataContainer &x, const void *ptr_a, const DataContainer &y, const void *ptr_b)=0
 alternative interface to the above
 
virtual void xapyb (const DataContainer &x, const DataContainer &a, const DataContainer &y, const DataContainer &b)=0
 *this = elementwise sum of two elementwise products x*a and y*b
 
virtual void write (const std::string &filename) const =0
 
bool is_empty () const
 
std::unique_ptr< DataContainerclone () const
 
void conjugate ()
 overwrites this container's complex data with complex conjugate values
 
std::unique_ptr< DataContainerconjugate () const
 returns unique pointer to the complex-conjugated copy of this container
 

Protected Member Functions

virtual DataContainerclone_impl () const =0
 
virtual void conjugate_impl ()
 we assume data to be real, complex data containers must override this
 

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