PARALUTION  1.0.0
PARALUTION
paralution::BaseParalution< ValueType > Class Template Referenceabstract

Base class for operator and vector (i.e. global/local matrix/stencil/vector) classes, all the backend-related interface and data are defined here. More...

#include <base_paralution.hpp>

Inheritance diagram for paralution::BaseParalution< ValueType >:
paralution::ParalutionObj paralution::Operator< ValueType > paralution::Vector< ValueType > paralution::LocalMatrix< ValueTypeH > paralution::LocalMatrix< ValueTypeL > paralution::LocalMatrix< ValueType > paralution::LocalStencil< ValueType > paralution::LocalVector< int > paralution::LocalVector< ValueTypeH > paralution::LocalVector< ValueTypeL > paralution::LocalVector< ValueType >

Public Member Functions

 BaseParalution ()
 
 BaseParalution (const BaseParalution< ValueType > &src)
 
virtual ~BaseParalution ()
 
BaseParalution< ValueType > & operator= (const BaseParalution< ValueType > &src)
 
virtual void MoveToAccelerator (void)=0
 Move the object to the Accelerator backend. More...
 
virtual void MoveToHost (void)=0
 Move the object to the Host backend. More...
 
virtual void MoveToAcceleratorAsync (void)
 Move the object to the Accelerator backend with async move. More...
 
virtual void MoveToHostAsync (void)
 Move the object to the Host backend with async move. More...
 
virtual void Sync (void)
 
void CloneBackend (const BaseParalution< ValueType > &src)
 Clone the Backend descriptor from another object. More...
 
template<typename ValueType2 >
void CloneBackend (const BaseParalution< ValueType2 > &src)
 Clone the Backend descriptor from another object with different template ValueType. More...
 
virtual void info () const =0
 Print the object information (properties, backends) More...
 
virtual void Clear ()=0
 Clear (free all data) the object. More...
 

Protected Member Functions

virtual bool is_host (void) const =0
 Return true if the object is on the host. More...
 
virtual bool is_accel (void) const =0
 Return true if the object is on the accelerator. More...
 

Protected Attributes

std::string object_name_
 Name of the object. More...
 
Paralution_Backend_Descriptor local_backend_
 Backend descriptor. More...
 
bool asyncf
 
size_t global_obj_id
 

Friends

class BaseParalution< double >
 
class BaseParalution< float >
 
class BaseParalution< std::complex< double > >
 
class BaseParalution< std::complex< float > >
 
class BaseParalution< int >
 

Detailed Description

template<typename ValueType>
class paralution::BaseParalution< ValueType >

Base class for operator and vector (i.e. global/local matrix/stencil/vector) classes, all the backend-related interface and data are defined here.

Constructor & Destructor Documentation

template<typename ValueType >
paralution::BaseParalution< ValueType >::BaseParalution ( )
template<typename ValueType >
paralution::BaseParalution< ValueType >::BaseParalution ( const BaseParalution< ValueType > &  src)
template<typename ValueType >
paralution::BaseParalution< ValueType >::~BaseParalution ( )
virtual

Member Function Documentation

template<typename ValueType >
template<typename ValueType2 >
void paralution::BaseParalution< ValueType >::CloneBackend ( const BaseParalution< ValueType2 > &  src)

Clone the Backend descriptor from another object with different template ValueType.

template<typename ValueType >
void paralution::BaseParalution< ValueType >::MoveToAcceleratorAsync ( void  )
virtual
template<typename ValueType >
BaseParalution< ValueType > & paralution::BaseParalution< ValueType >::operator= ( const BaseParalution< ValueType > &  src)

Friends And Related Function Documentation

template<typename ValueType>
friend class BaseParalution< double >
friend
template<typename ValueType>
friend class BaseParalution< float >
friend
template<typename ValueType>
friend class BaseParalution< int >
friend
template<typename ValueType>
friend class BaseParalution< std::complex< double > >
friend
template<typename ValueType>
friend class BaseParalution< std::complex< float > >
friend

Field Documentation

template<typename ValueType>
bool paralution::BaseParalution< ValueType >::asyncf
protected
size_t paralution::ParalutionObj::global_obj_id
protectedinherited
template<typename ValueType>
Paralution_Backend_Descriptor paralution::BaseParalution< ValueType >::local_backend_
protected

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