HepMC3 event record library
Public Member Functions | Protected Attributes | Private Attributes
WriterHEPEVT Class Reference

Detailed Description

GenEvent I/O serialization for HEPEVT files.

Definition at line 27 of file WriterHEPEVT.h.

#include <WriterHEPEVT.h>

+ Inheritance diagram for WriterHEPEVT:
+ Collaboration diagram for WriterHEPEVT:

Public Member Functions

 WriterHEPEVT (const std::string &filename, std::shared_ptr< GenRunInfo > run=nullptr)
 Default constructor.
 
 WriterHEPEVT (std::ostream &stream, std::shared_ptr< GenRunInfo > run=nullptr)
 Constructor from ostream.
 
 WriterHEPEVT (std::shared_ptr< std::ostream > s_stream, std::shared_ptr< GenRunInfo > run=nullptr)
 Constructor from temp ostream.
 
virtual void write_hepevt_particle (int index, bool iflong=true)
 Write particle to file.
 
virtual void write_hepevt_event_header ()
 Write event header to file.
 
void write_event (const GenEvent &evt) override
 Write event to file.
 
void close () override
 Close file stream.
 
bool failed () override
 Get stream error state flag.
 
void set_vertices_positions_present (bool iflong)
 set flag if vertex positions are available. Effectively this adds or removes key "vertices_positions_are_absent" to/from the m_options.
 
bool get_vertices_positions_present () const
 get flag if vertex positions are available. The flag is deduced from m_options. If the m_options have the key "vertices_positions_are_absent" the result if false. True otherwise.
 
void set_run_info (std::shared_ptr< GenRunInfo > run)
 Set the global GenRunInfo object.
 
std::shared_ptr< GenRunInforun_info () const
 Get the global GenRunInfo object.
 
void set_options (const std::map< std::string, std::string > &options)
 Set options.
 
std::map< std::string, std::string > get_options () const
 Set options.
 

Protected Attributes

std::ofstream m_file
 Output file.
 
std::shared_ptr< std::ostream > m_shared_stream
 Output temp. stream.
 
std::ostream * m_stream
 Output stream.
 
char * hepevtbuffer
 Pointer to HEPEVT Fortran common block/C struct.
 
int m_events_count
 Events count. Needed to generate unique object name.
 
HEPEVT_Wrapper_Template< 100000 > m_hepevt_interface
 Templated HEPEVT interface.
 
std::map< std::string, std::string > m_options
 options
 

Private Attributes

std::shared_ptr< GenRunInfom_run_info
 The global GenRunInfo object.
 

Constructor & Destructor Documentation

◆ WriterHEPEVT() [1/3]

WriterHEPEVT ( const std::string &  filename,
std::shared_ptr< GenRunInfo run = nullptr 
)

Default constructor.

Warning
If file exists, it will be overwritten

Definition at line 19 of file WriterHEPEVT.cc.

References HEPEVT_Wrapper_Template< max_particles, momentum_type >::allocate_internal_storage(), HEPMC3_WARNING, and WriterHEPEVT::m_hepevt_interface.

◆ WriterHEPEVT() [2/3]

WriterHEPEVT ( std::ostream &  stream,
std::shared_ptr< GenRunInfo run = nullptr 
)

◆ WriterHEPEVT() [3/3]

WriterHEPEVT ( std::shared_ptr< std::ostream >  s_stream,
std::shared_ptr< GenRunInfo run = nullptr 
)

Member Function Documentation

◆ close()

void close ( )
overridevirtual

Close file stream.

Implements Writer.

Definition at line 79 of file WriterHEPEVT.cc.

References WriterHEPEVT::m_stream.

◆ failed()

bool failed ( )
overridevirtual

Get stream error state flag.

Implements Writer.

Definition at line 86 of file WriterHEPEVT.cc.

References WriterHEPEVT::m_file.

◆ get_options()

std::map< std::string, std::string > get_options ( ) const
inlineinherited

Set options.

Definition at line 61 of file Writer.h.

References Writer::m_options.

◆ get_vertices_positions_present()

bool get_vertices_positions_present ( ) const

get flag if vertex positions are available. The flag is deduced from m_options. If the m_options have the key "vertices_positions_are_absent" the result if false. True otherwise.

Definition at line 93 of file WriterHEPEVT.cc.

References Writer::m_options.

◆ run_info()

std::shared_ptr< GenRunInfo > run_info ( ) const
inlineinherited

Get the global GenRunInfo object.

Definition at line 47 of file Writer.h.

References Writer::m_run_info.

◆ set_options()

void set_options ( const std::map< std::string, std::string > &  options)
inlineinherited

Set options.

Definition at line 56 of file Writer.h.

References Writer::m_options.

◆ set_run_info()

void set_run_info ( std::shared_ptr< GenRunInfo run)
inlineinherited

Set the global GenRunInfo object.

Definition at line 42 of file Writer.h.

References Writer::m_run_info.

◆ set_vertices_positions_present()

void set_vertices_positions_present ( bool  iflong)

set flag if vertex positions are available. Effectively this adds or removes key "vertices_positions_are_absent" to/from the m_options.

Definition at line 91 of file WriterHEPEVT.cc.

References Writer::m_options.

◆ write_event()

void write_event ( const GenEvent evt)
overridevirtual

◆ write_hepevt_event_header()

void write_hepevt_event_header ( )
virtual

◆ write_hepevt_particle()

void write_hepevt_particle ( int  index,
bool  iflong = true 
)
virtual

Field Documentation

◆ hepevtbuffer

char* hepevtbuffer
protected

Pointer to HEPEVT Fortran common block/C struct.

Definition at line 87 of file WriterHEPEVT.h.

◆ m_events_count

int m_events_count
protected

Events count. Needed to generate unique object name.

Definition at line 88 of file WriterHEPEVT.h.

◆ m_file

std::ofstream m_file
protected

Output file.

Definition at line 84 of file WriterHEPEVT.h.

◆ m_hepevt_interface

HEPEVT_Wrapper_Template<100000> m_hepevt_interface
protected

Templated HEPEVT interface.

Definition at line 89 of file WriterHEPEVT.h.

◆ m_options

std::map<std::string, std::string> m_options
protectedinherited

options

Definition at line 68 of file Writer.h.

◆ m_run_info

std::shared_ptr<GenRunInfo> m_run_info
privateinherited

The global GenRunInfo object.

Definition at line 73 of file Writer.h.

◆ m_shared_stream

std::shared_ptr<std::ostream> m_shared_stream
protected

Output temp. stream.

Definition at line 85 of file WriterHEPEVT.h.

◆ m_stream

std::ostream* m_stream
protected

Output stream.

Definition at line 86 of file WriterHEPEVT.h.


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