OPAL (Object Oriented Parallel Accelerator Library)  2.2.0
OPAL
Classes | Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
DiscParticle Class Reference

#include <DiscParticle.h>

Collaboration diagram for DiscParticle:
Collaboration graph
[legend]

Classes

struct  RecordInfo
 

Public Types

enum  DPMode1 { INPUT, OUTPUT, APPEND }
 
enum  DPMode2 { ALL, ATTRIB }
 

Public Member Functions

 DiscParticle (const char *fname, const char *config, int iomode, const char *typestr=0)
 
 DiscParticle (const char *fname, int iomode, const char *=0)
 
 ~DiscParticle ()
 
bool get_OK () const
 
unsigned int get_NumRecords () const
 
int get_DataMode (unsigned int record=0) const
 
int get_IOMode () const
 
unsigned int get_NumLocalParticles (unsigned int record=0) const
 
unsigned int get_NumGlobalParticles (unsigned int record=0) const
 
unsigned int get_NumAttributes (unsigned int record=0) const
 
unsigned int get_ElemByteSize (unsigned int record=0, unsigned int attrib=0) const
 
const char * get_TypeString () const
 
const char * get_DiscType (unsigned int record=0, unsigned int attrib=0) const
 
template<class T >
bool read (IpplParticleBase< T > &pbase, unsigned int record)
 
template<class T >
bool read (ParticleAttrib< T > &pattr, unsigned int record)
 
template<class T >
bool write (IpplParticleBase< T > &pbase)
 
template<class T >
bool write (ParticleAttrib< T > &pattr)
 
void printDebug (std::ostream &)
 
void printDebug ()
 

Private Types

typedef long Offset_t
 

Private Member Functions

void initialize (const char *base, const char *config, const char *typestr, int iomode)
 
FILE * open_file (const std::string &fnm, const std::string &mode, bool reporterr=true)
 
bool read_meta ()
 
bool write_meta ()
 
void * read_data (FILE *outputData, unsigned int attrib, unsigned int record, unsigned int fileset)
 
bool write_data (FILE *outputData, std::vector< Message * > &, RecordInfo *)
 
 DiscParticle (const DiscParticle &)
 
DiscParticleoperator= (const DiscParticle &)
 

Private Attributes

DiscConfigConfig
 
bool ConfigOK
 
int IOMode
 
std::string BaseFile
 
std::string TypeString
 
std::vector< RecordInfo * > RecordList
 
Offset_t CurrentOffset
 

Detailed Description

Definition at line 38 of file DiscParticle.h.

Member Typedef Documentation

typedef long DiscParticle::Offset_t
private

Definition at line 663 of file DiscParticle.h.

Member Enumeration Documentation

Enumerator
INPUT 
OUTPUT 
APPEND 

Definition at line 43 of file DiscParticle.h.

Enumerator
ALL 
ATTRIB 

Definition at line 47 of file DiscParticle.h.

Constructor & Destructor Documentation

DiscParticle::DiscParticle ( const char *  fname,
const char *  config,
int  iomode,
const char *  typestr = 0 
)

Definition at line 52 of file DiscParticleFunctions.cpp.

References initialize().

Here is the call graph for this function:

DiscParticle::DiscParticle ( const char *  fname,
int  iomode,
const char *  typestr = 0 
)

Definition at line 63 of file DiscParticleFunctions.cpp.

References initialize().

Here is the call graph for this function:

DiscParticle::~DiscParticle ( )

Definition at line 110 of file DiscParticleFunctions.cpp.

References Config, and RecordList.

DiscParticle::DiscParticle ( const DiscParticle )
private

Member Function Documentation

int DiscParticle::get_DataMode ( unsigned int  record = 0) const
inline

Definition at line 84 of file DiscParticle.h.

References ALL, ATTRIB, and RecordList.

Referenced by get_NumAttributes(), and read().

const char * DiscParticle::get_DiscType ( unsigned int  record = 0,
unsigned int  attrib = 0 
) const

Definition at line 126 of file DiscParticleFunctions.cpp.

References get_NumRecords(), and RecordList.

Referenced by printDebug().

Here is the call graph for this function:

unsigned int DiscParticle::get_ElemByteSize ( unsigned int  record = 0,
unsigned int  attrib = 0 
) const
inline

Definition at line 108 of file DiscParticle.h.

References RecordList.

Referenced by printDebug(), and read().

int DiscParticle::get_IOMode ( ) const
inline

Definition at line 90 of file DiscParticle.h.

References IOMode.

unsigned int DiscParticle::get_NumAttributes ( unsigned int  record = 0) const
inline

Definition at line 103 of file DiscParticle.h.

References ALL, get_DataMode(), and RecordList.

Referenced by printDebug(), and read().

Here is the call graph for this function:

unsigned int DiscParticle::get_NumGlobalParticles ( unsigned int  record = 0) const
inline

Definition at line 98 of file DiscParticle.h.

References RecordList.

Referenced by printDebug().

unsigned int DiscParticle::get_NumLocalParticles ( unsigned int  record = 0) const

Definition at line 140 of file DiscParticleFunctions.cpp.

References RecordList.

unsigned int DiscParticle::get_NumRecords ( ) const
inline

Definition at line 79 of file DiscParticle.h.

References RecordList.

Referenced by get_DiscType(), printDebug(), read(), and write().

bool DiscParticle::get_OK ( ) const
inline

Definition at line 73 of file DiscParticle.h.

References ConfigOK.

const char* DiscParticle::get_TypeString ( ) const
inline

Definition at line 114 of file DiscParticle.h.

References TypeString.

void DiscParticle::initialize ( const char *  base,
const char *  config,
const char *  typestr,
int  iomode 
)
private

Definition at line 72 of file DiscParticleFunctions.cpp.

References IpplInfo::abort(), APPEND, BaseFile, Config, ConfigOK, CurrentOffset, INPUT, IOMode, DiscConfig::ok(), OUTPUT, read_meta(), and TypeString.

Referenced by DiscParticle().

Here is the call graph for this function:

FILE * DiscParticle::open_file ( const std::string &  fnm,
const std::string &  mode,
bool  reporterr = true 
)
private

Definition at line 151 of file DiscParticleFunctions.cpp.

References endl(), ERRORMSG, and IpplInfo::myNode().

Referenced by read(), write(), and write_meta().

Here is the call graph for this function:

DiscParticle& DiscParticle::operator= ( const DiscParticle )
private
void DiscParticle::printDebug ( std::ostream &  outmsg)
void DiscParticle::printDebug ( )

Definition at line 755 of file DiscParticleFunctions.cpp.

Referenced by read_meta(), and write_meta().

template<class T >
bool DiscParticle::read ( IpplParticleBase< T > &  pbase,
unsigned int  record 
)
inline
template<class T >
bool DiscParticle::read ( ParticleAttrib< T > &  pattr,
unsigned int  record 
)
inline
void * DiscParticle::read_data ( FILE *  outputData,
unsigned int  attrib,
unsigned int  record,
unsigned int  fileset 
)
private

Definition at line 705 of file DiscParticleFunctions.cpp.

References DPFDBG, endl(), ERRORMSG, INFORM_ALL_NODES, and RecordList.

Referenced by read().

Here is the call graph for this function:

bool DiscParticle::read_meta ( )
private
template<class T >
bool DiscParticle::write ( IpplParticleBase< T > &  pbase)
inline
template<class T >
bool DiscParticle::write ( ParticleAttrib< T > &  pattr)
inline
bool DiscParticle::write_data ( FILE *  outputData,
std::vector< Message * > &  msgvec,
RecordInfo info 
)
private
bool DiscParticle::write_meta ( )
private

Member Data Documentation

std::string DiscParticle::BaseFile
private

Definition at line 673 of file DiscParticle.h.

Referenced by initialize(), and printDebug().

DiscConfig* DiscParticle::Config
private

Definition at line 666 of file DiscParticle.h.

Referenced by initialize(), printDebug(), read(), read_meta(), write(), write_meta(), and ~DiscParticle().

bool DiscParticle::ConfigOK
private

Definition at line 667 of file DiscParticle.h.

Referenced by get_OK(), initialize(), read(), read_meta(), write(), and write_meta().

Offset_t DiscParticle::CurrentOffset
private

Definition at line 697 of file DiscParticle.h.

Referenced by initialize(), printDebug(), read_meta(), write_data(), and write_meta().

int DiscParticle::IOMode
private

Definition at line 670 of file DiscParticle.h.

Referenced by get_IOMode(), initialize(), read(), write(), and write_meta().

std::vector<RecordInfo *> DiscParticle::RecordList
private
std::string DiscParticle::TypeString
private

Definition at line 674 of file DiscParticle.h.

Referenced by get_TypeString(), initialize(), read_meta(), and write_meta().


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