ATLAS Offline Software
Loading...
Searching...
No Matches
H5FileSvc Class Reference

#include <H5FileSvc.h>

Inheritance diagram for H5FileSvc:
Collaboration diagram for H5FileSvc:

Public Member Functions

 H5FileSvc (const std::string &name, ISvcLocator *pSvcLocator)
 ~H5FileSvc ()
virtual StatusCode initialize () override
virtual H5::Group * group () override

Private Attributes

std::unique_ptr< H5::H5File > m_file {nullptr}
std::unique_ptr< H5::Group > m_root_group {nullptr}
Gaudi::Property< std::string > m_file_path {this, "path", "", "path to file"}

Detailed Description

Definition at line 19 of file H5FileSvc.h.

Constructor & Destructor Documentation

◆ H5FileSvc()

H5FileSvc::H5FileSvc ( const std::string & name,
ISvcLocator * pSvcLocator )

Definition at line 7 of file H5FileSvc.cxx.

7 :
8 base_class(name, pSvcLocator)
9{
10}

◆ ~H5FileSvc()

H5FileSvc::~H5FileSvc ( )
default

Member Function Documentation

◆ group()

H5::Group * H5FileSvc::group ( )
overridevirtual

Definition at line 23 of file H5FileSvc.cxx.

23 {
24 return m_root_group.get();
25}
std::unique_ptr< H5::Group > m_root_group
Definition H5FileSvc.h:29

◆ initialize()

StatusCode H5FileSvc::initialize ( )
overridevirtual

Definition at line 14 of file H5FileSvc.cxx.

14 {
15 if (m_file_path.empty()) {
16 return StatusCode::FAILURE;
17 }
18 m_file = std::make_unique<H5::H5File>(m_file_path, H5F_ACC_TRUNC);
19 m_root_group = std::make_unique<H5::Group>(m_file->openGroup("/"));
20 return StatusCode::SUCCESS;
21}
Gaudi::Property< std::string > m_file_path
Definition H5FileSvc.h:30
std::unique_ptr< H5::H5File > m_file
Definition H5FileSvc.h:28

Member Data Documentation

◆ m_file

std::unique_ptr<H5::H5File> H5FileSvc::m_file {nullptr}
private

Definition at line 28 of file H5FileSvc.h.

28{nullptr};

◆ m_file_path

Gaudi::Property<std::string> H5FileSvc::m_file_path {this, "path", "", "path to file"}
private

Definition at line 30 of file H5FileSvc.h.

30{this, "path", "", "path to file"};

◆ m_root_group

std::unique_ptr<H5::Group> H5FileSvc::m_root_group {nullptr}
private

Definition at line 29 of file H5FileSvc.h.

29{nullptr};

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