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

#include <H5PartWrapperForPT.h>

Inheritance diagram for H5PartWrapperForPT:
Inheritance graph
[legend]
Collaboration diagram for H5PartWrapperForPT:
Collaboration graph
[legend]

Public Member Functions

 H5PartWrapperForPT (const std::string &fileName, h5_int32_t flags=H5_O_WRONLY)
 
 H5PartWrapperForPT (const std::string &fileName, int restartStep, std::string sourceFile, h5_int32_t flags=H5_O_RDWR)
 
virtual ~H5PartWrapperForPT ()
 
virtual void readHeader ()
 
virtual void readStep (PartBunchBase< double, 3 > *, h5_ssize_t firstParticle, h5_ssize_t lastParticle)
 
virtual void writeHeader ()
 
virtual void writeStep (PartBunchBase< double, 3 > *, const std::map< std::string, double > &additionalStepAttributes)
 
virtual bool predecessorIsSameFlavour () const
 
- Public Member Functions inherited from H5PartWrapper
virtual ~H5PartWrapper ()
 
void close ()
 
double getLastPosition ()
 
void storeCavityInformation ()
 
size_t getNumParticles () const
 

Private Member Functions

void readStepHeader (PartBunchBase< double, 3 > *)
 
void readStepData (PartBunchBase< double, 3 > *, h5_ssize_t, h5_ssize_t)
 
void writeStepHeader (PartBunchBase< double, 3 > *, const std::map< std::string, double > &)
 
void writeStepData (PartBunchBase< double, 3 > *)
 

Additional Inherited Members

- Protected Member Functions inherited from H5PartWrapper
 H5PartWrapper (const std::string &fileName, h5_int32_t flags=H5_O_WRONLY)
 
 H5PartWrapper (const std::string &fileName, int restartStep, std::string sourceFile, h5_int32_t flags=H5_O_RDWR)
 
void open (h5_int32_t flags)
 
void copyFile (const std::string &sourceFile, int lastStep=-1, h5_int32_t flags=H5_O_WRONLY)
 
void copyFileSystem (const std::string &sourceFile)
 
void copyHeader (h5_file_t source)
 
void copyStep (h5_file_t source, int step)
 
void copyStepHeader (h5_file_t source)
 
void copyStepData (h5_file_t source)
 
void sendFailureMessage (bool failed, const std::string &where, const std::string &what)
 
void receiveFailureMessage (int sourceNode, const std::string &where, const std::string &what)
 
- Static Protected Member Functions inherited from H5PartWrapper
static void reportOnError (h5_int64_t rc, const char *file, int line)
 
- Protected Attributes inherited from H5PartWrapper
h5_file_t file_m
 
std::string fileName_m
 
std::string predecessorOPALFlavour_m
 
h5_int64_t numSteps_m
 
bool startedFromExistingFile_m
 
- Static Protected Attributes inherited from H5PartWrapper
static std::string copyFilePrefix_m = ".copy"
 

Detailed Description

H5PartWrapperForPT: a class that manages all calls to H5Part for the Parallel-T tracker

Definition at line 19 of file H5PartWrapperForPT.h.

Constructor & Destructor Documentation

H5PartWrapperForPT::H5PartWrapperForPT ( const std::string &  fileName,
h5_int32_t  flags = H5_O_WRONLY 
)

Definition at line 19 of file H5PartWrapperForPT.cpp.

H5PartWrapperForPT::H5PartWrapperForPT ( const std::string &  fileName,
int  restartStep,
std::string  sourceFile,
h5_int32_t  flags = H5_O_RDWR 
)

Definition at line 23 of file H5PartWrapperForPT.cpp.

References H5PartWrapper::file_m, OpalData::getInstance(), and OpalData::setRestartStep().

Here is the call graph for this function:

H5PartWrapperForPT::~H5PartWrapperForPT ( )
virtual

Definition at line 32 of file H5PartWrapperForPT.cpp.

Member Function Documentation

bool H5PartWrapperForPT::predecessorIsSameFlavour ( ) const
inlinevirtual

Implements H5PartWrapper.

Definition at line 42 of file H5PartWrapperForPT.h.

References H5PartWrapper::predecessorOPALFlavour_m.

void H5PartWrapperForPT::readHeader ( )
virtual
void H5PartWrapperForPT::readStep ( PartBunchBase< double, 3 > *  bunch,
h5_ssize_t  firstParticle,
h5_ssize_t  lastParticle 
)
virtual

Implements H5PartWrapper.

Definition at line 89 of file H5PartWrapperForPT.cpp.

References H5PartWrapper::file_m, readStepData(), readStepHeader(), and REPORTONERROR.

Here is the call graph for this function:

void H5PartWrapperForPT::readStepData ( PartBunchBase< double, 3 > *  bunch,
h5_ssize_t  firstParticle,
h5_ssize_t  lastParticle 
)
private
void H5PartWrapperForPT::readStepHeader ( PartBunchBase< double, 3 > *  bunch)
private
void H5PartWrapperForPT::writeHeader ( )
virtual

Write file dump frequency.

Write global phase change

Implements H5PartWrapper.

Definition at line 191 of file H5PartWrapperForPT.cpp.

References Options::ebDump, H5PartWrapper::file_m, Util::getGitRevision(), OpalData::getGlobalPhaseShift(), OpalData::getInstance(), OPAL_PROJECT_NAME, OPAL_PROJECT_VERSION, Options::psDumpFreq, Options::rhoDump, WRITEFILEATTRIB, and WRITESTRINGFILEATTRIB.

Here is the call graph for this function:

void H5PartWrapperForPT::writeStep ( PartBunchBase< double, 3 > *  bunch,
const std::map< std::string, double > &  additionalStepAttributes 
)
virtual

Implements H5PartWrapper.

Definition at line 274 of file H5PartWrapperForPT.cpp.

References H5PartWrapper::close(), PartBunchBase< T, Dim >::getTotalNum(), H5PartWrapper::open(), writeStepData(), and writeStepHeader().

Here is the call graph for this function:

void H5PartWrapperForPT::writeStepData ( PartBunchBase< double, 3 > *  bunch)
private
void H5PartWrapperForPT::writeStepHeader ( PartBunchBase< double, 3 > *  bunch,
const std::map< std::string, double > &  additionalStepAttributes 
)
private

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