ls1-MarDyn
ls1-MarDyn molecular dynamics code
Public Member Functions | List of all members
MmpldWriterMultiSphere Class Reference
Inheritance diagram for MmpldWriterMultiSphere:
MmpldWriter PluginBase

Public Member Functions

 MmpldWriterMultiSphere (uint64_t startTimestep, uint64_t writeFrequency, uint64_t stopTimestep, uint64_t numFramesPerFile, std::string outputPrefix)
 
virtual void SetNumSphereTypes ()
 
virtual void CalcNumSpheresPerType (ParticleContainer *particleContainer, uint64_t *numSpheresPerType)
 
virtual bool GetSpherePos (float *spherePos, Molecule *mol, uint8_t &nSphereTypeIndex)
 
- Public Member Functions inherited from MmpldWriter
void readXML (XMLfileUnits &xmlconfig)
 Method readXML will be called once for each plugin section in the input file. More...
 
void init (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, Domain *domain)
 Method init will be called at the begin of the simulation. More...
 
void endStep (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, Domain *domain, unsigned long simstep)
 Method endStep will be called at the end of each time step. More...
 
void finish (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, Domain *domain)
 Method finish will be called at the end of the simulation. More...
 
std::string getPluginName ()
 return the name of the plugin More...
 
void SetInitSphereDataParameters (const uint8_t &bInitSphereData, const std::string &strSphereDataFilename)
 
- Public Member Functions inherited from PluginBase
 PluginBase ()
 Subclasses should use their constructur to pass parameters (e.g. filenames)
 
virtual void beforeEventNewTimestep (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, unsigned long simstep)
 Method will be called first thing in a new timestep. More...
 
virtual void beforeForces (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, unsigned long simstep)
 Method beforeForces will be called before forcefields have been applied no alterations w.r.t. Forces shall be made here. More...
 
virtual void siteWiseForces (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, unsigned long simstep)
 Method siteWiseForces will be called before forcefields have been applied alterations to sitewise forces and fullMolecule forces can be made here. More...
 
virtual void afterForces (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, unsigned long simstep)
 Method afterForces will be called after forcefields have been applied no sitewise Forces can be applied here. More...
 
virtual void registerCallbacks (std::map< std::string, FunctionWrapper > &callbackMap)
 
virtual void accessAllCallbacks (const std::map< std::string, FunctionWrapper > &callbackMap)
 

Additional Inherited Members

- Static Public Member Functions inherited from MmpldWriter
static PluginBasecreateInstance ()
 
- Protected Member Functions inherited from MmpldWriter
 MmpldWriter (uint64_t startTimestep, uint64_t writeFrequency, uint64_t stopTimestep, uint64_t numFramesPerFile, std::string outputPrefix)
 : writes a mmspd file used by MegaMol More...
 
void InitSphereData ()
 
std::string getOutputFilename ()
 
void MultiFileApproachReset (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp, Domain *domain)
 
void PrepareWriteControl ()
 
long get_data_frame_header_size ()
 
long get_seekTable_size ()
 
void writeSeekTableEntry (int id, uint64_t offset)
 
long get_data_list_header_size ()
 
long get_particle_data_size ()
 
long get_data_list_size (uint64_t particle_count)
 
void write_frame_header (uint32_t num_data_lists)
 
void write_particle_list_header (uint64_t particle_count, int sphereId)
 
void write_frame (ParticleContainer *particleContainer, DomainDecompBase *domainDecomp)
 
- Protected Attributes inherited from MmpldWriter
uint64_t _startTimestep
 
uint64_t _writeFrequency
 
uint64_t _stopTimestep
 
long _writeBufferSize
 
std::string _outputPrefix
 
std::string _timestampString
 
uint32_t _frameCount
 
uint8_t _numComponents
 
uint8_t _numSitesTotal
 
uint8_t _numSphereTypes
 
std::vector< uint64_t > _seekTable
 
std::vector< uint8_t > _numSitesPerComp
 
std::vector< uint8_t > _nCompSitesOffset
 
std::string _strSphereDataFilename
 
uint8_t _bInitSphereData
 
bool _bWriteControlPrepared
 
long _fileCount
 
uint32_t _numFramesPerFile
 
uint16_t _mmpldversion
 
uint32_t _numSeekEntries
 
MMPLD_Vertex_type _vertex_type
 
MMPLD_Color_type _color_type
 
std::vector< float > _global_radius
 
std::vector< std::array< uint8_t, 4 > > _global_rgba
 
std::vector< std::array< float, 2 > > _global_intensity_range
 
MPI_File _mpifh
 
MPI_Info_object _mpiinfo
 

Member Function Documentation

◆ CalcNumSpheresPerType()

void MmpldWriterMultiSphere::CalcNumSpheresPerType ( ParticleContainer particleContainer,
uint64_t *  numSpheresPerType 
)
virtual

Reimplemented from MmpldWriter.

◆ GetSpherePos()

bool MmpldWriterMultiSphere::GetSpherePos ( float *  spherePos,
Molecule mol,
uint8_t &  nSphereTypeIndex 
)
virtual

Reimplemented from MmpldWriter.

◆ SetNumSphereTypes()

virtual void MmpldWriterMultiSphere::SetNumSphereTypes ( )
inlinevirtual

Reimplemented from MmpldWriter.


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