Monarch
v3.8.2
Project 8 Data File Format Library
|
Egg file header information. More...
#include <M3Header.hh>
Public Types | |
typedef std::vector< M3ChannelHeader > | M3ChannelHeaders |
typedef std::vector< M3StreamHeader > | M3StreamHeaders |
Public Member Functions | |
M3Header () | |
~M3Header () | |
void | CopyBasicInfo (const M3Header &aOrig) |
camel_case_mv_referrable_mutable (std::string, EggVersion) | |
camel_case_mv_referrable_mutable (std::string, Filename) | |
camel_case_mv_accessible_mutable (uint32_t, RunDuration) | |
camel_case_mv_referrable_mutable (std::string, Timestamp) | |
camel_case_mv_referrable_mutable (std::string, Description) | |
camel_case_mv_accessible_mutable (uint32_t, NChannels) | |
camel_case_mv_accessible_mutable (uint32_t, NStreams) | |
camel_case_mv_referrable_mutable (std::vector< uint32_t >, ChannelStreams) | |
camel_case_mv_referrable_mutable (std::vector< std::vector< bool > >, ChannelCoherence) | |
void | SetCoherence (unsigned aChanA, unsigned aChanB, bool aCoherence) |
camel_case_mv_referrable_mutable (std::vector< M3ChannelHeader >, ChannelHeaders) | |
std::vector< M3ChannelHeader > & | GetChannelHeaders () |
camel_case_mv_referrable_mutable (std::vector< M3StreamHeader >, StreamHeaders) | |
std::vector< M3StreamHeader > & | GetStreamHeaders () |
unsigned | AddStream (const std::string &aSource, uint32_t anAcqRate, uint32_t aRecSize, uint32_t aSampleSize, uint32_t aDataTypeSize, uint32_t aDataFormat, uint32_t aBitDepth, uint32_t aBitAlignment, std::vector< unsigned > *aChanVec=NULL) |
unsigned | AddStream (const std::string &aSource, uint32_t aNChannels, uint32_t aFormat, uint32_t anAcqRate, uint32_t aRecSize, uint32_t aSampleSize, uint32_t aDataTypeSize, uint32_t aDataFormat, uint32_t aBitDepth, uint32_t aBitAlignment, std::vector< unsigned > *aChanVec=NULL) |
void | WriteToHDF5 (H5::H5File *aFile) |
void | ReadFromHDF5 (const H5::H5File *aFile) const |
const H5::Group * | GetStreamsGroup () const |
H5::Group * | GetStreamsGroup () |
const H5::Group * | GetChannelsGroup () const |
H5::Group * | GetChannelsGroup () |
template<> | |
std::string | ReadScalarFromHDF5 (const HAS_ATTR_IFC *aLoc, const std::string &aName) |
template<> | |
std::string | ReadScalarFromHDF5 (const HAS_ATTR_IFC *aLoc, const std::string &aName, const std::string &aDefaultValue) |
Static Public Member Functions | |
static void | WriteScalarToHDF5 (HAS_ATTR_IFC *aLoc, const std::string &aName, const std::string &aValue) |
template<typename XType > | |
static void | WriteScalarToHDF5 (HAS_ATTR_IFC *aLoc, const std::string &aName, XType aValue) |
template<typename XType > | |
static XType | ReadScalarFromHDF5 (const HAS_ATTR_IFC *aLoc, const std::string &aName) |
template<typename XType > | |
static XType | ReadScalarFromHDF5 (const HAS_ATTR_IFC *aLoc, const std::string &aName, const XType &aDefault) |
Private Member Functions | |
void | WriteChannelStreams (HAS_ATTR_IFC *aLoc) |
void | ReadChannelStreams (const HAS_ATTR_IFC *aLoc) const |
void | WriteChannelCoherence (HAS_ATTR_IFC *aLoc) |
void | ReadChannelCoherence (const HAS_ATTR_IFC *aLoc) const |
Private Attributes | |
H5::H5File * | fFile |
H5::Group * | fStreamsGroup |
H5::Group * | fChannelsGroup |
Egg file header information.
General run setup can be configured by setting variables in this header object.
The stream structure of the data is also configured using the AddStream functions.
Definition at line 152 of file M3Header.hh.
typedef std::vector< M3ChannelHeader > M3ChannelHeaders |
Definition at line 155 of file M3Header.hh.
typedef std::vector< M3StreamHeader > M3StreamHeaders |
Definition at line 156 of file M3Header.hh.
M3Header | ( | ) |
Definition at line 357 of file M3Header.cc.
~M3Header | ( | ) |
Definition at line 373 of file M3Header.cc.
uint32_t AddStream | ( | const std::string & | aSource, |
uint32_t | anAcqRate, | ||
uint32_t | aRecSize, | ||
uint32_t | aSampleSize, | ||
uint32_t | aDataTypeSize, | ||
uint32_t | aDataFormat, | ||
uint32_t | aBitDepth, | ||
uint32_t | aBitAlignment, | ||
std::vector< unsigned > * | aChanVec = NULL |
||
) |
Add a stream with one channel with aRecSize samples per record Returns the stream number (used to address the stream later)
Definition at line 400 of file M3Header.cc.
uint32_t AddStream | ( | const std::string & | aSource, |
uint32_t | aNChannels, | ||
uint32_t | aFormat, | ||
uint32_t | anAcqRate, | ||
uint32_t | aRecSize, | ||
uint32_t | aSampleSize, | ||
uint32_t | aDataTypeSize, | ||
uint32_t | aDataFormat, | ||
uint32_t | aBitDepth, | ||
uint32_t | aBitAlignment, | ||
std::vector< unsigned > * | aChanVec = NULL |
||
) |
Add a stream with multiple channels with aRecSize samples per record Returns the stream number (used to address the stream later)
Definition at line 422 of file M3Header.cc.
camel_case_mv_accessible_mutable | ( | uint32_t | , |
RunDuration | |||
) |
camel_case_mv_accessible_mutable | ( | uint32_t | , |
NChannels | |||
) |
camel_case_mv_accessible_mutable | ( | uint32_t | , |
NStreams | |||
) |
camel_case_mv_referrable_mutable | ( | std::string | , |
EggVersion | |||
) |
camel_case_mv_referrable_mutable | ( | std::string | , |
Filename | |||
) |
camel_case_mv_referrable_mutable | ( | std::string | , |
Timestamp | |||
) |
camel_case_mv_referrable_mutable | ( | std::string | , |
Description | |||
) |
camel_case_mv_referrable_mutable | ( | std::vector< uint32_t > | , |
ChannelStreams | |||
) |
camel_case_mv_referrable_mutable | ( | std::vector< std::vector< bool > > | , |
ChannelCoherence | |||
) |
camel_case_mv_referrable_mutable | ( | std::vector< M3ChannelHeader > | , |
ChannelHeaders | |||
) |
camel_case_mv_referrable_mutable | ( | std::vector< M3StreamHeader > | , |
StreamHeaders | |||
) |
void CopyBasicInfo | ( | const M3Header & | aOrig | ) |
Definition at line 379 of file M3Header.cc.
|
inline |
Definition at line 265 of file M3Header.hh.
|
inline |
Definition at line 255 of file M3Header.hh.
|
inline |
Definition at line 260 of file M3Header.hh.
|
inline |
Definition at line 270 of file M3Header.hh.
|
inline |
Definition at line 245 of file M3Header.hh.
|
inline |
Definition at line 250 of file M3Header.hh.
|
private |
Definition at line 656 of file M3Header.cc.
|
private |
Definition at line 597 of file M3Header.cc.
void ReadFromHDF5 | ( | const H5::H5File * | aFile | ) | const |
Definition at line 500 of file M3Header.cc.
|
static |
Definition at line 336 of file M3Header.hh.
|
static |
Definition at line 367 of file M3Header.hh.
|
inline |
Definition at line 321 of file M3Header.hh.
|
inline |
Definition at line 351 of file M3Header.hh.
void SetCoherence | ( | unsigned | aChanA, |
unsigned | aChanB, | ||
bool | aCoherence | ||
) |
Definition at line 389 of file M3Header.cc.
|
private |
Definition at line 630 of file M3Header.cc.
|
private |
Definition at line 574 of file M3Header.cc.
|
inlinestatic |
Definition at line 276 of file M3Header.hh.
|
static |
Definition at line 286 of file M3Header.hh.
void WriteToHDF5 | ( | H5::H5File * | aFile | ) |
Definition at line 456 of file M3Header.cc.
|
mutableprivate |
Definition at line 224 of file M3Header.hh.
|
mutableprivate |
Definition at line 222 of file M3Header.hh.
|
mutableprivate |
Definition at line 223 of file M3Header.hh.