Project
Loading...
Searching...
No Matches
RawParser.h File Reference

Generic parser for consecutive raw pages. More...

#include "Headers/RAWDataHeader.h"
#include "Framework/VariantHelpers.h"
#include "Framework/Logger.h"
#include <functional>
#include <memory>
#include <variant>
#include <stdexcept>
#include <string>
#include <type_traits>

Go to the source code of this file.

Classes

struct  o2::framework::raw_parser::RDHFormatter< T >
 
struct  o2::framework::raw_parser::RDHFormatter< header::RAWDataHeaderV7 >
 
struct  o2::framework::raw_parser::RDHFormatter< header::RAWDataHeaderV6 >
 
struct  o2::framework::raw_parser::RDHFormatter< header::RAWDataHeaderV5 >
 
struct  o2::framework::raw_parser::RDHFormatter< header::RAWDataHeaderV4 >
 
struct  o2::framework::raw_parser::RawParserHelper
 
class  o2::framework::raw_parser::ConcreteRawParser< HeaderType, MAX_SIZE, BOUNDS_CHECKS >
 
class  o2::framework::RawParser< MAX_SIZE, BOUNDS_CHECKS >
 
struct  o2::framework::RawParser< MAX_SIZE, BOUNDS_CHECKS >::RawDataHeaderInfo
 
class  o2::framework::RawParser< MAX_SIZE, BOUNDS_CHECKS >::Iterator< T, ParentType >
 

Namespaces

namespace  o2
 a couple of static helper functions to create timestamp values for CCDB queries or override obsolete objects
 
namespace  o2::header
 O2 data header classes and API, v0.1.
 
namespace  o2::framework
 Defining PrimaryVertex explicitly as messageable.
 
namespace  o2::framework::raw_parser
 workspace for raw parser internal utilities
 

Typedefs

using o2::framework::raw_parser::V7 = header::RAWDataHeaderV7
 
using o2::framework::raw_parser::V6 = header::RAWDataHeaderV6
 
using o2::framework::raw_parser::V5 = header::RAWDataHeaderV5
 
using o2::framework::raw_parser::V4 = header::RAWDataHeaderV4
 
template<size_t N, bool BOUNDS_CHECKS>
using o2::framework::raw_parser::V7Parser = ConcreteRawParser< header::RAWDataHeaderV7, N, BOUNDS_CHECKS >
 
template<size_t N, bool BOUNDS_CHECKS>
using o2::framework::raw_parser::V6Parser = ConcreteRawParser< header::RAWDataHeaderV6, N, BOUNDS_CHECKS >
 
template<size_t N, bool BOUNDS_CHECKS>
using o2::framework::raw_parser::V5Parser = ConcreteRawParser< header::RAWDataHeaderV5, N, BOUNDS_CHECKS >
 
template<size_t N, bool BOUNDS_CHECKS>
using o2::framework::raw_parser::V4Parser = ConcreteRawParser< header::RAWDataHeaderV4, N, BOUNDS_CHECKS >
 
template<size_t N, bool BOUNDS_CHECKS>
using o2::framework::raw_parser::ConcreteParserVariants = std::variant< V7Parser< N, BOUNDS_CHECKS >, V6Parser< N, BOUNDS_CHECKS >, V5Parser< N, BOUNDS_CHECKS >, V4Parser< N, BOUNDS_CHECKS > >
 

Enumerations

enum struct  o2::framework::raw_parser::FormatSpec {
  o2::framework::raw_parser::Info , o2::framework::raw_parser::TableHeader , o2::framework::raw_parser::Entry , o2::framework::raw_parser::FullTable ,
  o2::framework::raw_parser::FullTableInfo
}
 specifier for printout More...
 

Functions

template<size_t PageSize, bool BOUNDS_CHECKS, typename T >
ConcreteParserVariants< PageSize, BOUNDS_CHECKS > o2::framework::raw_parser::create (T const *buffer, size_t size)
 create a raw parser depending on version of RAWDataHeader found at beginning of data
 
template<size_t N, typename T , typename P >
void o2::framework::raw_parser::walk_parse (T &instances, P &&processor, size_t index)
 
template<typename U , typename T , size_t N = std::variant_size_v<T>>
U const * o2::framework::raw_parser::get_if (T &instances)
 

Detailed Description

Generic parser for consecutive raw pages.

Author
Matthias Richter
Since
2019-10-15

Definition in file RawParser.h.