Pottu
Namespaces | Classes | Typedefs | Enumerations | Functions
pottu Namespace Reference

Namespaces

 jyfl_nucspec_std_detectors_2023_03
 Constants for JYFL NUCSPEC standard setup.
 

Classes

class  BinnerFloat
 Binner with float values. More...
 
class  BinnerInteger
 Binner with integer values. More...
 
class  BinnerPow2
 Binner for histograms with integer values and bin counts of powers of two. More...
 
class  Calibrator
 Pipeline stage which applies second order calibration. More...
 
struct  ContextBase
 Default context for printing and collecting statistics. More...
 
class  ContextHandle
 Handle to context used by specific class. More...
 
struct  jyfl_nutaq_traits
 Information class for jyfl_nutaq daq. More...
 
class  DAQChannels
 A pipeline stage which sets the group and coord for the detector events. More...
 
struct  dataitem_type_t
 Dataitem used to read the itemtype_e. More...
 
struct  dataitem_data_t
 Dataitem used to read the dataitem of type itemtype_e::DATA. More...
 
struct  dataitem_info_t
 Dataitem used to read the dataitem of type itemtype_e::INFO. More...
 
struct  dataitem_tracehead_t
 Dataitem used to read the dataitem of type itemtype_e::TRACEHEAD. More...
 
struct  dataitem_tracedata_t
 Dataitem used to read the dataitem of type itemtype_e::tracedata. More...
 
union  dataitem_t
 Raw dataitem in tdr binary data. More...
 
struct  dataitem_ts_t
 Raw dataitem with full timestamp. More...
 
class  DataSource
 Abstract baseclass for all datasources. More...
 
class  DetectorEvent
 Event containing event information of one daq channel. More...
 
struct  SelectorGroup
 Detector event filter for detector group. More...
 
struct  SelectorGroupAndCoord
 Detector event filter for detector group and coordinate. More...
 
struct  SelectorChannel
 Detector event filter for DAQ channel. More...
 
struct  SelectorGroupEnergy
 Detector event filter for group index and energy. More...
 
struct  EventOpEnergy
 Detector event operation which extracts energy. More...
 
struct  EventOpADC
 Detector event operation which extracts adc value. More...
 
class  DetectorEventGenerator
 Class to process raw timestamped dataitems to DetectorEvents. More...
 
struct  ebyedataheader_t
 Struct defining the block header in the tdr file. More...
 
class  FileReader
 Datasource which reads TDR data from a disk. More...
 
struct  Gate1D
 Simple 1D gate object for the continous range [low,high[. More...
 
struct  Gate2D
 Defines 2D polygon for 2D gating. More...
 
class  GZFile
 
class  Histogram1D
 Simple 1D histogram. More...
 
class  Histogram2D
 Simple 2D histogram. More...
 
class  LogicalEventCollector
 Class which creates the logical events from stream of detector events. More...
 
class  LogicalEventSorter
 Convenience base class for user sort classes. More...
 
class  LogicalEventSorterBase
 Convenience base class for user sort classes. More...
 
class  SharedResource
 Class which implements reference counter for a shared resource. More...
 
class  SharedResourceHandle
 Handle for a resource derived from SharedResource. More...
 
class  ObjectTree
 Class holding tree of histograms and subtrees. More...
 
struct  export_context_t
 
class  OTObject
 Pure virtual base class for ObjectTree objects. More...
 
class  OTOH1D_double_64
 OTObject wrapper for Histogram1D. More...
 
class  OTOH1D_double_double
 OTObject wrapper for Histogram1D. More...
 
class  OTOH1D_pow2_64
 OTObject wrapper for power of two histogram 1D. More...
 
class  OTOH2D_double_64
 OTObject wrapper for Histogram2D. More...
 
class  OTOH2D_double_double
 OTObject wrapper for Histogram2D. More...
 
class  Pipeline
 Pipeline capsules the pottu-stage pipeline loop and allows running it multithreaded. More...
 
class  RateHistogrammer
 Rate histogramming stage. More...
 
class  RawHistogrammer
 
struct  histogram_param_binning_t
 Helper struct to contain information about histogram binning. More...
 
struct  PooledResourceDeleter
 
class  SharedResourcePool
 Pool for SharedResource derived objects. More...
 
class  StageBase
 Abstract baseclass for all pipeline stage objects. More...
 
class  StageDetectorEvent
 Abstract baseclass for all stages which uses or modifies detector events. More...
 
class  StageDetectorEventFinal
 Abstract baseclass for all stages which consumes (drains) the detector events. More...
 
class  StageDetectorEventToDetectorEvent
 Abstract baseclass for all stages which transforms detector events to detector events. More...
 
class  StageRaw
 Abstract baseclass for all raw data processing stages. More...
 
class  StageRawToStampedRaw
 Abstract baseclass for all raw data processing stages. More...
 
class  StageStampedRawToDetectorEvent
 Abstract baseclass for all stages which creates detector events. More...
 
class  Tagger
 Super simple 2D array for pixel detector event history. More...
 
class  TDRFile
 Readonly access to a tdr file with some helpers. More...
 
class  TimeAdjuster
 Adjusts individual channel timing and merges channels back in time order. More...
 
class  TimeHistogrammer
 
class  TimeStamper
 Class to assign full time stamps to raw events. More...
 

Typedefs

typedef ObjectTree_result_tree_type
 
typedef ObjectTree::pow2_h1_type _histogram_1d_pow2_type
 
typedef ObjectTree::default_h1_type _histogram_1d_type
 
typedef ObjectTree::default_h2_type _histogram_2d_type
 

Enumerations

enum  loggerlevel_e {
  LOGLEVEL_NONE = 0 , LOGLEVEL_DEBUG = 10 , LOGLEVEL_INFO = 20 , LOGLEVEL_WARNING = 30 ,
  LOGLEVEL_ERROR = 40 , LOGLEVEL_CRITICAL = 50
}
 
enum class  itemtype_e : uint32_t { tracedata = 0 , tracehead = 1 , info = 2 , data = 3 }
 Enum to describe all possible types of a raw dataitem. More...
 
enum class  infocode_e : uint32_t {
  undef = 0 , pileup = 1 , pausets = 2 , resumets = 3 ,
  sync100ts = 4 , undef2 = 5 , discrdata = 6 , extendedts = 7 ,
  st_mbs_info = 8 , adc_overrange = 9 , adc_underrange = 10 , adc_overflow = 11 ,
  adc_underflow = 12 , trigger_seq = 13 , data_link_stat = 14 , sharc_link_num = 15
}
 Enum to describe all possible types of infovalue. More...
 

Functions

const char * rectypeToString (uint64_t type)
 Function to get a static string corresponding to dataitemtypes. More...
 
static bool operator< (const std::unique_ptr< OTObject > &o1, const std::unique_ptr< OTObject > &o2)
 
static bool operator< (const std::string &name, const std::unique_ptr< OTObject > &oto)
 
static bool operator< (const std::unique_ptr< OTObject > &oto, const std::string &name)
 
static ObjectTreecreateSubTree (ObjectTree *tree, const char *name)
 
static ObjectTree::pow2_h1_typecreateHistogram1DPow2 (ObjectTree *tree, const char *name, uint32_t highbits, uint32_t binbits)
 
static ObjectTree::default_h1_typecreateHistogram1D (ObjectTree *tree, const char *name, double low, double high, uint32_t bincount)
 
static ObjectTree::default_h2_typecreateHistogram2D (ObjectTree *tree, const char *name, double xlow, double xhigh, uint32_t xbincount, double ylow, double yhigh, uint32_t ybincount)
 
static void fillInteger (ObjectTree::pow2_h1_type *h, int value)
 
static void fill (ObjectTree::default_h1_type *h, double value)
 
static void fillAmount (ObjectTree::default_h1_type *h, double value, int amount)
 
static void fill (ObjectTree::default_h2_type *h, double xvalue, double yvalue)
 
static void fillAmount (ObjectTree::default_h2_type *h, double xvalue, double yvalue, int amount)
 
static pottu::_histogram_1d_typecreateHistogram1D (pottu::_result_tree_type tree, const std::string &name, const histogram_param_binning_t &binning)
 Creates default 1D histogram by using given histogram binnings.
 
static pottu::_histogram_2d_typecreateHistogram2D (pottu::_result_tree_type tree, const std::string &name, const histogram_param_binning_t &xbinning, const histogram_param_binning_t &ybinning)
 Creates default 2D histogram by using given histogram binnings.
 
static void exportHistogramToAscii (const pottu::_histogram_1d_type *h, const std::string &prefix)
 
static void throwIfNotValidName (const std::string &name)
 Checks that the given string can be used as a filename. More...
 

Detailed Description

Top level namespace for everything in this library.

Enumeration Type Documentation

◆ infocode_e

enum pottu::infocode_e : uint32_t
strong

Enum to describe all possible types of infovalue.

See dataitem_info_t.

◆ itemtype_e

enum pottu::itemtype_e : uint32_t
strong

Enum to describe all possible types of a raw dataitem.

The tdr file contains four different type of records. These record types are listed in this enum.

Function Documentation

◆ rectypeToString()

const char* pottu::rectypeToString ( uint64_t  type)
inline

Function to get a static string corresponding to dataitemtypes.

Parameters
typeOne of the values in enum dataitemtype_e.
Returns
const char* to string "tracedata", "tracehead", "info", "data", "INVALID". The "INVALID" is returned if type > 3.

◆ throwIfNotValidName()

static void pottu::throwIfNotValidName ( const std::string &  name)
inlinestatic

Checks that the given string can be used as a filename.

Parameters
nameName to be tested

Name cannot contain directory separator ('/' or '\'). The name is valid if

  • name is not empty and
  • every character is either digit, ascii letter, underscore or hyphen.