dataclasses C++ API Reference¶
-
class AntennaKey¶
- #include <AntennaKey.h>
Public Functions
-
inline AntennaKey()¶
-
inline AntennaKey(int stn, int ant)¶
-
inline ~AntennaKey()¶
-
inline void SetStationID(int stn)¶
-
inline void SetAntennaID(int ant)¶
-
inline int GetStationID() const¶
-
inline int GetAntennaID() const¶
-
inline bool operator==(const AntennaKey &rhs) const¶
-
inline bool operator!=(const AntennaKey &rhs) const¶
-
inline void operator=(const AntennaKey &rhs)¶
Friends
- friend class icecube::serialization::access
-
inline AntennaKey()¶
-
struct bitmask¶
Public Functions
-
inline bitmask()¶
-
bitmask(unsigned length, bool set = true)¶
-
~bitmask()¶
-
void set_all()¶
-
void unset_all()¶
-
inline bool any() const¶
-
inline bool all() const¶
-
inline void set(const unsigned, bool)¶
-
inline bool get(const unsigned) const¶
-
unsigned sum() const¶
-
size_t size() const¶
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
-
template<>
void save(icecube::archive::xml_oarchive &ar, unsigned version) const¶
-
template<>
void load(icecube::archive::xml_iarchive &ar, unsigned version)¶
Friends
- friend class icecube::serialization::access
-
inline bitmask()¶
-
union ChargeStamp¶
Public Members
-
uint16_t stop¶
-
uint16_t hlc_bit¶
-
uint16_t charge¶
-
uint16_t rel_time¶
-
struct I3SuperDSTSerialization::ChargeStamp::[anonymous] stamp¶
-
uint16_t code¶
-
struct I3SuperDSTSerialization::ChargeStamp::[anonymous] overflow¶
-
uint16_t raw¶
-
uint16_t stop¶
-
template<typename T>
class CompactVector : public std::vector<T>¶ - #include <I3SuperDSTUtils.h>
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Friends
- friend class icecube::serialization::access
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
-
template<class StrictWeakOrdering>
class compare_nodes¶ Comparator class for two nodes of a tree (used for sorting and searching).
Public Functions
-
inline compare_nodes(StrictWeakOrdering comp)¶
-
inline bool operator()(const tree_node *a, const tree_node *b)¶
Private Members
-
StrictWeakOrdering comp_¶
-
inline compare_nodes(StrictWeakOrdering comp)¶
-
class DeltaCompressor¶
- #include <DeltaCompressor.h>
Compressor to perform Delta-Compression on series of int values.
Delta-Compression is used in IceCube to compress the digitized waveforms from the ATWDs and FADCs. These waveforms are contain 11 bit unsigned integers and the original algorithm compresses the deltas of single bins of the waveform with a maximal difference of 11 bits. In this implementtion the algorithm has been extended to allow to compress deltas of uo to 31-bits. For performance reasons, no sanity check is performed on the input values. If the compressor enconters uncompressable values or the compressed data can’t be decompressed an exception is thrown!
The DeltaCompressor can be used as follows:
#include <iostream> #include <algorithm> #include <iterator> #include "dataclasses/physics/DeltaCompressor.h" ... { I3DeltaCompression::DeltaCompressor compressor; compressor.compress( values ); vector<unsigned int> compressed = compressor.getCompressed(); std::cout << "The compressed waveform is:" << std::endl; std::copy( compressed.begin(), compressed.end(), std::ostrem_iterator<unsigned int>( std::cot, " " ) ); compressor.reset(); // only necessary if you want to decompress // a different waveform vector<int> decompressed; compressor.setCompressed( compressed ); compressor.decompress( decompressed ); std::cout << "The decompressed waveform is:" << std::endl; std::copy( decompressed.begin(), decompressed.end(), std::ostrem_iterator<int>( std::cot, " " ) ); }
The asymmetry between the compress and decompress method is by design to reduce the amount of copying od STL vectors. The implementation of the compressor expects the compressed values to be represented in the machines byteorder and will delivere a compressed stream of unsigned integers in the machines byteorder. If the compressed values must be portable between machines, the external program using this class, must take care of the correct byteorder.
Public Types
Public Functions
-
DeltaCompressor()¶
Default constructor. Initializes the bitwidth with Lv2.
-
void compress(const std::vector<int> &values)¶
Compresses the waveform passed in the vector of values. The compressed waveform is stored internally and can be retrieved using the the getCompressed() method. The internal state of the compressor is not reset by this call. This allows to compress several waveforms to the same internal compressed bitstream, by calling compress several times. The rationale behind this design is to allow for an emulation of the DOMs which combine all waveforms to on compressed stream.
- Parameters:
values – The vector with the waveform to be compressed.
- Throws:
A – std::domain_error is thrown in case of internal compression error.
-
void decompress(std::vector<int> &values)¶
Decompresses the internal compressed waveform and append the restored values to the vector passed by reference. If this vector already contains elements, the decompressed waveform will be appended. The decompressed wafeform will most likely have more values then the original waveform with the additional bins all having the same value as the last bin of the original waveform (deltas of 0). It is the responsibility of the caller to truncate this vector to the correct size.
- Parameters:
values – A reference to a vector to which the decompressed waveform will be appended.
- Throws:
A – std::domain_error is thrown in case of internal conpression error.
-
inline void reset()¶
Reset the internal state of the compressor by deleting the stored compressed waveform and resetting the variable bitwidth to the default value. q
Private Functions
-
int getNextBtw(int btw) const¶
Utility function to get the next higher bitwidth.
- Parameters:
btw – current bitwidth
- Throws:
a – std::domain_error is thrown when the function is called with the highest btw or an invalid btw.
- Returns:
next higher bitwidth
-
int getPrevBtw(int btw) const¶
Utility function to get the next lower bitwidth.
- Parameters:
btw – current bitwidth
- Throws:
a – std::domain_error is thrown when the function is called with the lowest btw or an invalid btw.
- Returns:
next lower bitwidth
-
void compressDelta(int delta)¶
Write the compressed bits corresponding to a passed delta value.
- Parameters:
delta – difference to previous bin to be written in compressed form.
-
void outputBits(int word, int len)¶
Output len bits of the word to the compressed bitstream.
- Parameters:
word – Bits to write.
len – length of significant bits which should be written.
-
DeltaCompressor()¶
-
struct DOMHeader¶
-
class DroopedSPETemplate¶
- #include <I3DOMCalibration.h>
Public Functions
-
inline DroopedSPETemplate(const SPETemplate &templ)¶
-
inline DroopedSPETemplate(const SPETemplate &templ, const SPETemplate &droopTempl, double tauFrac, double time1, double time2)¶
-
inline double operator()(double t)¶
-
bool operator==(const DroopedSPETemplate &templ) const¶
-
bool operator!=(const DroopedSPETemplate &templ) const¶
-
bool operator<(const DroopedSPETemplate &templ) const¶
Public Members
-
SPETemplate pulse¶
-
struct I3DOMCalibration::DroopedSPETemplate::droopParams droop¶
-
bool droopy¶
-
inline DroopedSPETemplate(const SPETemplate &templ)¶
-
struct droopParams¶
- #include <I3DOMCalibration.h>
Public Functions
-
inline droopParams()¶
-
inline droopParams(const SPETemplate &templ, double tauFrac, double time1, double time2)¶
-
inline droopParams()¶
-
template<typename Value>
class fast_iter : public TreeBase::Tree<T, Key, Hash>::iterator_base<fast_iter<Value>, Value, iterator_const_traits<Value>::TreeHashMapIter>¶ - #include <I3MCTree.h>
Fast iterator: O(n) Note that there is no ordering, but this gives the fastest results
Public Functions
-
inline explicit fast_iter()¶
-
inline fast_iter(const iterator_base<fast_iter<Value>, Value, TreeHashMapIter> &iter)¶
-
template<typename D, typename S>
inline fast_iter(const iterator_base<D, Value, S> &iter)¶
Protected Types
-
typedef iterator_const_traits<Value> const_traits¶
-
typedef const_traits::TreeValue TreeValue¶
-
typedef const_traits::TreeHashMapIter TreeHashMapIter¶
-
typedef iterator_storage_impl<TreeHashMapIter, Value, TreeValue, TreeHashMapIter> storage_traits¶
Friends
- friend class Tree< T, Key, Hash >
- friend class iterator_base< fast_iter< Value >, Value, TreeHashMapIter >
-
inline explicit fast_iter()¶
-
template<typename T, typename F>
class FFTDataContainer : public I3FrameObject¶ - #include <FFTDataContainer.h>
Public Functions
-
inline FFTDataContainer()¶
-
inline FFTDataContainer(const FFTDataContainer<T, F> &data)¶
-
inline FFTDataContainer(const I3AntennaWaveform<T> &timeSeries)¶
-
inline FFTDataContainer(const I3AntennaWaveform<F> &spectrum)¶
-
inline virtual ~FFTDataContainer()¶
-
inline unsigned int GetNyquistZone() const¶
-
inline void SetNyquistZone(unsigned int zone)¶
-
inline double GetFrequencyOfBin(typename I3AntennaWaveform<F>::SizeType bin) const¶
-
inline int GetBinOfFrequency(double frequency) const¶
-
inline const I3AntennaWaveform<T> &GetConstTimeSeries() const¶
read out the time series (read access)
-
inline I3AntennaWaveform<T> &GetTimeSeries()¶
read out the time series (write access)
-
inline I3AntennaWaveform<T> GetTimeSeriesPython()¶
-
inline const I3AntennaWaveform<F> &GetConstFrequencySpectrum() const¶
read out the frequency spectrum (read access)
-
inline I3AntennaWaveform<F> &GetFrequencySpectrum()¶
read out the frequency spectrum (write access)
-
inline const I3AntennaWaveform<F> GetFrequencySpectrumPython() const¶
-
inline void LoadTimeSeries(const I3AntennaWaveform<T> &trace)¶
-
inline void LoadFrequencySpectrum(const I3AntennaWaveform<F> &spec)¶
-
inline void PurgeData()¶
Private Functions
-
void UpdateTimeSeries()¶
-
void UpdateFrequencySpectrum()¶
-
template<class Archive>
void serialize(Archive &ar, unsigned int version)
-
template<>
void UpdateTimeSeries()¶
-
template<>
void UpdateFrequencySpectrum()¶
Private Members
-
unsigned int nyquistZone_¶
-
I3AntennaWaveform<T> timeSeries_¶
-
I3AntennaWaveform<F> frequencySpectrum_¶
-
inline FFTDataContainer()¶
-
class FFTWPlan¶
- #include <FFTWPlan.h>
Public Functions
-
inline FFTWPlan()¶
-
FFTWPlan(unsigned int inN, fft::FFTType type, int sign = FFTW_FORWARD, unsigned int flag = FFTW_MEASURE)¶
-
inline ~FFTWPlan()¶
-
void CopyIntoPlan(double *arr, unsigned int n)¶
-
void CopyIntoPlanC(double arr[][2], unsigned int n)¶
-
void CopyOutOfPlan(double *arr, bool norm = false)¶
-
void CopyOutOfPlanC(double arr[][2], bool norm = false)¶
-
void ExecutePlan()¶
-
void PrintPlan() const¶
-
inline FFTWPlan()¶
-
class fixed_depth_iterator : public tree<T, tree_node_allocator>::iterator_base¶
- #include <tree.hh>
Iterator which traverses only the nodes at a given depth from the root.
Public Functions
-
fixed_depth_iterator()¶
-
fixed_depth_iterator(tree_node*)¶
-
fixed_depth_iterator(const iterator_base&)¶
-
fixed_depth_iterator(const sibling_iterator&)¶
-
fixed_depth_iterator(const fixed_depth_iterator&)¶
-
bool operator==(const fixed_depth_iterator&) const¶
-
bool operator!=(const fixed_depth_iterator&) const¶
-
fixed_depth_iterator &operator++()¶
-
fixed_depth_iterator &operator--()¶
-
fixed_depth_iterator operator++(int)¶
-
fixed_depth_iterator operator--(int)¶
-
fixed_depth_iterator &operator+=(unsigned int)¶
-
fixed_depth_iterator &operator-=(unsigned int)¶
Public Members
-
tree_node *first_parent_¶
-
fixed_depth_iterator()¶
-
struct hash¶
- #include <ModuleKey.h>
-
class I3AMANDAAnalogReadout¶
- #include <I3AMANDAAnalogReadout.h>
Public Functions
-
inline I3AMANDAAnalogReadout()¶
-
~I3AMANDAAnalogReadout()¶
-
double GetFirstLE() const¶
Returns the earliest leading edge recorded by the DAQ
-
const std::vector<double> &GetTOTs() const¶
Returns the time differences between leading and trailing edges. If some edges are missing, the series may be shorter than expected.
-
inline double GetADC() const¶
Alternate name for the amplitude
-
inline void SetADC(double adc)¶
-
inline double GetAmplitude() const¶
Returns the single amplitude recorded for the event
-
inline void SetAmplitude(double amp)¶
-
inline bool GetOverflow() const¶
Indicates whether edge pairs were lost due to buffer overflow. If true, the earliest edges are missing (FIFO buffer). The buffer is 16 edges (8 pairs) deep.
-
inline void SetOverflow(bool overflow)¶
-
inline bool IsCalibrated() const¶
Indicates whether this object stores calibrated or uncalibrated data.
-
inline void SetCalibrated(bool is_calib)¶
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Private Members
-
mutable double firstLE_¶
-
double adc_¶
-
mutable bool processFirstLE_¶
-
mutable bool processTOTs_¶
-
bool overflow_¶
-
bool is_calib_¶
Friends
- friend class icecube::serialization::access
-
inline I3AMANDAAnalogReadout()¶
-
struct I3AMANDAOM_XTalk¶
- #include <Deprecated.hpp>
-
struct I3AMANDAOMCalibration¶
- #include <Deprecated.hpp>
Public Members
-
double adc_a0¶
-
double adc_beta¶
-
double tdc_alpha¶
-
double tdc_beta¶
-
double tdc_t0¶
-
int tdc_pol¶
-
double tot_beta¶
-
double tot_tot0¶
-
int tot_pol¶
-
double omo_a¶
-
double omo_b¶
-
double omo_c¶
-
double omo_d¶
-
double omo_e¶
-
double omo_lowlim¶
-
double omo_highlim¶
-
double pe_area¶
-
std::vector<I3AMANDAOM_XTalk> xtalk_receivers¶
-
double adc_a0¶
-
class I3AntennaChannel : public I3FrameObject¶
- #include <I3AntennaChannel.h>
Public Functions
-
I3AntennaChannel()¶
-
I3AntennaChannel(const I3AntennaChannel &antData)¶
-
inline ~I3AntennaChannel()¶
-
double GetMaxAmplitude() const¶
-
double GetTimeAtMaximum() const¶
Private Functions
-
void UpdateValues() const¶
Friends
- friend class icecube::serialization::access
-
I3AntennaChannel()¶
-
class I3AntennaGeo¶
- #include <I3AntennaGeo.h>
Public Types
Public Functions
-
inline I3AntennaGeo()¶
-
~I3AntennaGeo()¶
-
inline void SetPosition(I3Position &pos)¶
-
inline I3Position GetPosition() const¶
-
inline void SetOrientation(I3Orientation &orient)¶
-
inline I3Orientation GetOrientation() const¶
-
inline void SetAntennaType(AntennaType type)¶
-
inline AntennaType GetAntennaType() const¶
-
inline void SetHeightAboveSnow(double height)¶
-
inline double GetHeightAboveSnow() const¶
-
inline void SetCableLength(double length)¶
-
inline double GetCableLength() const¶
-
inline bool operator==(const I3AntennaGeo &rhs) const¶
-
inline bool operator!=(const I3AntennaGeo &rhs) const¶
Private Members
-
I3Position position_¶
-
I3Orientation orientation_¶
-
AntennaType antennaType_¶
-
double heightAboveSnow_¶
-
double cableLength_¶
Friends
- friend class icecube::serialization::access
-
inline I3AntennaGeo()¶
-
template<typename T>
class I3AntennaWaveform : public I3FrameObject¶ - #include <I3AntennaWaveform.h>
Public Types
Public Functions
-
inline I3AntennaWaveform()¶
-
inline ~I3AntennaWaveform()¶
-
inline ConstIterator Begin() const¶
-
inline ConstIterator End() const¶
-
inline double GetBinning() const¶
-
inline void SetBinning(const double binning)¶
-
inline double GetOffset() const¶
-
inline void SetOffset(double offset)¶
-
inline void PopBack()¶
-
inline void Swap(I3AntennaWaveform<T> &t)¶
-
inline I3AntennaWaveform<T> GetSubset(unsigned int minBin, unsigned int maxBin) const¶
-
inline void Clear()¶
-
inline bool IsSameTypeAs(const I3AntennaWaveform<T> &t) const¶
-
inline bool operator==(const I3AntennaWaveform<T> &t) const¶
-
inline bool operator!=(const I3AntennaWaveform<T> &trace) const¶
-
I3AntennaWaveform<T> operator+(const I3AntennaWaveform<T> &trace) const¶
-
I3AntennaWaveform<T> operator-(const I3AntennaWaveform<T> &trace) const¶
-
I3AntennaWaveform<T> &operator+=(const I3AntennaWaveform<T> &trace)¶
-
I3AntennaWaveform<T> &operator-=(const I3AntennaWaveform<T> &trace)¶
-
I3AntennaWaveform<T> &operator+=(const T value)¶
-
I3AntennaWaveform<T> &operator-=(const T value)¶
-
I3AntennaWaveform<T> &operator*=(const double value)¶
-
I3AntennaWaveform<T> &operator/=(const double value)¶
-
I3AntennaWaveform<T> operator*(const double value) const¶
-
I3AntennaWaveform<T> operator/(const double value) const¶
-
inline I3AntennaWaveform(const I3AntennaWaveform<T> &wvf)¶
-
inline void Roll(int i)¶
Private Functions
-
template<class Archive>
void serialize(Archive &ar, unsigned int version)
Friends
- friend class icecube::serialization::access
-
inline friend std::ostream &operator<<(std::ostream &os, const I3AntennaWaveform<T> &rhs)¶
-
inline I3AntennaWaveform()¶
-
class I3Calibration : public I3FrameObject¶
- #include <I3Calibration.h>
Public Functions
-
I3Calibration()¶
-
~I3Calibration()¶
-
inline bool operator==(const I3Calibration &rhs)¶
-
inline bool operator!=(const I3Calibration &rhs)¶
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Friends
- friend class icecube::serialization::access
-
I3Calibration()¶
-
class I3ComplexVector : public I3FrameObject¶
- #include <I3ComplexVector.h>
Public Functions
-
inline I3ComplexVector()¶
Default constructor
-
inline I3ComplexVector(std::complex<double> x, std::complex<double> y, std::complex<double> z)¶
Constructor from cartesian coordinates
-
inline I3ComplexVector(const I3ComplexVector &p)¶
Copy constructor
-
explicit I3ComplexVector(const I3Direction &dir)¶
-
explicit I3ComplexVector(const I3Position &pos)¶
-
I3ComplexVector RotateX(double angle)¶
Rotate position around X axis by angle
-
I3ComplexVector RotateY(double angle)¶
Rotate position around Y axis by angle
-
I3ComplexVector RotateZ(double angle)¶
Rotate position around Z axis by angle
-
inline double Magnitude() const¶
Computes the distance from this position to the origin of the coordinate system (it’s magnitude as a vector)
-
I3ComplexVector GetUnitVector() const¶
-
void Normalize()¶
-
inline I3ComplexVector operator-() const¶
Vector inversion (makes the vector point in the opposite direction)
-
inline I3ComplexVector &operator+=(const I3ComplexVector &rhs)¶
Vector addition
-
inline I3ComplexVector &operator-=(const I3ComplexVector &rhs)¶
Vector subtraction
-
inline I3ComplexVector operator+(const I3ComplexVector &rhs) const¶
Vector addition
-
inline I3ComplexVector operator-(const I3ComplexVector &rhs) const¶
Vector subtraction
-
inline std::complex<double> operator*(const I3ComplexVector &rhs) const¶
Scalar (dot) product
-
inline std::complex<double> Dot(const I3ComplexVector &rhs) const¶
-
inline I3ComplexVector &operator*=(std::complex<double> a)¶
Multiplication by a single value
-
inline I3ComplexVector &operator/=(std::complex<double> a)¶
Division by a single value
-
inline I3ComplexVector operator*(std::complex<double> a) const¶
Multiplication by a single value
-
inline I3ComplexVector operator/(std::complex<double> a) const¶
Division by a single value
-
inline I3ComplexVector &operator*=(double a)¶
Multiplication by a single value
-
inline I3ComplexVector &operator/=(double a)¶
Division by a single value
-
inline I3ComplexVector operator*(double a) const¶
Multiplication by a single value
-
inline I3ComplexVector operator/(double a) const¶
Division by a single value
-
inline bool operator==(const I3ComplexVector &rhs) const¶
-
inline bool operator!=(const I3ComplexVector &rhs) const¶
Protected Attributes
Private Functions
-
template<class Archive>
void serialize(Archive &ar, unsigned int version)
Friends
- friend class icecube::serialization::access
-
inline friend std::ostream &operator<<(std::ostream &os, const I3ComplexVector &rhs)¶
-
inline I3ComplexVector()¶
-
class I3DetectorStatus : public I3FrameObject¶
- #include <I3DetectorStatus.h>
Public Functions
-
inline I3DetectorStatus()¶
-
~I3DetectorStatus()¶
-
inline bool operator==(const I3DetectorStatus &rhs)¶
-
inline bool operator!=(const I3DetectorStatus &rhs)¶
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Friends
- friend class icecube::serialization::access
-
inline I3DetectorStatus()¶
-
class I3Direction : public I3FrameObject¶
- #include <I3Direction.h>
The basic direction class for IceCube.
All directions in IceCube should be written with this class. Directions can be given in zenith/azimuth or direction cosines. Optionally, they can also be set with theta/phi.
Theta/Phi angles refer to the direction of travel of the particle — the direction that the particle is going. If you consider the direction vector which starts at the origin, theta is the angle from the +z axis to that vector; phi is the angle from the +x axis to the x-y projection of that vector.
The direction cosines (x,y,z) refer to this same direction vector — the vector of the direction of travel of the particle; they simply describe the end point of that vector. When you set a direction with the direction cosines, they don’t have to be normalized, but when you get them out (with GetX(), GetY(), GetZ()) they will be normalized to 1.
Zenith/Azimuth angles refer to the direction which is opposite to the particle’s direction; i.e. they refer to the direction the particle (track) came from. If you consider this “opposite” direction vector, zenith is the angle from the +z axis to that vector; azimuth is the angle from the +x axis to the x-y projection of that vector.
See the graphic of the definitions of Zenith/Azimuth and theta/Phi direction angles: https://wiki.icecube.wisc.edu/index.php/I3Direction
- Todo:
implement “print out” of all information in a uniform way…
ensure that the temporary data isn’t written to disk.
Public Functions
-
inline I3Direction()¶
-
inline I3Direction(double zen, double azi)¶
Additional constructor: 2 arguments mean construct dir. with zen,azi
-
inline I3Direction(double x, double y, double z)¶
Additional constructor: 3 arguments mean construct dir. with x,y,z
-
explicit I3Direction(const I3Position&)¶
-
void SetThetaPhi(double theta, double phi)¶
Store direction with theta, phi
-
inline double GetZenith() const¶
Provide Zenith of direction
-
inline double GetAzimuth() const¶
Provide Azimuth of direction
-
inline double GetX() const¶
Provide X of direction in cartesian ref frame
-
inline double GetY() const¶
Provide Y of direction in cartesian ref frame
-
inline double GetZ() const¶
Provide Z of direction in cartesian ref frame
-
inline double CalcTheta() const¶
Calculate Theta of direction
-
inline double CalcPhi() const¶
Calculate Phi of direction
-
void RotateX(double angle)¶
Rotate direction around X axis by angle
-
void RotateY(double angle)¶
Rotate direction around Y axis by angle
-
void RotateZ(double angle)¶
Rotate direction around Z axis by angle
-
inline I3Direction operator-() const¶
Vector inversion (makes the vector point in the opposite direction)
-
inline I3Direction Cross(const I3Direction &d) const¶
Cross product of this x d
-
I3Position Cross(const I3Position&) const¶
Vector (cross) product
-
inline double operator*(const I3Direction &other) const¶
Scalar (dot) product
-
double operator*(const I3Position &other) const¶
Scalar (dot) product
-
I3Position operator*(double) const¶
Multiplication by a scalar
-
I3Position operator/(double) const¶
Division by a scalar
-
inline bool operator==(const I3Direction &rhs) const¶
-
inline bool operator!=(const I3Direction &rhs) const¶
-
inline double Angle(const I3Direction &rhs) const¶
returns the angle between in two I3Directions
- Returns:
the angle in rad (I3native units)
Protected Attributes
-
double zenith_¶
direction coordinates — spherical
-
double azimuth_¶
-
mutable double xDir_¶
direction coordinates — cartesian (direction cosines)
-
mutable double yDir_¶
-
mutable double zDir_¶
-
mutable bool isCalculated_¶
Did we calculate the directions before?
Private Functions
-
void CalcCarFromSph() const¶
Change zenith,azimuth coordinates into x,y,z directional coordinates. The three numbers x,y,z are calculated to add up (in quadrature) to 1. theta=pi-zenith and phi=azimuth-pi in these IceCube coordinates.
-
void CalcSphFromCar()¶
Change x,y,z directional coordinates to zenith,azimuth coordinates. zenith=pi-theta and azimuth=phi+pi in these IceCube coordinates. The three numbers DO NOT have to add up (in quadrature) to 1. Even if they don’t, the direction that they define is stored. SO BE CAREFUL IF YOU SPECIFY THE DIRECTION IN THIS WAY!
Friends
- friend class icecube::serialization::access
-
class I3DOMCalibration¶
- #include <I3DOMCalibration.h>
Class that stores the calibration information for a DOM.
This class stores the information from the Calibration stream.
ATTENTION: Calibration information is set assuming the bin number as it is in the calibration database (reversed in time for bins 0-127). Calibration information is fetched by the time-ordered bin numbers.
Nothing here really has units. Most are fits/offsets that convert values for later storage (at that SHOULD use I3Units)
- Author
Tom McCauley tpmccauley@lbl.gov
- Author
Erik Blaufuss <blaufuss at icecube umd edu>
Public Functions
-
I3DOMCalibration()¶
-
~I3DOMCalibration()¶
-
inline double GetTemperature() const¶
Get MB Temperature at time of calibration
-
void SetTemperature(double temperature)¶
Set MB Temperature at time of calibration
-
inline LinearFit GetHVGainFit() const¶
Get DOMCAL measured PMT gain/HV relation: log(10)Gain = slope*log(10)V + intercept
-
inline double GetFADCGain() const¶
Get FADC Gain- relation between measured counts and mV.
-
inline double GetFADCBeaconBaseline() const¶
Get the FADC baseline in data-taking mode, as measured from beacon launches.
Note: The beacon baseline depends implicitly on the front-end bias voltage. If the bias voltage is ever changed, new baselines will have to be collected.
-
inline LinearFit GetFADCBaselineFit() const¶
Get FADC Pedestal- baseline point from which waveforms start.
-
inline double GetFADCDeltaT() const¶
Get the FADC intrinsic time offset (in units of time)
-
inline double GetFrontEndImpedance() const¶
Get the Front End impedance (units are resistance)
-
inline void SetFADCGain(double gain)¶
Set FADC calibration parameters. Currently the FADC calibration is a work in progress and a moving target so this is only a tentative interface -tpm
-
inline void SetFADCBeaconBaseline(double bsl)¶
-
inline void SetFADCDeltaT(double deltaT)¶
-
inline void SetFrontEndImpedance(double feImped)¶
-
double GetATWDGain(unsigned int channel) const¶
Get gain and error on gain for ATWD by channel
-
void SetATWDGain(unsigned int channel, double gain)¶
Set gain and error on gain for ATWD (specified by channel).
-
double GetATWDDeltaT(unsigned int chip) const¶
Get atwd DeltaT by chip
-
void SetATWDDeltaT(unsigned int chip, double deltat)¶
Set atwd DeltaT by chip
-
QuadraticFit GetATWDFreqFit(unsigned int chip) const¶
Get fit parameters from domcal file <atwdfreq> which is the sampling rate calibration for each ATWD chip 0 or 1
-
void SetATWDFreqFit(unsigned int chip, QuadraticFit fitParams)¶
Set parameters for sampling rate calibration for each ATWD chip as a function of the trigger_bias DAC setting
-
double GetATWDBinCalibSlope(unsigned int id, unsigned int channel, unsigned int bin) const¶
Get the fit parameter for the bin calibration. This is really the conversion factor from counts to volts.
-
void SetATWDBinCalibSlope(unsigned int id, unsigned int channel, unsigned int bin, double slope)¶
Sets the parameter for conversion of count to voltage for each ATWD, each ATWD channel, and each ATWD bin.
-
double GetATWDBeaconBaseline(unsigned int id, unsigned int channel) const¶
Get the average ATWD baseline in data-taking mode, as measured from beacon launches.
Note: The beacon baseline depends implicitly on the front-end bias voltage. If the bias voltage is ever changed, new baselines will have to be collected.
-
void SetATWDBeaconBaseline(unsigned int id, unsigned int channel, double bsl)¶
-
inline double GetRelativeDomEff() const¶
Get/set for relativeDomEff
-
inline void SetRelativeDomEff(double relaeff)¶
-
inline double GetDomNoiseRate() const¶
Get/set for DOM noise rate
-
inline void SetDomNoiseRate(double noiserate)¶
-
inline double GetDomNoiseThermalRate() const¶
Noise: Thermal DOM noise rate, in Hz,
-
inline void SetDomNoiseThermalRate(double thermalrate)¶
-
inline double GetDomNoiseDecayRate() const¶
Noise: Correlated decay rate for DOM in Hz,
-
inline void SetDomNoiseDecayRate(double decayrate)¶
-
inline double GetDomNoiseScintillationMean() const¶
Noise: mean of the lognormal describing scintillation in Log10(dt/ns) for DOM
-
inline void SetDomNoiseScintillationMean(double scintillationmean)¶
-
inline double GetDomNoiseScintillationSigma() const¶
Noise: sigma of the lognormal describing scintillation in Log10(dt/ns) for DOM
-
inline void SetDomNoiseScintillationSigma(double scintillationsigma)¶
-
inline double GetDomNoiseScintillationHits() const¶
Noise: mean number of hits from the scintillation lognormal component for DOM
-
inline void SetDomNoiseScintillationHits(double scintillationhits)¶
-
DroopedSPETemplate DiscriminatorPulseTemplate(bool droopy = false) const¶
-
DroopedSPETemplate ATWDPulseTemplate(unsigned int channel = 0, bool droopy = false) const¶
-
DroopedSPETemplate FADCPulseTemplate(bool droopy = false) const¶
-
inline ToroidType GetToroidType() const¶
-
inline double GetMeanATWDCharge() const¶
ATWD and FADC-specific corrections to the SPE charge distribution
-
inline double GetMeanFADCCharge() const¶
-
inline bool IsMeanATWDChargeValid() const¶
In dataclasses we use NaN to denote “invalid” however in the JSON file invalid entries are set to 0. To cover both cases we check that it’s finite and greater than 0.
-
inline bool IsMeanFADCChargeValid() const¶
-
inline void SetMeanATWDCharge(double charge)¶
-
inline void SetMeanFADCCharge(double charge)¶
-
inline const SPEChargeDistribution &GetCombinedSPEChargeDistribution() const¶
-
inline void SetCombinedSPEChargeDistribution(const SPEChargeDistribution &fit)¶
-
inline bool operator==(const I3DOMCalibration &rhs) const¶
-
inline bool operator!=(const I3DOMCalibration &rhs) const¶
Private Functions
-
double SPEPulseTemplate(double t, const SPETemplate &templ, const SPETemplate &droop, bool droopy) const¶
Private Members
-
double droopTimeConstants_[2]¶
-
double temperature_¶
-
double fadcGain_¶
Gain and pedestal values for FADC
-
double fadcBeaconBaseline_¶
Pedestal in data-taking mode, as measured from beacon launches. Note : The beacon baseline depends implicitly on the front-end bias voltage. If the bias voltage is ever changed, new baselines will have to be collected.
-
double fadcDeltaT_¶
FADC inherent time offset (ns)
-
double frontEndImpedance_¶
Front-end impedance (Ohms)
-
double ampGains_[3]¶
Gain for ATWD channels. The key corresponds to the channel (0,1,2)
-
QuadraticFit atwdFreq_[2]¶
Linear fit for each ATWD sampling frequency, one for each chip (0,1) As of DOMCAL 5.14, this will be a quadratic fit. So, use a Quadratic fit and assume a linear fit if quadFitC==NULL.
-
double atwdBins_[2][N_ATWD_CHANNELS][N_ATWD_BINS]¶
Slope of the linear fit for the bin calibration i.e. the values needed to convert from counts to voltage for each bin in the ATWD.
-
std::string domcalVersion_¶
Version of DOMCal used. For now, this only affects the FE load impedance. It might be useful for FADC calibration as well. Use a std::string since we may have version numbers like 6.1.2, e.g.
-
double atwdBeaconBaselines_[2][N_ATWD_CHANNELS]¶
Dumb-ol-array to hold the average baseline corrections measured from beacon launches. [atwd chip id (0-1)] [ gain channel(0-2) ]
Note : The beacon baseline depends implicitly on the front-end bias voltage. If the bias voltage is ever changed, new baselines will have to be collected.
-
double atwdDeltaT_[2]¶
Store the ATWD time offset from domcal calibration. the ATWD used in transit time calibration will be 0.0, while the other could have up to a few ns offset…
-
LinearFit speDiscrimCalib_¶
The SPE discriminator calibration. A linear fit between DAC(9) value and charge level in pC.
-
LinearFit mpeDiscrimCalib_¶
The MPE discriminator calibration. A linear fit between DAC(8) value and charge level in pC.
-
LinearFit pmtDiscrimCalib_¶
A refined SPE discriminator calibration generated using actual PMT pulses. A linear fit between DAC(8) value and charge level in pC.
-
double relativeDomEff_¶
Relative DOM efficiency, normalized to 1.0 for the average dom.
-
double noiseRate_¶
Measure DOM noise rate, in Hz, Deprecated: used in old noise-generator
-
double noiseThermalRate_¶
Thermal DOM noise rate, in Hz,
-
double noiseDecayRate_¶
Correlated noise decay rate for DOM in Hz,
-
double noiseScintillationMean_¶
Noise: mean of the lognormal describing scintillation in Log10(dt/ns) for DOM
-
double noiseScintillationSigma_¶
Noise: sigma of the lognormal describing scintillation in Log10(dt/ns) for DOM
-
double noiseScintillationHits_¶
Noise: mean number of hits from the scintillation lognormal component for DOM
-
SPEChargeDistribution combinedSPEFit_¶
Combined-fit SPE distribution function (exponential1 + exponential2 + Gaussian)
-
double meanATWDCharge_¶
ATWD and FADC-specific corrections to the SPE charge distribution
-
double meanFADCCharge_¶
Private Static Attributes
-
static const unsigned int N_ATWD_BINS = 128¶
-
static const unsigned int N_ATWD_CHANNELS = 3¶
Friends
- friend class I3DOMCalibrationDiff
-
class I3DOMLaunch¶
- #include <I3DOMLaunch.h>
Public Types
-
enum TriggerType¶
Values:
-
enumerator TEST_PATTERN¶
-
enumerator CPU_REQUESTED¶
-
enumerator SPE_DISCRIMINATOR_TRIGGER¶
-
enumerator FLASHER_BOARD_TRIGGER¶
-
enumerator MPE_DISCRIMINATOR_TRIGGER¶
-
enumerator ONBOARD_LED¶
-
enumerator TEST_PATTERN¶
-
enum TriggerMode¶
Values:
-
enumerator UNDEFINED¶
-
enumerator REQUIRE_BOTH¶
Set if signals from both upper and lower DOMs are required to satisfy local coincidence
-
enumerator FR_RUN¶
Set if flasher board run is in the progress
-
enumerator LC_LOWER¶
Set if local coincidence requirement is met, and LC has been configured to be received by the lower DOM
-
enumerator LC_UPPER¶
Set if local coincidence requirement is met, and LC has been configured to be received by the upper DOM
-
enumerator UNKNOWN_MODE¶
in case of an invalid trigger setting, the UNKNOWN_MODE is set and the test pattern trigger is used
-
enumerator SLC_READOUT¶
Set if the DOM triggered with SLC condition met
-
enumerator MIN_BIAS¶
Set if a launch is triggered by a min bias hit (q.v. IceTop calibration/monitoring)
-
enumerator LAST_TRIGGER_SITUATION¶
limit this enum on a 16 bit value range
-
enumerator UNDEFINED¶
Public Functions
-
I3DOMLaunch()¶
Default constructor.
-
~I3DOMLaunch()¶
Destructor.
-
inline double GetStartTime() const¶
Return ATWD/FADC launch time.
-
inline void SetStartTime(double starttime)¶
Set ATWD/FADC launch time.
-
inline TriggerType GetTriggerType() const¶
Return the trigger type/why this launch was recorded (SPE_DISCRIMINATOR_TRIGGER is the standard ‘physics data’).
-
inline void SetTriggerType(TriggerType trigger)¶
Specify the trigger type/why this launch was recorded.
-
inline TriggerMode GetTriggerMode() const¶
Signals the special trigger circumstances.
Note: In testdomapp, the current FPGA implementation in the DOM, there is no information available to indicate which neighbouring DOM caused the LC requirement to be met. Rather, modes LC_UPPER and LC_LOWER reflect how the DOM was configured at the time this launch was recorded. So if signals from both upper and lower DOMs are required to satisfy local coincidence, LC_UPPER and LC_LOWER will be set.
-
inline void SetTriggerMode(TriggerMode situation)¶
Sets the special trigger circumstances.
-
inline ATWDselect GetWhichATWD() const¶
Return which ATWD.
-
inline void SetWhichATWD(ATWDselect WhichATWD)¶
Set which ATWD.
-
inline const std::vector<int> &GetRawATWD(unsigned int channel) const¶
Return raw ATWD by channel number
-
inline bool GetLCBit() const¶
Return local coincidence bit.
-
inline void SetLCBit(bool LCBit)¶
Set the local coincidence bit.
-
inline bool GetIsPedestalSub() const¶
return Pedestal bool.
-
inline void SetIsPedestalSub(bool Pedestal)¶
Set the pedestal bool
-
inline unsigned int GetChargeStampHighestSample() const¶
Return charge stamp highest sample
-
inline void SetChargeStampHighestSample(unsigned int highsample)¶
Set the charge stamp highest sample
-
inline unsigned int GetRawATWDChargeStamp() const¶
Return/Set ATWDCharge stamp, used for IceTop style SLC readout
-
inline void SetRawATWDChargeStamp(unsigned int chargesum)¶
-
inline unsigned int GetWhichATWDChargeStamp() const¶
Return/Set ATWDCharge channel (which ATWD was used), used for IceTop style SLC readout
-
inline void SetWhichATWDChargeStamp(unsigned int channelid)¶
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Private Members
-
double startTime_¶
This is the time (in nsec) in 25 nsec units, of the DOM clock which launches the ATWD (launch is synchronized to the first clock transition AFTER the discriminator fires
-
std::vector<int> rawChargeStamp_¶
Raw course charge stamp These values are already unpacked to full 10-bit numbers
-
TriggerType trigger_¶
This represents the trigger type
-
TriggerMode mode_¶
This signals special trigger circumstances
-
ATWDselect whichATWD_¶
This tells which ATWD in the DOM was used
-
unsigned int chargeStampHighestSample_¶
chargeStampHighestSample runs from 1-16, and points to the highest fADC sample in the first 16 samples; this is from the charge stamp
-
unsigned int rawATWDChargeStamp_¶
Places to store the IceTop-style SLC radouts rawATWDChargeStamp_ : Sum of all 128 channels in selected ATWD, after pedestal sub.
-
unsigned int whichATWDChargeStamp_¶
Places to store the IceTop-style SLC radouts whichATWDChargeStamp_ : which of the 3 ATWD channels was used in sum
-
bool localCoincidence_¶
This holds the local coincidence bit
-
bool pedestal_¶
pedestal_ is a bool that tells you if the pedestal_ has or has not been subtracted from the waveforms. This is only for delta-compressed waveforms. True means pedestal has been subtracted. False means it has not been subtracted.
Friends
- friend class icecube::serialization::access
-
enum TriggerType¶
-
class I3DOMStatus¶
- #include <I3DOMStatus.h>
Public Types
-
enum TrigMode¶
The different kinds of triggers that can be used for the dom The standard data-taking operation is SPE
Values:
-
enumerator UnknownTrigMode¶
-
enumerator TestPattern¶
-
enumerator CPU¶
-
enumerator SPE¶
-
enumerator Flasher¶
-
enumerator MPE¶
-
enumerator UnknownTrigMode¶
-
enum LCMode¶
This controls how far the local coincidence signal is sent and received Turns out you can not encode SLC active or not here. IF SoftLC is set here, then ONLY SLC hits are to be expected. There is a SLCActive bool now in the this struct.
Each dom has two LC settings: lcMode - how the dom is configured to listen for LC signals txMode - how the dom is configured to generate LC signals
Values:
-
enumerator UnknownLCMode¶
-
enumerator LCOff¶
-
enumerator UpOrDown¶
-
enumerator Up¶
-
enumerator Down¶
-
enumerator UpAndDown¶
-
enumerator SoftLC¶
-
enumerator UnknownLCMode¶
-
enum OnOff¶
There is also provision to turn on or off various settings in the DOM
Values:
-
enumerator Unknown¶
-
enumerator Off¶
-
enumerator On¶
-
enumerator Unknown¶
-
enum DOMGain¶
IceTop DOMs can be a “high gain” or a “low gain” variety all InIce DOMs are “high gain”
Values:
-
enumerator UnknownGainType¶
-
enumerator High¶
-
enumerator Low¶
-
enumerator UnknownGainType¶
-
enum CableType¶
Whether the DOM has a terminated (“A” or “T”) or unterminated (“B” or “U”) cable. Perhaps this should go in I3OMGeo? Maybe not, since that class could deal with AMANDA OMs and this only with IceCube DOMs. Perhaps a bool would work here, but I’m not sure what the story is with IceTop DOMs. For now keep the “don’t know” option.
Values:
-
enumerator UnknownCableType¶
-
enumerator Terminated¶
-
enumerator Unterminated¶
-
enumerator UnknownCableType¶
Public Functions
-
inline I3DOMStatus()¶
-
~I3DOMStatus()¶
-
inline bool operator==(const I3DOMStatus &rhs) const¶
-
inline bool operator!=(const I3DOMStatus &rhs) const¶
Public Members
-
unsigned int lcSpan¶
Number of nearest neighbors to consider in LC search.(1,2,3 or 4)
-
double lcWindowPre¶
Local coincidence window size, before ATWD launch window
-
double lcWindowPost¶
Local coincidence window size, after ATWD launch window
-
double pmtHV¶
Real operating PMT HV (Volts)
-
double speThreshold¶
Single PE (SPE) discriminator level.
-
double fePedestal¶
the Pedestal voltage of the analog front end.
-
double dacTriggerBias0¶
Sets ATWD0 sampling speed. Higher DAC setting is faster sample rate.
-
double dacTriggerBias1¶
Sets ATWD1 sampling speed. Higher DAC setting is faster sample rate.
-
double dacFADCRef¶
FADC_DAC_REF - reference setting for FADC baseline
-
double mpeThreshold¶
Multiple PE (MPE) discriminator level.
-
unsigned int nBinsATWD0¶
NBins per Engineering readout. Keep in mind, delta-compressed data automatically adjusts number of readouts per Launch based on waveform size, but if present, should always be 128 samples.
-
unsigned int nBinsATWD1¶
-
unsigned int nBinsATWD2¶
-
unsigned int nBinsATWD3¶
-
unsigned int nBinsFADC¶
-
unsigned int fbBrightness¶
-
unsigned int fbLength¶
-
unsigned int fbDelay¶
-
unsigned int fbMask¶
-
unsigned int fbRate¶
-
bool SLCActive¶
SLCActive - bool to indicate if SLC readouts are active as well as the HLC readouts described above.
Friends
- friend class icecube::serialization::access
-
enum TrigMode¶
-
class I3EventHeader : public I3FrameObject¶
- #include <I3EventHeader.h>
The header for data on the Event stream.
Supposed to be a header for the event that you can store in a file if you don’t want to store the event. It’s supposed to have enough data to reconstruct the full event from the database
Public Types
Public Functions
-
I3EventHeader()¶
-
~I3EventHeader()¶
-
inline bool operator==(const I3EventHeader &other) const¶
-
inline bool operator!=(const I3EventHeader &other) const¶
-
inline unsigned GetRunID() const¶
- Returns:
the run id for the event
-
inline void SetRunID(unsigned runid)¶
- Parameters:
runid – the new run id for the event
-
inline unsigned GetSubRunID() const¶
- Returns:
the subrun id for the event
-
inline void SetSubRunID(unsigned subrunid)¶
- Parameters:
subrunid – the new subrun id for the event
-
inline unsigned GetEventID() const¶
- Returns:
the event id for this event
-
inline void SetEventID(unsigned eventid)¶
- Parameters:
eventid – the new event id for the event
-
inline unsigned GetSubEventID() const¶
- Returns:
the subevent id for this subevent
-
inline void SetSubEventID(unsigned eventid)¶
- Parameters:
eventid – the new subevent id for the subevent
-
inline void SetSubEventStream(const std::string &desc)¶
- Parameters:
desc – the new subevent stream description
-
inline unsigned GetState() const¶
- Returns:
the state for the event
Private Members
-
unsigned runID_¶
Unique identifier assigned sequentially to every run the DAQ has ever recorded.
-
unsigned subRunID_¶
Unique identifier assigned sequentially by the DAQ to every configuration change which occurs during a single run. The subRunID is almost always going to be 0.
The DAQ starts each run with subRunID=0 and only increments it when the run configuration changes. Since, flasher runs are the only time when more than one configuration is used, they are the only time you will see a non-zero subRunID.
SubRunID is often confused with PFFilt file number. Pnf breaks up both its PFRaw and PFFilt output stream into multiple files for transmission over the satellite and storage. These file partitions are based solely on the size of the file and have no significance to the data or the DAQ. The file number is not recorded anywhere in the frame and cannot easily be added in the frame. Also note that since PnF uses a different writer module to write PFRaw and PFFilt files that there will be a different number of PFRaw and PFFilt files and no correspondence between which file an event will land between the two output streams.
Experimental data filenames will often contain three values: the runID, the subRunID, and the PFFilt file number. But since the subRun is almost always 0 it often gets confused with the PFFilt file number. For example the filename
PFFilt_PhysicsFiltering_Run00136690_Subrun00000000_00000205.tar.bz2
indicates a runID of 136690, a subRunID of 0, and a PFFilt file number of 205 but will often be erroneously referred to as subrun 205.
-
unsigned eventID_¶
Unique identifier assigned by the DAQ to every event (Q-frame) in the given run.
-
unsigned subEventID_¶
Unique identifier assigned to every P-frame by the splitter.
This quantity is not assigned by the DAQ. When Q-frames are split into multiple P-frames by a splitter module this is the unique number assigned to each P-frame.
Friends
- friend class icecube::serialization::access
-
I3EventHeader()¶
-
struct I3FilterResult : public I3FrameObject¶
- #include <I3FilterResult.h>
The filtering result information from JEB + PnF.
Filtering is a five step process:
Prepare data (decoding, calibration, feature extraction etc.),
reconstruct event,
make a filter decision (drop an I3Boolean with a name equal to the corresponding filter stream into the frame that is true for “good” events),
prescale “good” events and compile the filter results,
write all events into raw and good events into filtered data stream.
Public Functions
-
inline I3FilterResult()¶
Default constructor.
-
~I3FilterResult()¶
Destructor.
-
bool operator==(const I3FilterResult &rhs) const¶
-
inline bool operator!=(const I3FilterResult &rhs) const¶
-
class I3FlasherInfo : public I3FrameObject¶
- #include <I3FlasherInfo.h>
This contains the data on which DOM flashed during flasher runs.
It holds the flashing DOMs OMKey, brightness level, mask (which LEDs fired) firing time, and ATWD trace of the LED current pulse
This will be changed into a I3Trigger derived class eventually, once there is sufficient functionality to get Flasher settings somewhere. Included here for use by flasher analysis people. It can be “I3Bagged”.
Public Functions
-
inline I3FlasherInfo()¶
-
inline ~I3FlasherInfo()¶
-
inline double GetFlashTime() const¶
return and set flash time
-
inline void SetFlashTime(double flashtime)¶
-
inline double GetATWDBinSize() const¶
return and set ATWD time bin size
-
inline void SetATWDBinSize(double ATWDbinsize)¶
-
inline int GetLEDBrightness() const¶
-
inline void SetLEDBrightness(int LEDint)¶
-
inline unsigned int GetMask() const¶
-
inline void SetMask(int LEDmask)¶
-
inline unsigned int GetWidth() const¶
-
inline void SetWidth(int width)¶
-
inline unsigned int GetRate() const¶
-
inline void SetRate(int rate)¶
Protected Attributes
-
double flashTime_¶
Time (in nsec) in 25 nsec units, of the LED flash time.
-
std::vector<int> rawATWD3_¶
These is the ATWD waveform of the LED current pulse, and the ATWD time bin size, in nsec
-
double aTWDBinSize_¶
-
bool pedestalSubtractedATWD3_¶
-
unsigned int mask_¶
-
int LEDBrightness_¶
-
int width_¶
-
int rate_¶
Friends
- friend class icecube::serialization::access
-
inline I3FlasherInfo()¶
-
class I3FlasherStatus : public I3FrameObject¶
- #include <I3FlasherStatus.h>
Flasher configuration settings for a particular DOM during a particular subrun.
Friends
- friend class icecube::serialization::access
-
class I3Geometry : public I3FrameObject¶
- #include <I3Geometry.h>
Public Types
-
enum SnowHeightProvenance¶
Values:
-
enumerator Unknown¶
Unknown provenance.
-
enumerator Feb2011¶
The numbers that lived in the database as default for years (until 2023)
-
enumerator Database¶
Pulled from most recent in-situ measurement.
-
enumerator InterpolatedLinear¶
Interpolated between measurements.
-
enumerator Mixed¶
For the case if some Tanks are interpolated, others extrapolated.
-
enumerator ExtrapolatedLinear¶
Extrapolated past the last measurement based on overall slope.
-
enumerator VEMCal¶
Derived from VEMCal measurements of EM and muon components.
-
enumerator Custom¶
Entered some other way.
-
enumerator Unknown¶
Public Functions
-
inline I3Geometry()¶
-
~I3Geometry()¶
-
const I3Geometry &operator=(const I3Geometry &geometry)¶
-
inline bool operator==(const I3Geometry &rhs)¶
-
inline bool operator!=(const I3Geometry &rhs)¶
Public Members
-
I3OMGeoMap omgeo¶
-
I3StationGeoMap stationgeo¶
-
SnowHeightProvenance snowHeightProvenance¶
-
I3ScintGeoMap scintgeo¶
-
I3AntennaGeoMap antennageo¶
-
I3IceActGeoMap iceactgeo¶
Friends
- friend class icecube::serialization::access
-
enum SnowHeightProvenance¶
-
template<>
struct i3hash<I3ParticleID>¶ - #include <I3ParticleID.h>
Public Functions
-
inline size_t operator()(const I3ParticleID &id) const¶
-
inline size_t operator()(const I3ParticleID &id) const¶
-
class I3IceActGeo¶
- #include <I3IceActGeo.h>
Public Types
Public Functions
-
inline I3IceActGeo()¶
-
~I3IceActGeo()¶
-
inline void SetPosition(I3Position &pos)¶
-
inline I3Position GetPosition() const¶
-
inline void SetOrientation(I3Orientation &orient)¶
-
inline I3Orientation GetOrientation() const¶
-
inline void SetIceActType(IceActType type)¶
-
inline IceActType GetIceActType() const¶
-
inline void SetNumberofPixels(int numpixels)¶
-
inline int GetNumberofPixels()¶
-
inline void SetPixelSize(float pixSize)¶
-
inline float GetPixelSize() const¶
-
inline void SetPixelsPositions(I3Map<unsigned, I3Position> &pixelpos)¶
-
inline I3Map<unsigned, I3Position> GetPixelsPositions() const¶
-
inline bool operator==(const I3IceActGeo &rhs) const¶
-
inline bool operator!=(const I3IceActGeo &rhs) const¶
Public Members
-
I3Position position¶
-
I3Orientation orientation¶
-
IceActType iceactType¶
-
int numberofPixels¶
-
float pixelSize¶
-
I3Map<unsigned, I3Position> pixelPositions¶
Friends
- friend class icecube::serialization::access
-
inline I3IceActGeo()¶
-
class I3IceTopSLCCalibration¶
- #include <I3IceTopSLCCalibration.h>
This struct stores the slopes and intercepts needed for charge calibration of SLC hits in IceTop DOMs.
- Author
Kath Rawlins
Public Functions
-
inline I3IceTopSLCCalibration()¶
-
~I3IceTopSLCCalibration()¶
-
inline double GetIntercept(int chip, unsigned int atwd) const¶
-
inline double GetSlope(int chip, unsigned int atwd) const¶
-
inline void SetIntercept(int chip, unsigned int atwd, double val)¶
-
inline void SetSlope(int chip, unsigned int atwd, double val)¶
-
inline bool operator==(const I3IceTopSLCCalibration &rhs) const¶
-
inline bool operator!=(const I3IceTopSLCCalibration &rhs) const¶
Public Members
-
double intercept_C0A0¶
Slopes and Intercepts for each Chip/ATWD
-
double intercept_C0A1¶
-
double intercept_C0A2¶
-
double intercept_C1A0¶
-
double intercept_C1A1¶
-
double intercept_C1A2¶
-
double slope_C0A0¶
-
double slope_C0A1¶
-
double slope_C0A2¶
-
double slope_C1A0¶
-
double slope_C1A1¶
-
double slope_C1A2¶
-
double intercept_CunkA0¶
Slopes and Intercepts to be used when the Chip/ATWD is unknown
-
double intercept_CunkA1¶
-
double intercept_CunkA2¶
-
double slope_CunkA0¶
-
double slope_CunkA1¶
-
double slope_CunkA2¶
Friends
- friend class icecube::serialization::access
-
class I3IceTopSLCCalibrationCollection : public I3FrameObject¶
- #include <I3IceTopSLCCalibration.h>
Public Types
-
enum ITSLCCalProvenance¶
Values:
-
enumerator Unknown¶
Unknown provenance.
-
enumerator MoniRaw¶
Derived from pfmonitoring, with p0’s in raw charge units.
-
enumerator PFFiltRaw¶
Derived from PFFilt, with p0’s in raw charge units.
-
enumerator Level2VEM¶
Derived from Level2, with p0’s in units of VEM.
-
enumerator Level2Raw¶
Derived from Level2, with p0’s in raw charge units.
-
enumerator Placeholder¶
Placeholder values for software testing (not for analysis)
-
enumerator Custom¶
Entered some other way.
-
enumerator Unknown¶
Public Functions
-
I3IceTopSLCCalibrationCollection()¶
-
~I3IceTopSLCCalibrationCollection()¶
-
inline bool operator==(const I3IceTopSLCCalibrationCollection &rhs)¶
-
inline bool operator!=(const I3IceTopSLCCalibrationCollection &rhs)¶
Public Members
-
int startRun¶
Start run for which the constants are valid.
-
int endRun¶
End run for which the constants are valid.
-
I3IceTopSLCCalibrationMap ITslcCal¶
The most important object in here: the Map of all the calibration constants.
-
ITSLCCalProvenance itSlcCalProvenance¶
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Friends
- friend class icecube::serialization::access
-
enum ITSLCCalProvenance¶
-
class I3LinearizedMCTree : public TreeBase::Tree<T, Key, Hash>¶
- #include <I3LinearizedMCTree.h>
A compact I3MCTree.
I3LinearizedMCTree is an alternate format for I3MCTree, optimized for efficient on-disk storage in the case where the tree is dominated by a large number of terminal nodes containing I3Particles that are co-linear with their parents. In these cases the daughter particles can be completely described by a time, energy, type, and minor/major ids, as well as the parameters of the parent particle.
Entries in the I3MCTree returned by I3LinearizedMCTree::operator I3MCTree are guaranteed to be identical to the entries in the original tree, with the following exceptions:
Times and energies will only be identical to within single precision
The positions of daughter particles may deviate by up to 50 cm.
Public Functions
-
inline I3LinearizedMCTree()¶
-
template<>
void save(icecube::archive::xml_oarchive &ar, unsigned version) const¶
-
template<>
void load(icecube::archive::xml_iarchive &ar, unsigned version)¶
Private Types
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Friends
- friend class icecube::serialization::access
-
template<typename Key, typename Value>
struct I3Map : public I3FrameObject, public std::map<Key, Value>¶ - #include <I3Map.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Public Functions
-
class I3Matrix : public I3FrameObject, public ublas_matrix_shim¶
- #include <I3Matrix.h>
Public Types
-
typedef ublas_matrix_shim::base base¶
Public Functions
-
inline I3Matrix()¶
-
inline I3Matrix(size_t size1, size_t size2)¶
-
inline I3Matrix(size_t size1, size_t size2, const value_type &init)¶
-
inline I3Matrix(size_t size1, size_t size2, const array_type &data)¶
Private Functions
-
template<typename Archive>
void serialize(Archive&, unsigned)
Friends
- friend class icecube::serialization::access
-
typedef ublas_matrix_shim::base base¶
-
class I3MCHit¶
- #include <I3MCHit.h>
Public Types
Public Functions
-
inline I3MCHit()¶
-
~I3MCHit()¶
-
inline double GetTime() const¶
-
inline void SetTime(double time)¶
-
inline int32_t GetHitID() const¶
-
inline void SetHitID(int hitID)¶
-
inline double GetCharge() const¶
-
inline void SetCharge(double charge)¶
-
inline int32_t GetParticleMinorID() const¶
-
void SetParticleID(const I3Particle&)¶
-
inline double GetCherenkovDistance() const¶
- Returns:
the direct path distance to the track which caused this hit
-
inline void SetCherenkovDistance(double CherenkovDistance)¶
- Parameters:
CherenkovDistance – set the direct path distance to track which caused this hit
-
inline operator I3ParticleID() const¶
Private Functions
Private Members
-
double time_¶
-
double charge_¶
-
int32_t hitID_¶
-
int32_t particleID_¶
-
double cherenkovDistance_¶
Friends
- friend class icecube::serialization::access
-
inline I3MCHit()¶
-
class I3MCList : public I3Vector<I3Particle>¶
Public Functions
-
inline ~I3MCList()¶
Friends
- friend class icecube::serialization::access
-
inline ~I3MCList()¶
-
class I3ModuleGeo : public I3FrameObject¶
- #include <I3ModuleGeo.h>
Describes an optical module. This is supposed to contain all information about the module itself, not the PMT(s) inside of it.
For IceCube/AMANDA DOMs, the position and orientation will be the same as for the PMTs inside this module (described by I3OMGeo).
Public Types
-
enum ModuleType¶
Values:
-
enumerator UnknownType¶
-
enumerator AMANDA¶
-
enumerator IceCube¶
-
enumerator IceTop¶
-
enumerator mDOM¶
-
enumerator Scintillator¶
-
enumerator IceAct¶
-
enumerator PDOM¶
-
enumerator DEgg¶
-
enumerator WOM¶
-
enumerator FOM¶
-
enumerator DMIce¶
-
enumerator LOM¶
-
enumerator LOM16¶
-
enumerator LOM18¶
-
enumerator RadioReceiver¶
-
enumerator POCAM¶
-
enumerator PencilBeam¶
-
enumerator RadioEmitter¶
-
enumerator AcousticEmitter¶
-
enumerator AbaloneHub¶
-
enumerator FibreComm¶
-
enumerator UnknownType¶
Public Functions
-
I3ModuleGeo()¶
-
~I3ModuleGeo()¶
-
bool operator==(const I3ModuleGeo &rhs) const¶
-
inline ModuleType GetModuleType() const¶
-
void SetModuleType(ModuleType newType)¶
-
inline const I3Position &GetPos() const¶
-
inline void SetPos(const I3Position &p)¶
-
inline void SetPos(double x, double y, double z)¶
-
inline const I3Orientation &GetOrientation() const¶
-
inline void SetOrientation(const I3Orientation &o)¶
-
inline I3Direction GetDir() const¶
-
inline double GetRadius() const¶
-
inline double GetRr() const¶
-
inline double GetRz() const¶
-
inline double GetHeight() const¶
-
inline void SetRr(double value)¶
-
inline void SetRz(double value)¶
-
inline void SetHeight(double value)¶
-
inline void SetRadius(double radius)¶
-
inline void SetSpheroid(double radR, double radZ)¶
-
inline void SetCylinder(double radR, double h)¶
Private Members
-
ModuleType moduleType_¶
-
I3Position pos_¶
-
I3Orientation orientation_¶
-
double radR_¶
-
double radZ_¶
-
double h_¶
Friends
- friend class icecube::serialization::access
-
enum ModuleType¶
-
class I3OMGeo¶
- #include <I3OMGeo.h>
Public Types
-
enum OMType¶
Values:
-
enumerator UnknownType¶
-
enumerator AMANDA¶
-
enumerator IceCube¶
-
enumerator IceTop¶
-
enumerator Scintillator¶
-
enumerator IceAct¶
-
enumerator PDOM¶
-
enumerator isoPDOM¶
-
enumerator DEgg¶
-
enumerator mDOM¶
-
enumerator WOM¶
-
enumerator FOM¶
-
enumerator DMIce¶
-
enumerator LOM¶
-
enumerator LOM16¶
-
enumerator LOM18¶
-
enumerator RadioReceiver¶
-
enumerator POCAM¶
-
enumerator PencilBeam¶
-
enumerator RadioEmitter¶
-
enumerator AcousticEmitter¶
-
enumerator AbaloneHub¶
-
enumerator FibreComm¶
-
enumerator UnknownType¶
Public Functions
-
inline I3OMGeo()¶
-
inline I3Direction GetDirection() const¶
Gets the I3Direction from the I3Orientation
Public Members
-
I3Position position¶
the OM’s (or PMT’s) x,y,z position
-
I3Orientation orientation¶
Orientation of the OM (or PMT)
-
double area¶
Effective collection area (use I3Units)
Friends
- friend class icecube::serialization::access
-
enum OMType¶
-
class I3Orientation : public I3FrameObject¶
- #include <I3Orientation.h>
Stores an orientation. This is more than a direction in that you also include the rotation around the direction axis. Picture the three-finger right hand rule. Your thumb points to “front” (the direction), your index finger points to “up” and your middle finger to “right”.
Public Functions
-
I3Orientation()¶
-
I3Orientation(double x_dir, double y_dir, double z_dir, double x_up, double y_up, double z_up)¶
Additional constructor: 6 arguments mean construct dir. with dir(x,y,z) and up(x,y,z)
-
I3Orientation(const I3Direction &dir, const I3Direction &up)¶
Additional constructor: 6 arguments mean construct dir. with dir(x,y,z) and up(x,y,z)
-
I3Orientation(const I3Orientation &d)¶
Copy constructor
-
inline I3Orientation(const I3Direction &d)¶
Assignment constructor from direction (will generate an arbitrary rotation angle)
-
~I3Orientation()¶
-
inline I3Orientation operator=(const I3Orientation &d)¶
Assignment operator from direction (will generate an arbitrary rotation angle)
-
inline I3Orientation operator=(const I3Direction &d)¶
Assignment operator from orientation (will generate an arbitrary rotation angle)
-
inline bool operator==(const I3Orientation &other) const¶
Test for equality
-
void SetOrientation(const I3Orientation &d)¶
Store direction from orientation d
-
void SetOrientation(const I3Direction &d)¶
Store direction from a single direction d (this will generate an arbitrary “up” direction)
-
void SetOrientation(double x_dir, double y_dir, double z_dir, double x_up, double y_up, double z_up)¶
Store direction with x, y, z (3 arguments)
-
void SetOrientation(const I3Direction &dir, const I3Direction &up)¶
Store direction with x, y, z (3 arguments)
-
void SetOrientationFromQuaternion(const I3Quaternion &q)¶
Store direction from a unit quaternion rotation the (0,0,1) vector
-
void ResetOrientation()¶
Reset all elements of I3Orientation to NAN
-
inline void RotVectorInPlace(double &x, double &y, double &z, bool inverse = false) const¶
Rotate a vector inside a coordinate system where z-axis==(0,0,1), x-axis==(1,0,0), y-axis=(0,1,0) to the system where z-axis==dir, x-axis==up, y-axis==right. If inverse This is the in-place version with 3 doubles for x,y,z.
-
template<typename T>
inline T RotateIn(const T &vec) const¶ Rotate a vector from a coordinate system where z-axis==(0,0,1), x-axis==(1,0,0), y-axis=(0,1,0) to the system where z-axis==dir, x-axis==up, y-axis==right.
-
template<typename T>
inline T RotateOut(const T &vec) const¶ Rotate a vector from a coordinate system where z-axis==dir, x-axis==up, y-axis==right to the system where z-axis==(0,0,1), x-axis==(1,0,0), y-axis=(0,1,0).
-
inline double GetZenith() const¶
Provide Zenith of direction
-
inline double GetDirZenith() const¶
-
inline double GetAzimuth() const¶
Provide Azimuth of direction
-
inline double GetDirAzimuth() const¶
-
inline double GetX() const¶
Provide X of direction in cartesian ref frame
-
inline double GetDirX() const¶
-
inline double GetY() const¶
Provide Y of direction in cartesian ref frame
-
inline double GetDirY() const¶
-
inline double GetZ() const¶
Provide Z of direction in cartesian ref frame
-
inline double GetDirZ() const¶
-
inline I3Direction GetDir() const¶
Calculate “dir” direction
-
inline double CalcDirTheta() const¶
Calculate Theta of “dir” direction
-
inline double CalcDirPhi() const¶
Calculate Phi of “dir” direction
-
inline double GetUpZenith() const¶
Provide Zenith of “up” direction
-
inline double GetUpAzimuth() const¶
Provide Azimuth of “up” direction
-
inline double GetUpX() const¶
Provide X of “up” direction in cartesian ref frame
-
inline double GetUpY() const¶
Provide Y of “up” direction in cartesian ref frame
-
inline double GetUpZ() const¶
Provide Z of “Up” direction in cartesian ref frame
-
inline I3Direction GetUp() const¶
Calculate “up” direction
-
inline double CalcUpTheta() const¶
Calculate Theta of “up” direction
-
inline double CalcUpPhi() const¶
Calculate Phi of “up” direction
-
inline double GetRightZenith() const¶
Provide Zenith of “right” direction
-
inline double GetRightAzimuth() const¶
Provide Azimuth of “right” direction
-
inline double GetRightX() const¶
Provide X of “right” direction in cartesian ref frame
-
inline double GetRightY() const¶
Provide Y of “right” direction in cartesian ref frame
-
inline double GetRightZ() const¶
Provide Z of “right” direction in cartesian ref frame
-
inline I3Direction GetRight() const¶
Calculate “right” direction
-
inline double CalcRightTheta() const¶
Calculate Theta of “right” direction
-
inline double CalcRightPhi() const¶
Calculate Phi of “right” direction
Protected Attributes
-
I3Quaternion rot_¶
Rotate orientation around X axis by angle Rotate orientation around Y axis by angle Rotate orientation around Z axis by angle the actual rotation w.r.t (0,0,1)
-
mutable double xDir_¶
direction “dir” coordinates
-
mutable double yDir_¶
-
mutable double zDir_¶
-
mutable double zenithDir_¶
-
mutable double azimuthDir_¶
-
mutable double xUp_¶
direction “up” coordinates
-
mutable double yUp_¶
-
mutable double zUp_¶
-
mutable double zenithUp_¶
-
mutable double azimuthUp_¶
-
mutable double xRight_¶
direction “right” coordinates
-
mutable double yRight_¶
-
mutable double zRight_¶
-
mutable double zenithRight_¶
-
mutable double azimuthRight_¶
-
mutable bool isDirCalculated_¶
Did we calculate the directions before?
-
mutable bool isUpCalculated_¶
-
mutable bool isRightCalculated_¶
Private Functions
-
void DoCalcDir() const¶
Calculate all coordinates from the internal rotation
-
void DoCalcUp() const¶
-
void DoCalcRight() const¶
Friends
- friend class icecube::serialization::access
-
I3Orientation()¶
-
class I3Particle : public I3FrameObject¶
- #include <I3Particle.h>
Public Types
-
enum ParticleType¶
Values:
-
enumerator unknown¶
-
enumerator Gamma¶
-
enumerator EPlus¶
-
enumerator EMinus¶
-
enumerator MuPlus¶
-
enumerator MuMinus¶
-
enumerator Pi0¶
-
enumerator PiPlus¶
-
enumerator PiMinus¶
-
enumerator K0_Long¶
-
enumerator KPlus¶
-
enumerator KMinus¶
-
enumerator Neutron¶
-
enumerator PPlus¶
-
enumerator PMinus¶
-
enumerator K0_Short¶
-
enumerator Eta¶
-
enumerator Lambda¶
-
enumerator SigmaPlus¶
-
enumerator Sigma0¶
-
enumerator SigmaMinus¶
-
enumerator Xi0¶
-
enumerator XiMinus¶
-
enumerator OmegaMinus¶
-
enumerator NeutronBar¶
-
enumerator LambdaBar¶
-
enumerator SigmaMinusBar¶
-
enumerator Sigma0Bar¶
-
enumerator SigmaPlusBar¶
-
enumerator Xi0Bar¶
-
enumerator XiPlusBar¶
-
enumerator OmegaPlusBar¶
-
enumerator DPlus¶
-
enumerator DMinus¶
-
enumerator D0¶
-
enumerator D0Bar¶
-
enumerator DsPlus¶
-
enumerator DsMinusBar¶
-
enumerator LambdacPlus¶
-
enumerator WPlus¶
-
enumerator WMinus¶
-
enumerator Z0¶
-
enumerator NuE¶
-
enumerator NuEBar¶
-
enumerator NuMu¶
-
enumerator NuMuBar¶
-
enumerator TauPlus¶
-
enumerator TauMinus¶
-
enumerator NuTau¶
-
enumerator NuTauBar¶
-
enumerator Sigmac2520PlusPlus¶
-
enumerator Sigmac2520BarMinusMinus¶
-
enumerator Sigmac2455BarMinusMinus¶
-
enumerator BBar0¶
-
enumerator Lambdab0¶
-
enumerator XicPlus¶
-
enumerator BPlus¶
-
enumerator Sigmac2520BarMinus¶
-
enumerator SigmabBarPlus¶
-
enumerator Sigmac2455BarMinus¶
-
enumerator XibMinus¶
-
enumerator Sigmac24550¶
-
enumerator XibBar0¶
-
enumerator Sigmac25200¶
-
enumerator Bs0¶
-
enumerator OmegacBar0¶
-
enumerator SigmabBarMinus¶
-
enumerator DStar2010Plus¶
-
enumerator XicPrimeBarMinus¶
-
enumerator BcPlus¶
-
enumerator Xic0¶
-
enumerator Delta1232Plus¶
-
enumerator Delta1232BarPlus¶
-
enumerator DStar20070¶
-
enumerator XicPrimeBar0¶
-
enumerator Rho770Minus¶
-
enumerator OmegabBarPlus¶
-
enumerator Delta1232PlusPlus¶
-
enumerator DsStarPlus¶
-
enumerator Etac1S¶
-
enumerator KStar8920¶
-
enumerator Jpsi1S¶
-
enumerator KStar892Minus¶
-
enumerator Delta1232Bar0¶
-
enumerator Delta12320¶
-
enumerator KStar892Plus¶
-
enumerator KStar892Bar0¶
-
enumerator EtaPrime958¶
-
enumerator Phi1020¶
-
enumerator DsStarMinus¶
-
enumerator Delta1232BarMinusMinus¶
-
enumerator OmegabMinus¶
-
enumerator Rho770Plus¶
-
enumerator LambdabBar0¶
-
enumerator XicPrime0¶
-
enumerator DStar2007Bar0¶
-
enumerator Delta1232Minus¶
-
enumerator Delta1232BarMinus¶
-
enumerator XicBar0¶
-
enumerator SigmabMinus¶
-
enumerator Omega782¶
-
enumerator XicPrimePlus¶
-
enumerator DStar2010Minus¶
-
enumerator BcMinus¶
-
enumerator LambdacBarMinus¶
-
enumerator SigmabPlus¶
-
enumerator Omegac0¶
-
enumerator BsBar0¶
-
enumerator Sigmac2520Bar0¶
-
enumerator Sigmac2455Bar0¶
-
enumerator Rho7700¶
-
enumerator Xib0¶
-
enumerator Sigmac2455Plus¶
-
enumerator XibBarPlus¶
-
enumerator Sigmac2520Plus¶
-
enumerator BMinus¶
-
enumerator XicBarMinus¶
-
enumerator Sigmac2455PlusPlus¶
-
enumerator BZero¶
-
enumerator H2Nucleus¶
-
enumerator H3Nucleus¶
-
enumerator He3Nucleus¶
-
enumerator He4Nucleus¶
-
enumerator He5Nucleus¶
-
enumerator He6Nucleus¶
-
enumerator Li5Nucleus¶
-
enumerator Li6Nucleus¶
-
enumerator Li7Nucleus¶
-
enumerator Be9Nucleus¶
-
enumerator B10Nucleus¶
-
enumerator B11Nucleus¶
-
enumerator C12Nucleus¶
-
enumerator C13Nucleus¶
-
enumerator N14Nucleus¶
-
enumerator N15Nucleus¶
-
enumerator O16Nucleus¶
-
enumerator O17Nucleus¶
-
enumerator O18Nucleus¶
-
enumerator F19Nucleus¶
-
enumerator Ne20Nucleus¶
-
enumerator Ne21Nucleus¶
-
enumerator Ne22Nucleus¶
-
enumerator Na23Nucleus¶
-
enumerator Mg24Nucleus¶
-
enumerator Mg25Nucleus¶
-
enumerator Mg26Nucleus¶
-
enumerator Al26Nucleus¶
-
enumerator Al27Nucleus¶
-
enumerator Si28Nucleus¶
-
enumerator Si29Nucleus¶
-
enumerator Si30Nucleus¶
-
enumerator Si31Nucleus¶
-
enumerator Si32Nucleus¶
-
enumerator P31Nucleus¶
-
enumerator P32Nucleus¶
-
enumerator P33Nucleus¶
-
enumerator S32Nucleus¶
-
enumerator S33Nucleus¶
-
enumerator S34Nucleus¶
-
enumerator S35Nucleus¶
-
enumerator S36Nucleus¶
-
enumerator Cl35Nucleus¶
-
enumerator Cl36Nucleus¶
-
enumerator Cl37Nucleus¶
-
enumerator Ar36Nucleus¶
-
enumerator Ar37Nucleus¶
-
enumerator Ar38Nucleus¶
-
enumerator Ar39Nucleus¶
-
enumerator Ar40Nucleus¶
-
enumerator Ar41Nucleus¶
-
enumerator Ar42Nucleus¶
-
enumerator K39Nucleus¶
-
enumerator K40Nucleus¶
-
enumerator K41Nucleus¶
-
enumerator Ca40Nucleus¶
-
enumerator Ca41Nucleus¶
-
enumerator Ca42Nucleus¶
-
enumerator Ca43Nucleus¶
-
enumerator Ca44Nucleus¶
-
enumerator Ca45Nucleus¶
-
enumerator Ca46Nucleus¶
-
enumerator Ca47Nucleus¶
-
enumerator Ca48Nucleus¶
-
enumerator Sc44Nucleus¶
-
enumerator Sc45Nucleus¶
-
enumerator Sc46Nucleus¶
-
enumerator Sc47Nucleus¶
-
enumerator Sc48Nucleus¶
-
enumerator Ti44Nucleus¶
-
enumerator Ti45Nucleus¶
-
enumerator Ti46Nucleus¶
-
enumerator Ti47Nucleus¶
-
enumerator Ti48Nucleus¶
-
enumerator Ti49Nucleus¶
-
enumerator Ti50Nucleus¶
-
enumerator V48Nucleus¶
-
enumerator V49Nucleus¶
-
enumerator V50Nucleus¶
-
enumerator V51Nucleus¶
-
enumerator Cr50Nucleus¶
-
enumerator Cr51Nucleus¶
-
enumerator Cr52Nucleus¶
-
enumerator Cr53Nucleus¶
-
enumerator Cr54Nucleus¶
-
enumerator Mn52Nucleus¶
-
enumerator Mn53Nucleus¶
-
enumerator Mn54Nucleus¶
-
enumerator Mn55Nucleus¶
-
enumerator Fe54Nucleus¶
-
enumerator Fe55Nucleus¶
-
enumerator Fe56Nucleus¶
-
enumerator Fe57Nucleus¶
-
enumerator Fe58Nucleus¶
-
enumerator Qball¶
-
enumerator CherenkovPhoton¶
-
enumerator Nu¶
-
enumerator Monopole¶
-
enumerator Brems¶
-
enumerator DeltaE¶
-
enumerator PairProd¶
-
enumerator NuclInt¶
-
enumerator MuPair¶
-
enumerator Hadrons¶
-
enumerator WeakInt¶
-
enumerator ContinuousEnergyLoss¶
-
enumerator FiberLaser¶
-
enumerator N2Laser¶
-
enumerator YAGLaser¶
-
enumerator STauPlus¶
-
enumerator STauMinus¶
-
enumerator SMPPlus¶
-
enumerator SMPMinus¶
-
enumerator unknown¶
-
enum ParticleShape¶
Values:
-
enumerator Null¶
-
enumerator Primary¶
-
enumerator TopShower¶
-
enumerator Cascade¶
-
enumerator CascadeSegment¶
-
enumerator InfiniteTrack¶
-
enumerator StartingTrack¶
-
enumerator StoppingTrack¶
-
enumerator ContainedTrack¶
-
enumerator MCTrack¶
-
enumerator Dark¶
-
enumerator Null¶
Public Functions
-
I3Particle(ParticleShape shape = Null, ParticleType type = unknown)¶
Constructor for a simple particle with generated ID useful in applications where the shape and type of an particle are in focus.
- Parameters:
shape – Shape of the track
type – Particle type
-
I3Particle(const I3Position pos, const I3Direction dir, const double vertextime, ParticleShape shape = Null, double length = NAN)¶
Constructor for I3Particle, focusing on directional properties.
- Parameters:
pos – Position of the vertex
dir – Direction of the track
vertextime – time that the vertex is happening
shape – Shape of the track
length –
-
I3Particle(const boost::optional<I3Particle> &p)¶
Constructor for particle from boost::optional<I3Particle>
- Parameters:
p – A particle
-
bool IsTrack() const¶
-
bool IsCascade() const¶
-
bool IsTopShower() const¶
-
bool IsNeutrino() const¶
-
bool IsNucleus() const¶
-
bool HasPosition() const¶
-
bool HasDirection() const¶
-
bool HasEnergy() const¶
-
inline operator I3ParticleID() const¶
-
inline I3Particle(const I3Particle &rhs)¶
-
inline I3Particle &operator=(const I3Particle &rhs)¶
-
inline bool operator==(const I3Particle &rhs) const¶
-
inline bool operator!=(const I3Particle &rhs) const¶
-
I3Particle Clone() const¶
Returns a particle with a new I3ParticleID, but will all other properties unchanged.
-
inline I3ParticleID GetID() const¶
-
inline int32_t GetMinorID() const¶
-
inline int32_t GetPdgEncoding() const¶
-
inline void SetPdgEncoding(int32_t newid)¶
-
inline ParticleType GetType() const¶
-
inline void SetType(ParticleType type)¶
-
inline ParticleShape GetShape() const¶
-
inline void SetShape(ParticleShape shape)¶
-
inline LocationType GetLocationType() const¶
-
inline void SetLocationType(LocationType type)¶
-
inline const I3Position &GetPos() const¶
-
inline void SetPos(const I3Position &p)¶
-
inline void SetPos(double p1, double p2, double p3, I3Position::RefFrame frame)¶
-
inline void SetPos(double x, double y, double z)¶
-
inline const I3Direction &GetDir() const¶
-
inline void SetDir(const I3Direction &d)¶
-
inline void SetDir(double zen, double azi)¶
-
inline void SetDir(double x, double y, double z)¶
-
inline void SetThetaPhi(double theta, double phi)¶
-
inline double GetZenith() const¶
-
inline double GetAzimuth() const¶
-
inline double GetX() const¶
-
inline double GetY() const¶
-
inline double GetZ() const¶
-
inline double GetTime() const¶
-
inline void SetTime(double t)¶
-
inline double GetLength() const¶
-
inline void SetLength(double length)¶
-
inline double GetEnergy() const¶
Returns the kinetic energy of the particle.
-
inline double GetKineticEnergy() const¶
Returns the kinetic energy of the particle.
-
double GetTotalEnergy() const¶
Returns the total energy of the particle.
-
double GetMass() const¶
Returns the mass of the particle.
-
bool HasMass() const¶
Check if particle has mass.
-
inline void SetEnergy(double energy)¶
Sets the kinetic energy of the particle.
-
inline void SetKineticEnergy(double energy)¶
Sets the kinetic energy of the particle.
-
void SetTotalEnergy(double total_energy)¶
Sets the total energy of the particle.
-
inline double GetSpeed() const¶
-
inline void SetSpeed(double s)¶
-
I3Position ShiftTimeTrack(const double time) const¶
get the position of the particle at this time
Note
ignores the shape of the track (start/stopping point), so the particle might not be defined at that very position
- Parameters:
time – the time in ns
-
I3Position GetStartPos() const¶
-
double GetStartTime() const¶
-
I3Position GetStopPos() const¶
-
double GetStopTime() const¶
Public Static Functions
-
static double GetMassForType(ParticleType type)¶
Returns the mass of a particle of given type.
Private Functions
-
I3Particle(const uint64_t major, const int32_t minor)¶
Constructor for particle as a unique identifier by majorID and minorID useful in iteration processes (in I3MCTree) where unique tagging is required.
- Parameters:
major – MajorID of that particle
minor – MinorID of that particle
-
void generateID()¶
generate a new, unique ID combination
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Private Members
-
I3ParticleID ID_¶
-
int32_t pdgEncoding_¶
-
ParticleShape shape_¶
-
I3Position pos_¶
-
I3Direction dir_¶
-
double time_¶
-
double energy_¶
-
double length_¶
-
double speed_¶
-
LocationType locationType_¶
Friends
- friend class I3Stochastic
- friend class test_particle_id_private_ctor
- friend class icecube::serialization::access
-
enum ParticleType¶
-
struct I3ParticleID¶
- #include <I3ParticleID.h>
A single object for holding the ID numbers of an I3Particle.
In icetray, the “ID” of a particle object is a pair of (integer) numbers that serve as its unique identifier. No two particles, even two particles in different data sets, can have the same identifier. This is important because simulation is not done in one single process, but instead in stages, where particle generation and propagation can happen on different machines. So if we simply assigned ‘0’ to the first particle created in a generator process, its ID would clash with the first particle created by the propagator, both of which will be added to the same I3MCTree.
Public Functions
-
inline I3ParticleID()¶
-
inline bool operator==(const I3ParticleID &other) const¶
Need to tell gcc to ignore the “maybe unititalized warning” in this case. A default constructor was added that initializes these values and none of these methods are static, so this is a false positive.
clang seems to be smart enough to know these aren’t used uninitialized, so we only turn them off for gcc, since this just causes more clang warnings.
These directives we need were added in gcc 4.6 https://gcc.gnu.org/gcc-4.6/changes.html
-
inline bool operator!=(const I3ParticleID &other) const¶
-
inline bool operator<(const I3ParticleID &other) const¶
Public Members
-
uint64_t majorID¶
This is a hash of the time (of I3Particle object creation), process ID, and hostname. So two particles created at the same time on the same machine, but in different processes will have different major IDs.
-
int32_t minorID¶
This is meant to provide the bone-headed (and commonly used) method of particle ID creation. The first particle created is ‘0’ and the next ‘1’, and so on.
Private Functions
Friends
- friend class icecube::serialization::access
-
inline I3ParticleID()¶
-
class I3Position : public I3FrameObject¶
- #include <I3Position.h>
Public Types
Public Functions
-
inline I3Position()¶
Default constructor
-
I3Position(double x, double y, double z, RefFrame f)¶
Constructor for different coordinate systems
The meaning of this constructor depends on the value of RefFrame. If it is I3Position::car the three coordinates are treated as cartesian x, y, and z If it is I3Position::sph the three coordinates are treated as spherical r, theta, and phi If it is I3Position::cyl the three coordinates are treated as cylindrical rho, phi, and z
-
inline I3Position(double x, double y, double z)¶
Constructor from cartesian coordinates
-
explicit I3Position(const I3Direction &d)¶
-
inline double GetX() const¶
Provide X of position in cartesian ref frame
-
inline double GetY() const¶
Provide Y of position in cartesian ref frame
-
inline double GetZ() const¶
Provide Z of position in cartesian ref frame
-
double GetR() const¶
Provide R of position in spherical ref frame If non-cartesian have not been calculated, then calculate them first
-
double GetTheta() const¶
Provide Theta of position in spherical ref frame If non-cartesian have not been calculated, then calculate them first
-
double GetPhi() const¶
Provide Phi of position in spherical or cylindrical ref frame If non-cartesian have not been calculated, then calculate them first
-
double GetRho() const¶
Provide Rho of position in cylindrical ref frame If non-cartesian have not been calculated, then calculate them first
-
inline void SetX(double x)¶
Set X position while keeping Y,Z constant. Recalculate SPH and CYL.
-
inline void SetY(double y)¶
Set Y position while keeping X,Z constant. Recalculate SPH and CYL.
-
inline void SetZ(double z)¶
Set Z position while keeping X,Y constant. Recalculate SPH and CYL.
-
void RotateX(double angle)¶
Rotate position around X axis by angle
-
void RotateY(double angle)¶
Rotate position around Y axis by angle
-
void RotateZ(double angle)¶
Rotate position around Z axis by angle
-
inline double Magnitude() const¶
Computes the distance from this position to the origin of the coordinate system (it’s magnitude as a vector)
-
inline double Mag2() const¶
Computes the square of the vector magnitude of the position
-
I3Position GetUnitVector() const¶
-
void Normalize()¶
-
double GetAngularSeparation(const I3Position&) const¶
-
inline I3Position operator-() const¶
Vector inversion (makes the vector point in the opposite direction)
-
inline I3Position &operator+=(const I3Position &rhs)¶
Vector addition
-
inline I3Position &operator-=(const I3Position &rhs)¶
Vector subtraction
-
inline I3Position operator+(const I3Position &rhs) const¶
Vector addition
-
inline I3Position operator-(const I3Position &rhs) const¶
Vector subtraction
-
inline double operator*(const I3Position &rhs) const¶
Scalar (dot) product
-
inline double Dot(const I3Position &rhs) const¶
-
double operator*(const I3Direction&) const¶
Scalar (dot) product
-
inline double Dot(const I3Direction &rhs) const¶
-
inline I3Position &operator*=(double a)¶
Multiplication by a scalar
-
inline I3Position &operator/=(double a)¶
Division by a scalar
-
inline I3Position operator*(double a) const¶
Multiplication by a scalar
-
inline I3Position operator/(double a) const¶
Division by a scalar
-
inline I3Position Cross(const I3Position &d) const¶
Vector (cross) product
-
I3Position Cross(const I3Direction&) const¶
Vector (cross) product
-
inline bool operator==(const I3Position &rhs) const¶
-
inline bool operator!=(const I3Position &rhs) const¶
Private Functions
-
void CalcCarFromSph(double r_, double theta_, double phi_)¶
-
void CalcCarFromCyl(double rho_, double phi_)¶
Friends
- friend class icecube::serialization::access
-
inline I3Position()¶
-
class I3Quaternion : public I3FrameObject¶
- #include <I3Quaternion.h>
Public Functions
-
inline I3Quaternion()¶
Default constructor. Sets all elements to zero.
-
inline I3Quaternion(double x, double y, double z, double w)¶
Element-wise constructor. Creates a new quaternion based on the elements given as arguments.
-
inline I3Quaternion(const I3Quaternion &q)¶
Copy constructor.
-
inline ~I3Quaternion()¶
-
inline void set(double x, double y, double z, double w)¶
Element-wise setter.
-
inline double getX() const¶
-
inline double getY() const¶
-
inline double getZ() const¶
-
inline double getW() const¶
-
inline I3Quaternion operator=(const I3Quaternion &q)¶
-
inline I3Quaternion operator+(const I3Quaternion &q) const¶
-
inline I3Quaternion operator-(const I3Quaternion &q) const¶
-
inline I3Quaternion operator*(const I3Quaternion &q) const¶
-
inline I3Quaternion operator/(const I3Quaternion &q) const¶
-
inline I3Quaternion operator*(double s) const¶
-
inline I3Quaternion operator/(double s) const¶
-
inline I3Quaternion operator+=(const I3Quaternion &q)¶
-
inline I3Quaternion operator-=(const I3Quaternion &q)¶
-
inline I3Quaternion operator*=(const I3Quaternion &q)¶
Note
This infix operator implements a right multiplication. There is NO infix operator for left multiplication.
-
inline I3Quaternion operator/=(const I3Quaternion &q)¶
Note
This infix operator implements a right division. There is NO infix operator for left division (q.inverse()*(*this)).
-
inline I3Quaternion operator*=(double s)¶
-
inline I3Quaternion operator/=(double s)¶
-
inline bool operator!=(const I3Quaternion &q) const¶
-
inline bool operator==(const I3Quaternion &q) const¶
-
inline double norm() const¶
returns the norm of this quaternion
-
inline double magnitude() const¶
returns the magnitude of this quaternion
-
inline I3Quaternion scale(double s) const¶
returns a new quaternion where each entry is multiplied by a scalar s
-
inline I3Quaternion conjugate() const¶
returns the conjugate of this quaternion
-
inline I3Quaternion inverse() const¶
returns the inverse of this quaternion
-
inline I3Quaternion unit() const¶
returns the unit quaternion of this quaternion
-
inline void rot3VectorInPlace(double v[3]) const¶
rotates a 3-vector v by this quaternion. The rotation is performed in-place, the old vector is destroyed.
-
inline void rot3VectorInPlace(double &v0, double &v1, double &v2) const¶
rotates a 3-vector v by this quaternion. The rotation is performed in-place, the old vector is destroyed.
-
inline void rotatedXAxis(double &xRes, double &yRes, double &zRes) const¶
Rotates the vector (1,0,0) using this quaternion. Will return invalid data if the quaternion is not normalized.
-
inline void rotatedYAxis(double &xRes, double &yRes, double &zRes) const¶
Rotates the vector (0,1,0) using this quaternion. Will return invalid data if the quaternion is not normalized.
-
inline void rotatedZAxis(double &xRes, double &yRes, double &zRes) const¶
Rotates the vector (0,0,1) using this quaternion. Will return invalid data if the quaternion is not normalized.
-
inline I3Direction rotate(const I3Direction &dir) const¶
Rotates a given I3Direction by this quaternion and returns the result as a new object.
-
inline I3Position rotate(const I3Position &pos) const¶
Rotates a given I3Position by this quaternion and returns the result as a new object.
Friends
- friend class icecube::serialization::access
-
inline I3Quaternion()¶
-
class I3RecoHit¶
- #include <I3RecoHit.h>
Public Functions
-
inline I3RecoHit()¶
-
~I3RecoHit()¶
-
inline double GetTime() const¶
-
inline void SetTime(double time)¶
-
inline int GetID() const¶
-
inline void SetID(const int hitid)¶
-
inline int GetSourceIndex() const¶
GetSourceIndex - The Source Index can be used to keep track of which rawReadout index (from readout vector, like DOMLaunchSeries, that gave rise to this particular hit. Index value defaults to -1.
-
inline void SetSourceIndex(const int srcid)¶
SetSourceIndex - The Source Index can be used to keep track of which rawReadout index (from readout vector, like DOMLaunchSeries, that gave rise to this particular hit. Index value defaults to -1.
Friends
- friend class icecube::serialization::access
-
inline I3RecoHit()¶
-
class I3RecoPulse¶
- #include <I3RecoPulse.h>
Public Functions
-
inline I3RecoPulse()¶
Construct a pulse with all properties initialized to Not-a-Number.
-
inline flags_t GetFlags() const¶
Get the flag values pertaining to this pulse, as a bitwise combination.
-
inline void SetFlags(flags_t flags)¶
Set the flag values pertaining to this pulse, as a bitwise combination.
-
inline double GetTime() const¶
Get the start time of the pulse.
-
inline void SetTime(double time)¶
Set the start time of the pulse.
-
inline float GetCharge() const¶
Get the amplitude of the pulse in units of ideally amplified photoelectrons.
-
inline void SetCharge(float charge)¶
Set the amplitude of the pulse in units of ideally amplified photoelectrons.
-
inline float GetWidth() const¶
The time between this pulse and the subsequent basis function used in the pulse unfolding.
This quantity can be used to approximate the time interval within which the pulse charged was observed as [ GetTime() , GetTime() + GetWidth() ]. This approximation becomes dubious, however, when the charge density is high (such that several adjacent basis functions in the unfolding were assigned nonzero amplitudes).
-
inline void SetWidth(float width)¶
Store the time between this pulse and the subsequent basis function used in the pulse unfolding.
-
~I3RecoPulse()¶
-
bool operator==(const I3RecoPulse &rhs) const¶
-
inline bool operator!=(const I3RecoPulse &rhs) const¶
Friends
- friend class icecube::serialization::access
-
inline I3RecoPulse()¶
-
class I3RecoPulseSeriesMapApplySPECorrection : public I3FrameObject¶
- #include <I3RecoPulseSeriesMapApplySPECorrection.h>
Public Functions
-
I3RecoPulseSeriesMapApplySPECorrection(const std::string &pulses_key, const std::string &calibration_key)¶
-
I3RecoPulseSeriesMapApplySPECorrection()¶
$Id$
Copyright (C) 2016 Claudio Kopper ckopper@icecube.wisc.edu Copyright (C) 2016 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
bool operator==(const I3RecoPulseSeriesMapApplySPECorrection&) const¶
-
bool operator!=(const I3RecoPulseSeriesMapApplySPECorrection&) const¶
Private Functions
- SET_LOGGER ("I3RecoPulseSeriesMapApplySPECorrection")
Private Members
-
mutable I3RecoPulseSeriesMapPtr shifted_¶
Friends
- friend class icecube::serialization::access
-
I3RecoPulseSeriesMapApplySPECorrection(const std::string &pulses_key, const std::string &calibration_key)¶
-
class I3RecoPulseSeriesMapCombineByModule : public I3FrameObject¶
- #include <I3RecoPulseSeriesMapCombineByModule.h>
Public Functions
-
I3RecoPulseSeriesMapCombineByModule()¶
$Id$
Copyright (C) 2018 Jakob van Santen jakob.van.santen@desy.de Copyright (C) 2018 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
bool operator==(const I3RecoPulseSeriesMapCombineByModule&) const¶
-
bool operator!=(const I3RecoPulseSeriesMapCombineByModule&) const¶
Private Functions
- SET_LOGGER ("I3RecoPulseSeriesMapCombineByModule")
Friends
- friend class icecube::serialization::access
-
I3RecoPulseSeriesMapCombineByModule()¶
-
class I3RecoPulseSeriesMapMask : public I3FrameObject¶
- #include <I3MapOMKeyMask.h>
Public Functions
-
I3RecoPulseSeriesMapMask(const I3Frame&, const std::string &key, const I3RecoPulseSeriesMap &subset)¶
-
I3RecoPulseSeriesMapMask(const I3Frame&, const std::string &key, boost::function<bool(const OMKey&, size_t, const I3RecoPulse&)> predicate)¶
-
I3RecoPulseSeriesMapMask()¶
$Id$
Copyright (C) 2011 Jakob van Santen vansanten@wisc.edu Copyright (C) 2011 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
void Set(const OMKey&, const I3RecoPulse&, bool)¶
-
void SetNone()¶
-
boost::shared_ptr<const I3RecoPulseSeriesMap> Apply(const I3Frame &frame) const¶
-
bool HasAncestor(const I3Frame &frame, const std::string &key) const¶
Return true if this mask is derived from key
-
boost::shared_ptr<I3RecoPulseSeriesMapMask> Repoint(const I3Frame &frame, const std::string &key) const¶
Convert this mask into a form that can be applied directly to key without resort to intermediate masks.
-
unsigned GetSum() const¶
-
bool GetAnySet() const¶
-
bool GetAllSet() const¶
-
I3RecoPulseSeriesMapMask operator&(const I3RecoPulseSeriesMapMask&) const¶
-
I3RecoPulseSeriesMapMask operator|(const I3RecoPulseSeriesMapMask&) const¶
-
I3RecoPulseSeriesMapMask operator^(const I3RecoPulseSeriesMapMask&) const¶
-
I3RecoPulseSeriesMapMask Remove(const I3RecoPulseSeriesMapMask&) const¶
Equivalent to this & ~other
-
I3RecoPulseSeriesMapMask &operator&=(const I3RecoPulseSeriesMapMask&)¶
-
I3RecoPulseSeriesMapMask &operator|=(const I3RecoPulseSeriesMapMask&)¶
-
I3RecoPulseSeriesMapMask &operator^=(const I3RecoPulseSeriesMapMask&)¶
-
bool operator==(const I3RecoPulseSeriesMapMask&) const¶
-
bool operator!=(const I3RecoPulseSeriesMapMask&) const¶
Private Functions
-
inline void ResetCache()¶
-
int FindKey(const OMKey &key, std::list<bitmask>::iterator &list_it, const I3RecoPulseSeriesMap::mapped_type **vec)¶
-
boost::shared_ptr<I3RecoPulseSeriesMapMask> CollapseLevel(const I3Frame &frame) const¶
Collapse this mask with its source, making it depend only on its grandparent.
-
template<typename BinaryOperator>
I3RecoPulseSeriesMapMask ApplyBinaryOperator(const I3RecoPulseSeriesMapMask&) const¶
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
- SET_LOGGER ("I3RecoPulseSeriesMapMask")
Private Static Functions
-
static bool IsOrderedSubset(const I3RecoPulseSeriesMap&, const I3RecoPulseSeriesMap&)¶
-
static void FillSubsetMask(bitmask&, const I3RecoPulseSeriesMap::mapped_type&, const I3RecoPulseSeriesMap::mapped_type&)¶
-
I3RecoPulseSeriesMapMask(const I3Frame&, const std::string &key, const I3RecoPulseSeriesMap &subset)¶
-
class I3RecoPulseSeriesMapUnion : public I3FrameObject¶
- #include <I3MapOMKeyUnion.h>
Public Functions
-
I3RecoPulseSeriesMapUnion()¶
$Id$
Copyright (C) 2011 Jakob van Santen vansanten@wisc.edu Copyright (C) 2011 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
bool operator==(const I3RecoPulseSeriesMapUnion&) const¶
-
bool operator!=(const I3RecoPulseSeriesMapUnion&) const¶
Private Functions
- SET_LOGGER ("I3RecoPulseSeriesMapUnion")
Friends
- friend class icecube::serialization::access
-
I3RecoPulseSeriesMapUnion()¶
-
class I3ScintGeo¶
- #include <I3ScintGeo.h>
Public Types
Public Functions
-
inline I3ScintGeo()¶
-
~I3ScintGeo()¶
-
inline void SetPosition(I3Position &pos)¶
-
inline I3Position GetPosition() const¶
-
inline void SetOrientation(I3Orientation &orient)¶
-
inline I3Orientation GetOrientation() const¶
-
inline void SetHeightAboveSnow(double height)¶
-
inline double GetHeightAboveSnow() const¶
-
inline bool operator==(const I3ScintGeo &rhs) const¶
-
inline bool operator!=(const I3ScintGeo &rhs) const¶
Friends
- friend class icecube::serialization::access
-
inline I3ScintGeo()¶
-
class I3Stochastic¶
Public Functions
-
inline I3Stochastic()¶
-
I3Stochastic(const I3Particle &parent, const I3Particle &stochastic)¶
-
inline ~I3Stochastic()¶
-
bool operator<(const I3Stochastic &other) const¶
-
I3Particle Reconstruct(const I3Particle &parent) const¶
Public Static Functions
-
static bool IsCompressible(const I3Particle &parent, const I3Particle &stochastic)¶
Private Static Functions
-
static void Propagate(I3Particle &p, double time)¶
I3Particle::ShiftAlongTrack() without stupid assert()s.
Friends
- friend class icecube::serialization::access
-
inline I3Stochastic()¶
-
class I3SuperDST : public I3FrameObject¶
- #include <I3SuperDST.h>
Public Functions
-
inline I3SuperDST()¶
-
I3SuperDST(const I3RecoPulseSeriesMap &pulses)¶
Create a compressed representation of an event from a pulse map.
See also
- Parameters:
pulses – Map containing pulses extracted from all InIce and IceTop launches.
-
I3RecoPulseSeriesMapConstPtr Unpack() const¶
Expand charge stamps into fake I3RecoPulses, packing everything into a single map.
-
I3MapKeyVectorInt GetEncodedSizes() const¶
-
inline std::list<I3SuperDSTReadout> GetHLCReadouts() const¶
-
inline std::list<I3SuperDSTReadout> GetSLCReadouts() const¶
-
inline void InitDebug()¶
-
bool operator==(const I3SuperDST &rhs) const¶
-
inline bool operator!=(const I3SuperDST &rhs) const¶
Public Static Functions
-
static inline void SetUseWidthForATWDFlag(bool v)¶
-
static inline bool GetUseWidthForATWDFlag()¶
-
static uint32_t EncodeOMKey(const OMKey &key, unsigned int maxbits = 16, unsigned int version = i3superdst_version_)¶
-
static OMKey DecodeOMKey(uint32_t number, unsigned int version = i3superdst_version_)¶
-
static uint32_t EncodeTime(double time, unsigned int maxbits = 16, unsigned int version = i3superdst_version_)¶
-
static double DecodeTime(uint32_t dt, unsigned int version = i3superdst_version_)¶
-
static uint32_t EncodeWidth(double width, unsigned int maxbits = 16, unsigned int version = i3superdst_version_)¶
-
static double DecodeWidth(uint32_t code, unsigned int version = i3superdst_version_)¶
-
static uint32_t EncodeCharge(double charge, unsigned int maxbits = 16, unsigned int version = i3superdst_version_, I3SuperDSTUtils::Discretization mode = I3SuperDSTUtils::LINEAR)¶
-
static double DecodeCharge(uint32_t logcharge, unsigned int version = i3superdst_version_, I3SuperDSTUtils::Discretization mode = I3SuperDSTUtils::LINEAR)¶
-
static double FindStartTime(const I3RecoPulseSeriesMap &pmap)¶
Private Functions
-
void AddPulseMap(const I3RecoPulseSeriesMap &pulses, double t0)¶
-
void AddPulseMap(const I3RecoPulseSeriesMap &pulses)¶
-
std::list<I3SuperDSTReadout> GetReadouts(bool hlc) const¶
-
template<class Archive>
void save(Archive &ar, unsigned version, std::map<OMKey, std::vector<int>> *sizes) const¶
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
- SET_LOGGER ("I3SuperDST")
Private Members
-
std::list<I3SuperDSTReadout> readouts_¶
-
mutable I3RecoPulseSeriesMapPtr unpacked_¶
-
unsigned version_¶
Private Static Attributes
-
static const double tmin_ = -512.0¶
-
static bool use_width_for_atwd_flag_ = false¶
Friends
- friend class icecube::serialization::access
-
inline I3SuperDST()¶
-
class I3SuperDSTChargeStamp¶
- #include <I3SuperDST.h>
Public Functions
-
I3SuperDSTChargeStamp(double time, double charge, double width, bool hlc, I3SuperDSTUtils::Discretization format = I3SuperDSTUtils::LINEAR)¶
-
inline I3SuperDSTChargeStamp(uint32_t timecode, uint32_t chargecode, uint32_t widthcode, bool hlc, I3SuperDSTUtils::Discretization format = I3SuperDSTUtils::LINEAR, unsigned version = i3superdst_version_)¶
-
double GetTime() const¶
-
double GetWidth() const¶
-
double GetCharge() const¶
-
inline I3SuperDSTUtils::Discretization GetChargeFormat() const¶
-
inline bool GetLCBit() const¶
-
void SetTimeReference(const I3SuperDSTChargeStamp &other)¶
-
bool operator==(const I3SuperDSTChargeStamp &rhs) const¶
-
inline bool operator!=(const I3SuperDSTChargeStamp &rhs) const¶
Private Functions
- SET_LOGGER ("I3SuperDST")
-
I3SuperDSTChargeStamp(double time, double charge, double width, bool hlc, I3SuperDSTUtils::Discretization format = I3SuperDSTUtils::LINEAR)¶
-
struct I3SuperDSTReadout¶
- #include <I3SuperDST.h>
Public Functions
-
I3SuperDSTReadout(const OMKey &om, bool hlc, const std::list<I3RecoPulse>::const_iterator &start, const std::list<I3RecoPulse>::const_iterator &end, double t0 = 0.0)¶
-
inline I3SuperDSTReadout()¶
-
void SetTimeReference(const I3SuperDSTReadout &other)¶
-
void Relativize()¶
-
double GetTime() const¶
-
inline bool GetLCBit() const¶
-
inline bool operator<(const I3SuperDSTReadout &other) const¶
-
bool operator==(const I3SuperDSTReadout &rhs) const¶
-
inline bool operator!=(const I3SuperDSTReadout &rhs) const¶
- SET_LOGGER ("I3SuperDST")
-
I3SuperDSTReadout(const OMKey &om, bool hlc, const std::list<I3RecoPulse>::const_iterator &start, const std::list<I3RecoPulse>::const_iterator &end, double t0 = 0.0)¶
-
class I3SuperDSTTimer¶
-
class I3SuperDSTTrigger¶
- #include <I3SuperDSTTrigger.h>
Public Functions
-
I3SuperDSTTrigger(const I3Trigger&, const I3DetectorStatus&)¶
-
const TriggerKey &GetTriggerKey(const I3DetectorStatus&) const¶
-
double GetTime() const¶
-
double GetLength() const¶
-
bool operator<(const I3SuperDSTTrigger&) const¶
-
bool operator==(const I3SuperDSTTrigger&) const¶
-
void SetTimeReference(const I3SuperDSTTrigger&)¶
Private Functions
- SET_LOGGER ("I3SuperDST")
Friends
- friend class I3SuperDSTTriggerSeries
-
I3SuperDSTTrigger(const I3Trigger&, const I3DetectorStatus&)¶
-
class I3SuperDSTTriggerSeries : public std::list<I3SuperDSTTrigger>, public I3FrameObject¶
- #include <I3SuperDSTTrigger.h>
Public Functions
-
inline I3SuperDSTTriggerSeries()¶
-
I3SuperDSTTriggerSeries(const I3TriggerHierarchy&, const I3DetectorStatus&)¶
-
boost::shared_ptr<I3TriggerHierarchy> Unpack(const I3DetectorStatus&) const¶
Private Members
-
mutable boost::shared_ptr<I3TriggerHierarchy> unpacked_¶
Friends
- friend class icecube::serialization::access
-
inline I3SuperDSTTriggerSeries()¶
-
struct I3TankCalibrationBackwardsCompat¶
- #include <Deprecated.hpp>
-
struct I3TankGeo¶
- #include <I3TankGeo.h>
Public Types
Public Functions
-
inline I3TankGeo()¶
Public Members
-
I3Position position¶
-
double orientation¶
-
double tankradius¶
-
double tankheight¶
-
double fillheight¶
-
double snowheight¶
Friends
- friend class icecube::serialization::access
-
inline I3TankGeo()¶
-
class I3Time : public I3FrameObject¶
- #include <I3Time.h>
Public Types
Public Functions
-
I3Time()¶
default constructor sets the time to year 0, daq UTC time 0. There’s no ‘nan’ for unsigned and long long
-
I3Time(int32_t year, int64_t daqTime)¶
creates the object with the given times as the DAQ time
-
explicit I3Time(double mjd)¶
creates the object with the given double as ModJulianDay
-
void SetDaqTime(int year, int64_t daqTime)¶
Sets the time in the ‘daq’ style where.
- Parameters:
year – The year. Something like 2005.
daqTime – The number of tenths of nanoseconds since the year began
-
void SetModJulianTime(int32_t modJulianDay, int32_t sec, double ns)¶
Sets the time in the Modified julian convention.
- Parameters:
modJulianDay – the modified julian day to set
sec – the number of secs after this modified julian day began
ns – the number of ns after this second began.
-
void SetModJulianTimeDouble(double mjd)¶
Sets the time in the Modified julian convention as a direct double.
- Parameters:
mjd – the modified julian day as double to set
-
void SetUTCCalDate(int year, int month, int day, int hour, int minute, int sec, double ns = 0.0)¶
Sets the time in the UTC calendar date convention.
- Parameters:
year – The year. Something like 2005.
month – The month. A number in the range of [1, 12].
day – The day. A number between 1 and the maximum number of days in the month
hour – The hour. A number in the range of [0, 23].
minute – The minute. A number in the range of [0, 59].
sec – The second. A number in the range of [0, 59].
ns – the number of ns in the range of [0,1e9) after this second began.
-
void SetUnixTime(time_t unixTime, double ns = 0)¶
Sets the time in the Unix convention.
- Parameters:
unixTime – time since the Epoch (00:00:00 UTC, January 1, 1970), measured in seconds ignoring leap seconds
ns – the number of ns after this second began.
-
int32_t GetModJulianDay() const¶
Gets the Modified Julian day.
-
int32_t GetModJulianSec() const¶
Gets the number of seconds since this Modified Julian day began.
Note
Modified Julian days begin at midnight
-
int32_t GetModJulianMicroSec() const¶
Gets the number of microseconds since this second began.
-
double GetModJulianNanoSec() const¶
Gets the number of nanoseconds since this second began.
-
double GetModJulianDayDouble() const¶
Gets the Modified Julian day as a double including fractional days.
Note
This is a suitable to pass to coordinate services as the time
-
time_t GetUnixTime() const¶
Gets the time in Unix convention.
- Returns:
The number of seconds since the Epoch (00:00:00 UTC, January 1, 1970)
-
int GetUTCYear() const¶
Gets the year in the UTC convention.
-
int64_t GetUTCDaqTime() const¶
Gets the appropriate time for the DAQ. tenths of nanoseconds since the start of the UTC year.
-
int32_t GetUTCDayOfMonth() const¶
Gets the day of the month. This is calendar day, so there is no ‘0’.
-
int32_t GetUTCSec() const¶
Gets the number of seconds since this UTC year started.
-
double GetUTCNanoSec() const¶
Gets the number of nanoseconds since this current second started.
-
std::string GetUTCString(std::string format = "%Y-%m-%d %H:%M:%S UTC") const¶
Gets a string representing the time in UTC.
-
bool IsLeapSecond() const¶
returns weather this current second is is a leap second
-
bool operator==(const I3Time &rhs) const¶
equality operator.
- Parameters:
rhs – the I3Time to compare this one to.
- Returns:
true if the times are the same
-
inline bool operator!=(const I3Time &rhs) const¶
inequality operator
- Parameters:
rhs – the I3Time to compare this one to.
- Returns:
false if the times are different
-
bool operator<(const I3Time &rhs) const¶
comparison operator. Compares first the year and then the DAQ time
- Returns:
true if the lhs should be ordered before the rhs
-
bool operator>(const I3Time &rhs) const¶
comparison operator. Compares first the year and then the DAQ time
- Returns:
true if the lhs should be ordered after the rhs
Public Static Functions
-
static double modjulianday(int year)¶
-
static double modjulianday(int year, int64_t daqTime)¶
-
static double julianday(int year)¶
-
static double julianday(int year, int64_t daqTime)¶
-
static int32_t yearOf(double modjulianday)¶
-
static int32_t DayOfYear(int64_t daqTime)¶
-
static int32_t DayOfYear(double modjulianday)¶
Public Static Attributes
-
static const char *DRIVING_TIME = "DrivingTime"¶
Friends
- friend class icecube::serialization::access
-
I3Time()¶
-
class I3TimeWindow : public I3FrameObject¶
- #include <I3TimeWindow.h>
Public Types
Public Functions
-
inline I3TimeWindow()¶
-
inline I3TimeWindow(double start, double stop)¶
-
inline double GetStart() const¶
-
inline double GetStop() const¶
-
inline double GetLength() const¶
-
inline bool Contains(double t) const¶
Return true if the given time is inside this time window.
- Parameters:
t – a time
-
bool operator<(const I3TimeWindow &other) const¶
-
bool operator==(const I3TimeWindow &other) const¶
-
OverlapType GetOverlapType(const I3TimeWindow&) const¶
Friends
- friend class I3TimeWindowSeries
- friend class icecube::serialization::access
-
inline I3TimeWindow()¶
-
class I3TimeWindowSeries : public std::list<I3TimeWindow>, public I3FrameObject¶
- #include <I3TimeWindow.h>
Public Functions
-
I3TimeWindowSeries operator|(const I3TimeWindowSeries &other) const¶
-
I3TimeWindowSeries operator&(const I3TimeWindowSeries &other) const¶
-
I3TimeWindowSeries operator~() const¶
-
inline I3TimeWindowSeries()¶
-
void push_back(const I3TimeWindow&)¶
Friends
- friend class icecube::serialization::access
-
I3TimeWindowSeries operator|(const I3TimeWindowSeries &other) const¶
-
template<typename T>
struct I3Tree : public I3FrameObject, public tree<T>¶ - #include <I3Tree.h>
STL-like container class for n-ary trees.
-
class I3Trigger¶
- #include <I3Trigger.h>
Public Functions
-
inline I3Trigger()¶
Default constructor.
-
~I3Trigger()¶
Destructor.
-
inline double GetTriggerTime() const¶
Retrieves time at which the trigger was issued.
- Returns:
Trigger time.
-
inline void SetTriggerTime(double time)¶
Sets time at which the trigger was issued.
- Parameters:
time – Trigger time.
-
inline double GetTriggerLength() const¶
Retrieves duration of triggered readout window.
- Returns:
Trigger duration.
-
inline void SetTriggerLength(double length)¶
Sets duration of triggered readout window.
- Parameters:
length – Trigger duration.
-
inline bool GetTriggerFired() const¶
Indicates, if the trigger was fired (used for simulations).
- Returns:
true, if the trigger was fired.
-
inline void SetTriggerFired(bool fired)¶
Sets, if the trigger was fired (used for simulations).
- Parameters:
fired – Indicates, if the trigger was fired.
-
inline const TriggerKey &GetTriggerKey() const¶
Gets trigger key.
- Returns:
Key.
-
inline TriggerKey &GetTriggerKey()¶
-
inline void SetTriggerKey(const TriggerKey &key)¶
Private Functions
- SET_LOGGER ("I3Trigger")
Private Static Attributes
-
static const double FROM_TENTH_NS_TO_NS_CORRECTION_FACTOR = 0.1¶
Friends
- friend class icecube::serialization::access
-
inline I3Trigger()¶
-
struct I3TriggerReadoutConfig¶
- #include <I3TriggerStatus.h>
A simple struct to hold the per-subdetector readout configurations.
Public Functions
-
inline I3TriggerReadoutConfig()¶
-
inline bool operator==(const I3TriggerReadoutConfig &rhs) const¶
-
inline bool operator!=(const I3TriggerReadoutConfig &rhs) const¶
-
inline I3TriggerReadoutConfig()¶
-
class I3TriggerStatus¶
- #include <I3TriggerStatus.h>
Public Types
Public Functions
-
inline I3TriggerStatus()¶
Default constructor.
-
inline I3TriggerStatus(const std::string &name, const std::map<std::string, std::string> &settings)¶
Constructor.
- Parameters:
name – Name of the trigger.
settings – Trigger settings: string, integer values.
-
inline ~I3TriggerStatus()¶
Destructor.
-
inline const std::map<std::string, std::string> &GetTriggerSettings() const¶
Get trigger settings.
- Returns:
Trigger settings: string, string values (contents vary by trigger type).
-
template<typename T>
void GetTriggerConfigValue(const std::string &key, boost::optional<T> &value) const¶ ‘Get’s the trigger value for the given key. The underlying value is stored as a string ( just like in the DB ) and is converted on-the-fly to whichever type you want. Currently only bool, int, float, double, and string are supported.
-
template<typename T>
void SetTriggerConfigValue(const std::string &key, T value)¶ Sets the trigger config value. Currently the only supported types are bool, int, float, double, string, and const char*, but since the underlying code uses boost::lexical cast ( which uses stringstream, it’s trivial to add support for any streamable type.
-
inline const std::map<Subdetector, I3TriggerReadoutConfig> &GetReadoutSettings() const¶
-
inline std::map<Subdetector, I3TriggerReadoutConfig> &GetReadoutSettings()¶
-
inline bool operator==(const I3TriggerStatus &rhs) const¶
-
inline bool operator!=(const I3TriggerStatus &rhs) const¶
Public Members
-
std::map<Subdetector, I3TriggerReadoutConfig> readoutconfigs_¶
Friends
- friend class icecube::serialization::access
-
inline I3TriggerStatus()¶
-
class I3TWRFrag¶
- #include <I3TWRFrag.h>
A fragment of the direct/raw digital readout of an Amanda OM using the TWR DAQ.
The digital readout is fragment into waveform elements that show some pulse activity, to reduce the data acquired by a TWR. Every fragment has a start bin that determines the position of the fragment within the waveform relative to its start.
Public Functions
-
inline I3TWRFrag()¶
Default constructor.
-
~I3TWRFrag()¶
Destructor.
-
inline unsigned int GetStartBin() const¶
Returns the position of the fragment within the waveform.
- Returns:
The position.
-
inline void SetStartBin(unsigned int startBin)¶
Sets the position of the fragment within the waveform.
- Parameters:
startBin – The position.
Friends
- friend class icecube::serialization::access
-
inline I3TWRFrag()¶
-
class I3TWRLaunch¶
- #include <I3TWRLaunch.h>
The direct/raw digital readout of an Amanda OM using the TWR DAQ.
Public Functions
-
inline I3TWRLaunch()¶
Default constructor.
-
~I3TWRLaunch()¶
Destructor.
-
inline unsigned int GetBaseline() const¶
Returns the baseline/mean value of the waveform (as determined by the TWR DAQ).
- Returns:
The baseline/mean value.
-
inline void SetBaseline(unsigned int baseline)¶
Sets the baseline/mean value of the waveform (as determined by the TWR DAQ).
- Parameters:
baseline – The baseline/mean value.
Friends
- friend class icecube::serialization::access
-
inline I3TWRLaunch()¶
-
template<typename T>
struct I3Vector : public std::vector<T>, public I3FrameObject¶ - #include <I3Vector.h>
Copyright (C) 2006 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Public Functions
-
inline I3Vector()¶
-
class I3VEMCalibration¶
- #include <I3VEMCalibration.h>
Public Functions
-
inline I3VEMCalibration()¶
-
~I3VEMCalibration()¶
-
inline bool operator==(const I3VEMCalibration &rhs) const¶
-
inline bool operator!=(const I3VEMCalibration &rhs) const¶
Public Members
-
double pePerVEM¶
Average number of PE per VEM
-
double muPeakWidth¶
Width of the the average muon peak for this tank in PE
-
double hglgCrossOver¶
PE threshold for the HG pulses over which the corresponding LG pulses in the tank are used. (This value is only valid/important for HG DOMs)
-
double corrFactor¶
Optional correction factor to adjust high gain and low gain DOMs (Default value is set to 1)
Friends
- friend class icecube::serialization::access
-
inline I3VEMCalibration()¶
-
class I3Waveform¶
- #include <I3Waveform.h>
Public Types
-
enum Source¶
Values:
-
enumerator ATWD¶
-
enumerator FADC¶
-
enumerator TWR_ELECTRICAL¶
-
enumerator TWR_OPTICAL¶
-
enumerator ETC¶
-
enumerator SLC¶
-
enumerator SiPM¶
-
enumerator ATWD¶
-
enum Status¶
Describes possible artifacts within the data.
The waveform is a hardware independent representation of the data acquired. Nevertheless, it can carry artifacts due to hardware imperfections.
Saturation is an example, which is hard to recognize, since the waveform is a vector of doubles. Of course, it is still possible to recognize saturation using some more or less fancy algorithm, but the module converting the hardware dependent data into hardware independent data can recognize artifacts much easier. It should record this information using this enumeration.
If the DOM calibrator combines the ATWD channels, it should call bins that saturate even in the lowest amplified channel SATURATED, bins that saturate only in some channels COMBINED and bins that do not saturate in the highest amplified channel VIRGINAL. Bins that have drooped below the bias voltage should be marked as UNDERSHOT. These will be combined by GetStatus() in cases where the waveform is clipped on both sides, e.g. a droopy FADC waveform that saturates at the beginning and undershoots in the middle will be marked SATURATED | UNDERSHOT.
CHANGED in I3Waveform version 3: SHADY => COMBINED, ADULTERATED => SATURATED
Values:
-
enumerator VIRGINAL¶
-
enumerator COMBINED¶
-
enumerator SATURATED¶
-
enumerator UNDERSHOT¶
-
enumerator VIRGINAL¶
Public Functions
- union I3Waveform::SourceCompound __attribute ((packed))
-
unsigned GetStatus() const¶
-
int GetChannel() const¶
-
inline I3Waveform()¶
-
~I3Waveform()¶
-
inline double GetStartTime() const¶
-
inline void SetStartTime(double startTime)¶
-
inline double GetBinWidth() const¶
-
inline void SetBinWidth(double binWidth)¶
-
inline const std::vector<StatusCompound> &GetWaveformInformation() const¶
Returns a status information for this waveform.
- Returns:
A collection of status compounds. A status compound consists of an interval and a status information. It describes the status of all waveform bins with indices [GetInterval().first, GetInterval().second). If there are waveform bins not described by a status compound, these bins are assumed to have a status equal to VIRGINAL, e. g. GetWaveformInformation().empty() equal true means, all waveform bins are good.
-
inline std::vector<StatusCompound> &GetWaveformInformation()¶
Returns a status information for this waveform.
- Returns:
A collection of status compounds. A status compound consists of an interval and a status information. It describes the status of all waveform bins with indices [GetInterval().first, GetInterval().second). If there are waveform bins not described by a status compound, these bins are assumed to have a status equal to VIRGINAL, e. g. GetWaveformInformation().empty() equal true means, all waveform bins are good.
-
inline void SetWaveformInformation(const std::vector<StatusCompound> &info)¶
Set the status information for this waveform.
Note: This method was added since there is a set method for the waveforms, too. One might want to use the non-const get methods instead.
- Parameters:
info – The status information.
-
inline Source GetSource() const¶
Returns the source flag. This is a legacy function to maintain compatibility with old code. It returns I3Waveform::SLC for SLC waveforms and the digitizer for HLC waveforms.
To get more detailed information use IsHLC and GetDigitizer instead.
-
inline bool IsHLC() const¶
-
inline bool IsSLC() const¶
-
inline void SetHLC(bool hlc)¶
-
inline unsigned GetSourceIndex() const¶
Get the source index for this waveform (e.g. the ATWD chip ID)
-
inline void SetSourceIndex(unsigned num)¶
Public Members
-
enum I3Waveform::Status __attribute¶
Public Static Functions
-
static unsigned GetStatus(const std::vector<StatusCompound> &waveformInfo)¶
Returns a summary of a given waveform/status information.
- Returns:
ADULTERATED/SHADY if any included status compound is ADULTERATED/SHADY, or VIRGINAL.
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Private Members
-
double startTime_¶
-
double binWidth_¶
-
std::vector<StatusCompound> waveformInfo_¶
-
SourceCompound source_¶
Friends
- friend class icecube::serialization::access
-
enum Source¶
-
class IceActKey¶
- #include <IceActKey.h>
Public Functions
-
inline IceActKey()¶
-
inline IceActKey(int stn, int tel)¶
-
inline ~IceActKey()¶
-
inline void SetStationID(int stn)¶
-
inline void SetTelescopeID(int tel)¶
-
inline int GetStationID() const¶
-
inline int GetTelescopeID() const¶
Friends
- friend class icecube::serialization::access
-
inline IceActKey()¶
-
class iterator_base¶
- #include <tree.hh>
Base class for iterators, only pointers stored, no traversal logic.
Subclassed by tree< T, tree_node_allocator >::fixed_depth_iterator, tree< T, tree_node_allocator >::post_order_iterator, tree< T, tree_node_allocator >::pre_order_iterator, tree< T, tree_node_allocator >::sibling_iterator
Public Types
-
typedef T value_type¶
-
typedef T *pointer¶
-
typedef T &reference¶
-
typedef size_t size_type¶
-
typedef ptrdiff_t difference_type¶
Public Functions
-
iterator_base()¶
-
iterator_base(tree_node*)¶
-
T &operator*() const¶
-
T *operator->() const¶
-
void skip_children()¶
When called, the next increment/decrement skips children of this node.
-
unsigned int number_of_children() const¶
Number of children of the node pointed to by the iterator.
-
sibling_iterator begin() const¶
-
sibling_iterator end() const¶
Public Members
-
tree_node *node¶
Protected Attributes
-
bool skip_current_children_¶
-
typedef T value_type¶
-
template<class Derived, class Value, class StorageType>
class iterator_base : public boost::iterator_facade<iterator_base<Derived, Value, StorageType>, Value, boost::forward_traversal_tag>¶ - #include <I3MCTree.h>
Iterator base (for tree-based iterators)
Public Functions
-
inline explicit iterator_base()¶
-
template<typename D, typename V, typename S>
inline explicit iterator_base(const iterator_base<D, V, S> &iter)¶
-
template<typename D, typename S>
inline iterator_base<Derived, Value, StorageType> &operator=(const iterator_base<D, Value, S> &iter)¶
Protected Types
-
typedef iterator_const_traits<Value> const_traits¶
-
typedef const_traits::TreeValue TreeValue¶
-
typedef const_traits::TreeHashMapIter TreeHashMapIter¶
-
typedef iterator_storage_impl<StorageType, Value, TreeValue, TreeHashMapIter> storage_traits¶
Protected Attributes
-
storage_traits node_¶
Private Functions
-
inline bool equal(iterator_base<Derived, Value, StorageType> const &other) const¶
-
inline void increment()¶
Friends
- friend class Tree< T, Key, Hash >
-
inline explicit iterator_base()¶
-
class iterator_base_less¶
- #include <tree.hh>
Comparator class for iterators (compares the actual node content, not pointer values).
Public Functions
-
inline bool operator()(const typename tree<T, tree_node_allocator>::iterator_base &one, const typename tree<T, tree_node_allocator>::iterator_base &two) const¶
-
inline bool operator()(const typename tree<T, tree_node_allocator>::iterator_base &one, const typename tree<T, tree_node_allocator>::iterator_base &two) const¶
-
template<typename ValueType, int dummy = 0>
struct iterator_const_traits¶ Iterator Const Traits
Define TreeValue and TreeHashMapIter types.
-
template<typename StorageType, typename ValueType, typename TreeType, typename TreeHashMapIter>
struct iterator_storage_impl¶ Iterator Storage Class
Keep track of the actual data type storage of the tree, as well as a pointer to the tree itself.
-
template<typename ValueType, typename TreeType, typename TreeHashMapIter>
struct iterator_storage_impl<TreeHashKey, ValueType, TreeType, TreeHashMapIter>¶ Public Functions
-
inline explicit iterator_storage_impl()¶
-
inline explicit iterator_storage_impl(TreeType &t, TreeHashMapIter iter)¶
-
template<typename V, typename TT, typename THMI>
inline iterator_storage_impl(const iterator_storage_impl<TreeHashKey, V, TT, THMI> &rhs)¶
-
template<typename V, typename TT, typename THMI>
inline iterator_storage_impl(const iterator_storage_impl<THMI, V, TT, THMI> &rhs)¶
-
template<typename Storage, typename V, typename TT, typename THMI>
inline iterator_storage_impl<TreeHashKey, ValueType, TreeType, TreeHashMapIter> &operator=(const iterator_storage_impl<Storage, V, TT, THMI> &rhs)¶
-
inline TreeHashKey &operator=(const TreeHashKey &rhs)¶
-
inline const T &operator=(const T &rhs)¶
-
inline bool operator==(const iterator_storage_impl<TreeHashKey, ValueType, TreeType, TreeHashMapIter> &rhs) const¶
-
inline bool operator!=(const iterator_storage_impl<TreeHashKey, ValueType, TreeType, TreeHashMapIter> &rhs) const¶
-
inline explicit iterator_storage_impl()¶
-
template<typename ValueType, typename TreeType, typename TreeHashMapIter>
struct iterator_storage_impl<TreeHashMapIter, ValueType, TreeType, TreeHashMapIter>¶ Public Functions
-
inline explicit iterator_storage_impl()¶
-
inline explicit iterator_storage_impl(TreeType &t, TreeHashMapIter iter)¶
-
template<typename V, typename TT, typename THMI>
inline iterator_storage_impl(const iterator_storage_impl<TreeHashKey, V, TT, THMI> &rhs)¶
-
template<typename V, typename TT, typename THMI>
inline iterator_storage_impl(const iterator_storage_impl<THMI, V, TT, THMI> &rhs)¶
-
template<typename Storage, typename V, typename TT, typename THMI>
inline iterator_storage_impl<TreeHashMapIter, ValueType, TreeType, TreeHashMapIter> &operator=(const iterator_storage_impl<Storage, V, TT, THMI> &rhs)¶
-
inline TreeHashMapIter &operator=(const TreeHashMapIter &rhs)¶
-
inline bool operator==(const iterator_storage_impl<TreeHashMapIter, ValueType, TreeType, TreeHashMapIter> &rhs) const¶
-
inline bool operator!=(const iterator_storage_impl<TreeHashMapIter, ValueType, TreeType, TreeHashMapIter> &rhs) const¶
-
inline explicit iterator_storage_impl()¶
-
template<class Value>
class leaf_iter : public TreeBase::Tree<T, Key, Hash>::iterator_base<leaf_iter<Value>, Value, iterator_const_traits<Value>::TreeHashMapIter>¶ - #include <I3MCTree.h>
Leaf iterator: O(n) Note that there is no ordering of leaves
Public Functions
-
inline explicit leaf_iter()¶
-
inline leaf_iter(const iterator_base<leaf_iter<Value>, Value, TreeHashMapIter> &iter)¶
-
template<typename D, typename S>
inline leaf_iter(const iterator_base<D, Value, S> &iter)¶
Protected Types
-
typedef iterator_const_traits<Value> const_traits¶
-
typedef const_traits::TreeValue TreeValue¶
-
typedef const_traits::TreeHashMapIter TreeHashMapIter¶
-
typedef iterator_storage_impl<TreeHashMapIter, Value, TreeValue, TreeHashMapIter> storage_traits¶
Friends
- friend class Tree< T, Key, Hash >
- friend class iterator_base< leaf_iter< Value >, Value, TreeHashMapIter >
-
inline explicit leaf_iter()¶
-
struct LinearFit¶
- #include <I3DOMCalibration.h>
A struct to hold a linear fit A simple struct to define a linear fit: intercept + slope*x.
Public Functions
-
inline LinearFit()¶
-
inline LinearFit()¶
-
template<typename T, typename Key, typename Hash>
struct load_old_filter¶ - #include <I3MCTree_impl.h>
-
template<typename Key, typename Hash>
struct load_old_filter<I3Particle, Key, Hash>¶ - #include <I3MCTree_impl.h>
Public Static Functions
-
static inline I3Particle call(Tree<I3Particle, Key, Hash> *tree_ptr, const I3Particle &item)¶
-
static inline I3Particle call(Tree<I3Particle, Key, Hash> *tree_ptr, const I3Particle &item)¶
-
class ModuleKey¶
- #include <ModuleKey.h>
A small class which is the string number and om number for a “module”. Most of the time this will be an optical module. Use this when you index something that is specific to an optical module, not to a PMT inside it (it might have multiple PMTs). If you need an index for PMTs (you will probably want this most of the time), use the “OMKey” class.
Public Functions
-
inline ModuleKey()¶
-
inline ModuleKey(int str, unsigned int om)¶
-
inline void SetString(int str)¶
Sets the string number for this OM
-
inline unsigned int GetOM() const¶
gets the OM number on the string
-
inline void SetOM(unsigned int om)¶
sets the OM number on the string
Private Functions
-
template<class Archive>
void serialize(Archive &ar, unsigned version)¶ $Id$
Copyright (C) 2012 The IceCube Collaboration http://www.icecube.wisc.edu
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS’’ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
SPDX-License-Identifier: BSD-2-Clause
Friends
- friend class icecube::serialization::access
-
inline ModuleKey()¶
-
struct operator_and¶
-
struct operator_andnot¶
-
struct operator_or¶
-
struct operator_xor¶
-
template<class Value>
class post_order : public TreeBase::Tree<T, Key, Hash>::iterator_base<post_order<Value>, Value, TreeHashKey>¶ - #include <I3MCTree.h>
Post order iterator: O(n log n)
Public Functions
-
inline explicit post_order()¶
-
inline explicit post_order(const post_order<T> &iter)¶
-
inline post_order(const iterator_base<post_order<Value>, Value, TreeHashKey> &iter)¶
-
template<typename D, typename S>
inline post_order(const iterator_base<D, Value, S> &iter)¶
-
template<typename D, typename S>
inline post_order<Value> &operator=(const iterator_base<D, Value, S> &iter)¶
-
inline operator post_order<const Value>() const¶
Protected Types
-
typedef iterator_const_traits<Value> const_traits¶
-
typedef const_traits::TreeValue TreeValue¶
-
typedef const_traits::TreeHashMapIter TreeHashMapIter¶
-
typedef iterator_storage_impl<TreeHashKey, Value, TreeValue, TreeHashMapIter> storage_traits¶
Friends
- friend class Tree< T, Key, Hash >
- friend class iterator_base< post_order< Value >, Value, TreeHashKey >
-
inline explicit post_order()¶
-
class post_order_iterator : public tree<T, tree_node_allocator>::iterator_base¶
- #include <tree.hh>
Depth-first iterator, first accessing the children, then the node itself.
Public Functions
-
post_order_iterator()¶
-
post_order_iterator(tree_node*)¶
-
post_order_iterator(const iterator_base&)¶
-
post_order_iterator(const sibling_iterator&)¶
-
bool operator==(const post_order_iterator&) const¶
-
bool operator!=(const post_order_iterator&) const¶
-
post_order_iterator &operator++()¶
-
post_order_iterator &operator--()¶
-
post_order_iterator operator++(int)¶
-
post_order_iterator operator--(int)¶
-
post_order_iterator &operator+=(unsigned int)¶
-
post_order_iterator &operator-=(unsigned int)¶
-
void descend_all()¶
Set iterator to the first child as deep as possible down the tree.
-
post_order_iterator()¶
-
template<class Value>
class pre_order : public TreeBase::Tree<T, Key, Hash>::iterator_base<pre_order<Value>, Value, TreeHashKey>¶ - #include <I3MCTree.h>
Pre order iterator: O(n)
Public Functions
-
inline explicit pre_order()¶
-
inline pre_order(const iterator_base<pre_order<Value>, Value, TreeHashKey> &iter)¶
-
template<typename D, typename S>
inline pre_order(const iterator_base<D, Value, S> &iter)¶
Protected Types
-
typedef iterator_const_traits<Value> const_traits¶
-
typedef const_traits::TreeValue TreeValue¶
-
typedef const_traits::TreeHashMapIter TreeHashMapIter¶
-
typedef iterator_storage_impl<TreeHashKey, Value, TreeValue, TreeHashMapIter> storage_traits¶
Friends
- friend class Tree< T, Key, Hash >
- friend class iterator_base< pre_order< Value >, Value, TreeHashKey >
-
inline explicit pre_order()¶
-
class pre_order_iterator : public tree<T, tree_node_allocator>::iterator_base¶
- #include <tree.hh>
Depth-first iterator, first accessing the node, then its children.
Public Functions
-
pre_order_iterator()¶
-
pre_order_iterator(tree_node*)¶
-
pre_order_iterator(const iterator_base&)¶
-
pre_order_iterator(const sibling_iterator&)¶
-
bool operator==(const pre_order_iterator&) const¶
-
bool operator!=(const pre_order_iterator&) const¶
-
pre_order_iterator &operator++()¶
-
pre_order_iterator &operator--()¶
-
pre_order_iterator operator++(int)¶
-
pre_order_iterator operator--(int)¶
-
pre_order_iterator &operator+=(unsigned int)¶
-
pre_order_iterator &operator-=(unsigned int)¶
-
pre_order_iterator()¶
-
struct QuadraticFit¶
- #include <I3DOMCalibration.h>
A struct to hold the parameters of a Quadratic fit A simple struct to define a Quadratic fit: A + B*x + C*x*x.
Public Functions
-
inline bool operator==(const QuadraticFit &rhs) const¶
-
inline bool operator!=(const QuadraticFit &rhs) const¶
-
inline QuadraticFit()¶
-
inline bool operator==(const QuadraticFit &rhs) const¶
-
struct RunCodec¶
- #include <I3SuperDSTUtils.h>
-
class ScintKey¶
- #include <ScintKey.h>
Public Functions
-
inline ScintKey()¶
-
inline ScintKey(int stn, int pan)¶
-
inline ~ScintKey()¶
-
inline void SetStationID(int stn)¶
-
inline void SetPanelID(int pan)¶
-
inline int GetStationID() const¶
-
inline int GetPanelID() const¶
Friends
- friend class icecube::serialization::access
-
inline ScintKey()¶
-
template<typename Value>
class sibling_iter : public TreeBase::Tree<T, Key, Hash>::iterator_base<sibling_iter<Value>, Value, TreeHashKey>¶ - #include <I3MCTree.h>
Sibling iterator: O(n)
Public Functions
-
inline explicit sibling_iter()¶
-
inline explicit sibling_iter(const sibling_iter<T> &iter)¶
-
inline sibling_iter(const iterator_base<sibling_iter<Value>, Value, TreeHashKey> &iter)¶
-
template<typename V>
inline sibling_iter(const sibling_iter<V> &iter)¶
-
template<typename D, typename S>
inline sibling_iter(const iterator_base<D, Value, S> &iter)¶
-
template<typename D, typename S>
inline sibling_iter<Value> &operator=(const iterator_base<D, Value, S> &iter)¶
-
inline operator sibling_iter<const Value>() const¶
Protected Types
-
typedef iterator_const_traits<Value> const_traits¶
-
typedef const_traits::TreeValue TreeValue¶
-
typedef const_traits::TreeHashMapIter TreeHashMapIter¶
-
typedef iterator_storage_impl<TreeHashKey, Value, TreeValue, TreeHashMapIter> storage_traits¶
Friends
- friend class Tree< T, Key, Hash >
- friend class iterator_base< sibling_iter< Value >, Value, TreeHashKey >
-
inline explicit sibling_iter()¶
-
class sibling_iterator : public tree<T, tree_node_allocator>::iterator_base¶
- #include <tree.hh>
Iterator which traverses only the nodes which are siblings of each other.
Public Functions
-
sibling_iterator()¶
-
sibling_iterator(tree_node*)¶
-
sibling_iterator(const sibling_iterator&)¶
-
sibling_iterator(const iterator_base&)¶
-
bool operator==(const sibling_iterator&) const¶
-
bool operator!=(const sibling_iterator&) const¶
-
sibling_iterator &operator++()¶
-
sibling_iterator &operator--()¶
-
sibling_iterator operator++(int)¶
-
sibling_iterator operator--(int)¶
-
sibling_iterator &operator+=(unsigned int)¶
-
sibling_iterator &operator-=(unsigned int)¶
-
tree_node *range_first() const¶
-
tree_node *range_last() const¶
Public Members
-
tree_node *parent_¶
Private Functions
-
void set_parent_()¶
-
sibling_iterator()¶
-
struct SizeCodec¶
- #include <I3SuperDSTUtils.h>
Friends
- friend class icecube::serialization::access
-
union SourceCompound¶
- #include <I3Waveform.h>
-
struct SPEChargeDistribution¶
- #include <I3DOMCalibration.h>
: A struct to hold the parameters of an two exponential + gaussian fit to the SPE charge distribution: P(q) = exp1_amp * exp(-q/exp1_width) + exp2_amp * exp(-q / exp2_width) + gaus_amp * np.exp(-0.5*(q - gaus_mean)**2/gaus_width**2))
The Compensation Factor is simply the mean charge of the TA0003 distribution divided by the average SPE Template charge. CF = (dintt_0^inf q f(q)_ta0003 dq) / (dintt_0^inf q f(q)_spe dq) Given the current SPE Templates, this factor is roughly 1.3
Public Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
-
inline SPEChargeDistribution()¶
-
inline SPEChargeDistribution(double amp_exp1, double width_exp1, double amp_exp2, double width_exp2, double amp_gaus, double mean_gaus, double width_gaus, double factor_compensation, double gaus_mean_SLC)¶
-
inline bool IsValid() const¶
-
inline double Mean() const¶
Evaluate the mean and standard deviation of the SPE template distribution.
-
inline double StdDev() const¶
-
inline double GetMaxResidual() const¶
-
inline double ComputeResidual(double q) const¶
-
inline bool operator==(const SPEChargeDistribution &rhs) const¶
-
inline bool operator!=(const SPEChargeDistribution &rhs) const¶
-
inline double operator()(double q) const¶
Public Members
-
double exp1_amp¶
-
double exp1_width¶
-
double exp2_amp¶
-
double exp2_width¶
-
double gaus_amp¶
-
double gaus_mean¶
-
double gaus_width¶
-
double compensation_factor¶
-
double SLC_gaus_mean¶
-
mutable double mean_charge¶
The expected value of this charge distribution. This quantity is derived from others lazily, so it is does not participate in serialization or comparison.
-
mutable double variance¶
-
mutable double max_residual¶
Private Static Attributes
-
static const unsigned int correctionSize = 102¶
-
static const double xData[] = {0.0, 0.0025, 0.0125, 0.0225, 0.0325, 0.042499999999999996, 0.052500000000000005, 0.0625, 0.07250000000000001, 0.0825, 0.0925, 0.10250000000000001, 0.1125, 0.1225, 0.1325, 0.14250000000000002, 0.1525, 0.1625, 0.17250000000000001, 0.1825, 0.1925, 0.2025, 0.2125, 0.2225, 0.2325, 0.2425, 0.2525, 0.2625, 0.2725, 0.28250000000000003, 0.2925, 0.3025, 0.3125, 0.3225, 0.3325, 0.3425, 0.35250000000000004, 0.3625, 0.3725, 0.3825, 0.3925, 0.4025, 0.41250000000000003, 0.4225, 0.4325, 0.4425, 0.4525, 0.4625, 0.47250000000000003, 0.4825, 0.4925, 0.5025, 0.5125, 0.5225, 0.5325, 0.5425, 0.5525, 0.5625, 0.5725, 0.5825, 0.5925, 0.6025, 0.6125, 0.6225, 0.6325000000000001, 0.6425000000000001, 0.6525000000000001, 0.6625000000000001, 0.6725000000000001, 0.6825000000000001, 0.6925000000000001, 0.7025, 0.7124999999999999, 0.7224999999999999, 0.7324999999999999, 0.7424999999999999, 0.7525, 0.7625, 0.7725, 0.7825, 0.7925, 0.8025, 0.8125, 0.8225, 0.8325, 0.8425, 0.8525, 0.8625, 0.8725, 0.8825000000000001, 0.8925000000000001, 0.9025000000000001, 0.9125000000000001, 0.9225000000000001, 0.9325000000000001, 0.9425000000000001, 0.9525000000000001, 0.9624999999999999, 0.9724999999999999, 0.9824999999999999, 0.9924999999999999, 5.0}¶
-
static const double yData[] = {1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0078185220290956, 1.0042299812007673, 0.9935908344034875, 0.9850454543557308, 0.9726915954383835, 0.9697828027792773, 0.9652743986792529, 0.9678607318783602, 0.9710489835385085, 0.9779325024066567, 0.9851805409942587, 0.9917270505917856, 0.9996406452735341, 1.0068567044292451, 1.017735687531788, 1.0267751591351273, 1.0370993434166467, 1.044744857399972, 1.0573247280549134, 1.0625672697852353, 1.0746265958307744, 1.0811289116634608, 1.0895461845600405, 1.0969954086913443, 1.102224227160381, 1.1080791739726892, 1.1124879641850856, 1.1167398762419734, 1.1191118871969707, 1.1225845994808588, 1.1228561156113273, 1.1214733538285444, 1.1201466033159877, 1.119017891198713, 1.117034774252846, 1.114784420031669, 1.1106707843428119, 1.1046761249652928, 1.1004126244552774, 1.0971385151354633, 1.0917037242585172, 1.0851977267453712, 1.0803033012303216, 1.072758138133644, 1.067524998209676, 1.0625850059075657, 1.0555095359234306, 1.0509622181928957, 1.0440128255959997, 1.0395139814809693, 1.0354914927244894, 1.0310352119539496, 1.0267994142473922, 1.0218812500846572, 1.01668830547869, 1.0147294646372143, 1.0109961001746626, 1.0088071581605818, 1.0056045189846852, 1.0042154120061508, 1.0010489798770452, 0.9986921110064382, 0.9988728971422061, 0.9970854046567016, 0.9968106821162841, 0.9963693247219644, 0.9941273798848427, 0.9958665014503302, 0.9949889009733639, 0.9959272341615341, 0.9955380608193667, 0.996792440853806, 0.9961095310945263, 0.9961005008737484, 0.9973811405595548, 0.9988258893905738, 0.9980287475191254, 0.9991263792520673, 1.000596123699185, 1.0017720700471255, 1.0030773292152362, 1.0016553887740836, 1.0026409396829936, 1.0025133670051922, 1.0035085128801953, 1.0}¶
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
-
struct SPETemplate¶
- #include <I3DOMCalibration.h>
Public Functions
-
inline SPETemplate()¶
-
inline SPETemplate(double c, double x0, double b1, double b2)¶
-
inline bool operator==(const SPETemplate &rhs) const¶
-
inline bool operator!=(const SPETemplate &rhs) const¶
-
inline SPETemplate()¶
-
class StatusCompound¶
- #include <I3Waveform.h>
Public Functions
-
inline StatusCompound()¶
-
~StatusCompound()¶
-
inline int8_t GetChannel() const¶
-
inline void SetChannel(int8_t channel)¶
-
inline bool operator==(const StatusCompound &rhs) const¶
Private Functions
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
Private Members
-
int8_t channel_¶
Friends
- friend class icecube::serialization::access
-
inline StatusCompound()¶
-
struct TankKey¶
- #include <TankKey.h>
Public Functions
-
inline TankKey()¶
-
inline ~TankKey()¶
-
void SetOMKey(const OMKey &omKey)¶
Sets the stringNumber and tankID of this tank according to the OMKey
-
OMKey GetDefaultOMKey() const¶
Get one of the DOMs inside the tank. By convention, this returns the OMKey with the lower omNumber.
Use this as an adapter to use TankKeys with I3MapOMKey* frame objects. This is an effective work-around for the fact that we don’t have I3MapTankKey* frame objects.
Example use-case: You want to count muons that hit tanks, the tanks are defined by a collection of TankKeys. Make a I3MapOMKeyUInt called “mymap”. If a tank is hit, do mymap[tankKey.GetDefaultOMKey()] += 1, to increase the count for that tank.
Later in the analysis, you can recover the TankKeys from mymap using the special constructor TankKey(const OMkey& omKey) or TankKey::SetOMKey(const OMKey& omKey).
Friends
- friend class icecube::serialization::access
-
inline TankKey()¶
-
struct TauParam¶
- #include <I3DOMCalibration.h>
A struct to hold the parameters of the toroid time constants parameters for electronic droop correction The two time constants parametrize this correction as a function of temperature (T): Tau_1(T) = P0 + ( P1/(1+exp(-(T/P2)) )) Tau_2(T) = P3 + ( P4/(1+exp(-(T/P5)) )) the functions exp(-t/tau1) and exp(-t/tau2) are combined in the TauFrac proportion to reproduce the electronics behaviour through (1-Taufrac)exp(-t/tau1) + TauFrac exp(-t/tau2)
-
template<typename T, typename Key = T, typename Hash = hash<Key>>
class Tree : public I3FrameObject¶ - #include <I3MCTree_fwd.h>
A generic tree class for hashable, unique data types.
Note that Key must be unique and equality comparable.
- Template Parameters:
T – is the data type
Key – is the lookup type (T must be able to be implicitly converted to Key)
Hash – is the hash function to convert from Key to size_t
Subclassed by I3LinearizedMCTree
Public Types
-
typedef size_t size_type¶
-
typedef ptrdiff_t difference_type¶
-
typedef boost::optional<T> optional_value¶
The optional_value is used when returning by value when there might not be anything to return.
-
typedef pre_order_iterator iterator¶
Define the default iterator
-
typedef pre_order_const_iterator const_iterator¶
Public Functions
-
Tree()¶
Constructors and destructor
-
template<typename Derived, typename Storage>
Tree(const iterator_base<Derived, const T, Storage> &other)¶
-
~Tree()¶
-
inline pre_order_iterator begin()¶
-
inline pre_order_const_iterator begin() const¶
-
inline pre_order_const_iterator cbegin() const¶
-
inline pre_order_iterator end()¶
-
inline pre_order_const_iterator end() const¶
-
inline pre_order_const_iterator cend() const¶
-
inline post_order_iterator begin_post()¶
-
inline post_order_const_iterator begin_post() const¶
-
inline post_order_const_iterator cbegin_post() const¶
-
inline post_order_iterator end_post()¶
-
inline post_order_const_iterator end_post() const¶
-
inline post_order_const_iterator cend_post() const¶
-
template<typename D, typename V, typename S>
inline sibling_iterator begin_sibling(const iterator_base<D, V, S> &i)¶
-
template<typename D, typename V, typename S>
inline sibling_const_iterator begin_sibling(const iterator_base<D, V, S> &i) const¶
-
template<typename D, typename V, typename S>
inline sibling_const_iterator cbegin_sibling(const iterator_base<D, V, S> &i) const¶
-
inline sibling_iterator begin_sibling(const Key &k)¶
-
inline sibling_const_iterator begin_sibling(const Key &k) const¶
-
inline sibling_const_iterator cbegin_sibling(const Key &k) const¶
-
template<typename D, typename V, typename S>
inline sibling_iterator end(const iterator_base<D, V, S> &i)¶
-
template<typename D, typename V, typename S>
inline sibling_const_iterator end(const iterator_base<D, V, S> &i) const¶
-
template<typename D, typename V, typename S>
inline sibling_const_iterator cend(const iterator_base<D, V, S> &i) const¶
-
inline sibling_iterator end_sibling()¶
-
inline sibling_const_iterator end_sibling() const¶
-
inline sibling_const_iterator cend_sibling() const¶
-
inline fast_iterator begin_fast()¶
-
inline fast_const_iterator begin_fast() const¶
-
inline fast_const_iterator cbegin_fast() const¶
-
inline fast_iterator end_fast()¶
-
inline fast_const_iterator end_fast() const¶
-
inline fast_const_iterator cend_fast() const¶
-
inline leaf_iterator begin_leaf()¶
-
inline leaf_const_iterator begin_leaf() const¶
-
inline leaf_const_iterator cbegin_leaf() const¶
-
inline leaf_iterator end_leaf()¶
-
inline leaf_const_iterator end_leaf() const¶
-
inline leaf_const_iterator cend_leaf() const¶
-
const optional_value get_head() const¶
Get the (first) head/root value.
-
const optional_value at(const Key&) const¶
Get value at key
Note that non-const versions are not provided because some modifications could change the key as well and cannot be allowed.
-
const optional_value operator[](const Key&) const¶
-
const_iterator find(const Key&) const¶
-
const optional_value parent(const Key&) const¶
Get parent
-
template<typename Derived, typename Storage>
iterator_base<Derived, T, Storage> parent(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
iterator_base<Derived, const T, Storage> parent(const iterator_base<Derived, const T, Storage>&) const¶
-
const optional_value previous_sibling(const Key&) const¶
Get previous sibling
-
template<typename Derived, typename Storage>
iterator_base<Derived, T, Storage> previous_sibling(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
iterator_base<Derived, const T, Storage> previous_sibling(const iterator_base<Derived, const T, Storage>&) const¶
-
const optional_value next_sibling(const Key&) const¶
Get next sibling
-
template<typename Derived, typename Storage>
iterator_base<Derived, T, Storage> next_sibling(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
iterator_base<Derived, const T, Storage> next_sibling(const iterator_base<Derived, const T, Storage>&) const¶
-
template<class Derived, class Storage>
sibling_iter<T> children(const iterator_base<Derived, T, Storage>&)¶
-
template<class Derived, class Storage>
sibling_iter<const T> children(const iterator_base<Derived, const T, Storage>&) const¶
-
const optional_value first_child(const Key&) const¶
Get first child
-
template<typename Derived, typename Storage>
iterator_base<Derived, T, Storage> first_child(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
iterator_base<Derived, const T, Storage> first_child(const iterator_base<Derived, const T, Storage>&) const¶
-
void clear()¶
Clear all nodes from tree
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> erase(const iterator_base<Derived, Value, Storage>&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> erase_children(const iterator_base<Derived, Value, Storage>&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> append_child(const iterator_base<Derived, Value, Storage>&, const T&)¶
-
void append_child(const Key &node, const Tree<T, Key, Hash>&, const Key&)¶
Add subtree as a child to a node
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> append_child(const iterator_base<Derived, Value, Storage>&, const Tree<T, Key, Hash>&, const Key&)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
iterator_base<Derived, Value, Storage> append_child(const iterator_base<Derived, Value, Storage>&, const iterator_base<Derived2, Value2, Storage2>&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> append_children(const iterator_base<Derived, Value, Storage>&, const std::vector<T>&)¶
-
template<typename Iterator>
void append_children(const Key &node, Iterator, const Iterator&)¶ Add multiple children from the iterator range to the node
first arg: parent node second arg: begin range third arg: end range
-
template<typename Derived, typename Value, typename Storage, typename Iterator>
iterator_base<Derived, Value, Storage> append_children(const iterator_base<Derived, Value, Storage>&, Iterator, const Iterator&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> insert(const iterator_base<Derived, Value, Storage>&, const T&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> insert_after(const iterator_base<Derived, Value, Storage>&, const T&)¶
-
void insert_subtree(const Key &node, const Tree<T, Key, Hash>&, const Key&)¶
Insert subtree as sibling before node
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> insert_subtree(const iterator_base<Derived, Value, Storage>&, const Tree<T, Key, Hash>&, const Key&)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
iterator_base<Derived, Value, Storage> insert_subtree(const iterator_base<Derived, Value, Storage>&, const iterator_base<Derived2, Value2, Storage2>&)¶
-
void insert_subtree_after(const Key &node, const Tree<T, Key, Hash>&, const Key&)¶
Insert subtree as sibling after node
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> insert_subtree_after(const iterator_base<Derived, Value, Storage>&, const Tree<T, Key, Hash>&, const Key&)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
iterator_base<Derived, Value, Storage> insert_subtree_after(const iterator_base<Derived, Value, Storage>&, const iterator_base<Derived2, Value2, Storage2>&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> replace(const iterator_base<Derived, Value, Storage>&, const T&)¶
-
void replace(const Key&, const Tree<T, Key, Hash>&, const Key&)¶
Replace node (and children) with subtree
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> replace(const iterator_base<Derived, Value, Storage>&, const Tree<T, Key, Hash>&, const Key&)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
iterator_base<Derived, Value, Storage> replace(const iterator_base<Derived, Value, Storage>&, const iterator_base<Derived2, Value2, Storage2>&)¶
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> flatten(const iterator_base<Derived, Value, Storage>&)¶
-
void reparent(const Key &node, const Key &from)¶
Move all child nodes of ‘from’ to be children of ‘node’ Works with two nodes of the same tree.
-
template<typename Derived, typename Value, typename Storage>
iterator_base<Derived, Value, Storage> reparent(const iterator_base<Derived, Value, Storage>&, const Key&)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
iterator_base<Derived, Value, Storage> reparent(const iterator_base<Derived, Value, Storage>&, const iterator_base<Derived2, Value2, Storage2>&)¶
-
bool empty() const¶
If the tree is size=0, or empty
-
template<typename Derived, typename Storage>
size_type depth(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
size_type depth(const iterator_base<Derived, const T, Storage>&) const¶
-
template<typename Derived, typename Storage>
size_type number_of_children(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
size_type number_of_children(const iterator_base<Derived, const T, Storage>&) const¶
-
template<typename Derived, typename Storage>
size_type number_of_siblings(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
size_type number_of_siblings(const iterator_base<Derived, const T, Storage>&) const¶
-
template<typename Derived, typename Storage>
bool is_in_subtree(const iterator_base<Derived, T, Storage>&, const Key&)¶
-
template<typename Derived, typename Storage>
bool is_in_subtree(const iterator_base<Derived, const T, Storage>&, const Key&) const¶
-
template<typename Derived, typename Storage, typename Derived2, typename Value2, typename Storage2>
bool is_in_subtree(const iterator_base<Derived, T, Storage>&, const iterator_base<Derived2, Value2, Storage2>&)¶
-
template<typename Derived, typename Storage, typename Derived2, typename Value2, typename Storage2>
bool is_in_subtree(const iterator_base<Derived, const T, Storage>&, const iterator_base<Derived2, Value2, Storage2>&) const¶
-
bool subtree_in_tree(const Tree<T, Key, Hash> &other, const Key &node) const¶
Finds if any key in the subtree is in the tree
-
template<typename Derived, typename Storage>
bool subtree_in_tree(const iterator_base<Derived, T, Storage>&)¶
-
template<typename Derived, typename Storage>
bool subtree_in_tree(const iterator_base<Derived, const T, Storage>&) const¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, T, Storage> parent(const iterator_base<Derived, T, Storage> &iter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, const T, Storage> parent(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, T, Storage> previous_sibling(const iterator_base<Derived, T, Storage> &iter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, const T, Storage> previous_sibling(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, T, Storage> next_sibling(const iterator_base<Derived, T, Storage> &iter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, const T, Storage> next_sibling(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<class Derived, class Storage>
Tree<T, Key, Hash>::template sibling_iter<T> children(const iterator_base<Derived, T, Storage> &iter)¶
-
template<class Derived, class Storage>
Tree<T, Key, Hash>::template sibling_iter<const T> children(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, T, Storage> first_child(const iterator_base<Derived, T, Storage> &iter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, const T, Storage> first_child(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> erase(const iterator_base<Derived, Value, Storage> &iter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> erase_children(const iterator_base<Derived, Value, Storage> &iter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> append_child(const iterator_base<Derived, Value, Storage> &iter, const T &child)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> append_child(const iterator_base<Derived, Value, Storage> &iter, const Tree<T, Key, Hash> &otherTree, const Key &node2)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> append_child(const iterator_base<Derived, Value, Storage> &iter, const iterator_base<Derived2, Value2, Storage2> &otherIter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> append_children(const iterator_base<Derived, Value, Storage> &iter, const std::vector<T> &children)¶
-
template<typename Derived, typename Value, typename Storage, typename Iterator>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> append_children(const iterator_base<Derived, Value, Storage> &iter, Iterator iter_begin, const Iterator &iter_end)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> insert(const iterator_base<Derived, Value, Storage> &iter, const T &node2)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> insert_after(const iterator_base<Derived, Value, Storage> &iter, const T &node2)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> insert_subtree(const iterator_base<Derived, Value, Storage> &iter, const Tree<T, Key, Hash> &otherTree, const Key &node2)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> insert_subtree(const iterator_base<Derived, Value, Storage> &iter, const iterator_base<Derived2, Value2, Storage2> &otherIter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> insert_subtree_after(const iterator_base<Derived, Value, Storage> &iter, const Tree<T, Key, Hash> &otherTree, const Key &node2)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> insert_subtree_after(const iterator_base<Derived, Value, Storage> &iter, const iterator_base<Derived2, Value2, Storage2> &otherIter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> replace(const iterator_base<Derived, Value, Storage> &iter, const T &node2)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> replace(const iterator_base<Derived, Value, Storage> &iter, const Tree<T, Key, Hash> &otherTree, const Key &node2)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> replace(const iterator_base<Derived, Value, Storage> &iter, const iterator_base<Derived2, Value2, Storage2> &otherIter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> flatten(const iterator_base<Derived, Value, Storage> &iter)¶
-
template<typename Derived, typename Value, typename Storage>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> reparent(const iterator_base<Derived, Value, Storage> &iter, const Key &from)¶
-
template<typename Derived, typename Value, typename Storage, typename Derived2, typename Value2, typename Storage2>
Tree<T, Key, Hash>::template iterator_base<Derived, Value, Storage> reparent(const iterator_base<Derived, Value, Storage> &iter, const iterator_base<Derived2, Value2, Storage2> &otherIter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::size_type depth(const iterator_base<Derived, T, Storage> &iter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::size_type depth(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::size_type number_of_children(const iterator_base<Derived, T, Storage> &iter)¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::size_type number_of_children(const iterator_base<Derived, const T, Storage> &iter) const¶
-
template<typename Derived, typename Storage>
Tree<T, Key, Hash>::size_type number_of_siblings(const iterator_base<Derived, T, Storage> &iter)¶
Protected Types
-
typedef TreeNode<value_type> treeNode¶
A TreeNode capable of holding the value_type (T)
Protected Functions
-
void eraseRightSiblings_(const Key&)¶
Erase any siblings (and their children) to the right of the node
-
I3_SERIALIZATION_SPLIT_MEMBER()¶
- SET_LOGGER ("Tree")
Protected Attributes
-
tree_hash_map internalMap¶
the actual hash_map storage
-
TreeHashKey head_¶
the first top-level node
-
TreeHashKey end_¶
a special end node that doesn’t really exist
Friends
- friend class icecube::serialization::access
-
template<class T, class tree_node_allocator = std::allocator<tree_node_<T>>>
class tree¶ - #include <tree.hh>
Public Types
-
typedef pre_order_iterator iterator¶
The default iterator type throughout the tree class.
Public Functions
-
tree()¶
-
tree(const iterator_base&)¶
-
tree(const tree<T, tree_node_allocator>&)¶
-
~tree()¶
-
void operator=(const tree<T, tree_node_allocator>&)¶
-
inline pre_order_iterator begin() const¶
Return iterator to the beginning of the tree.
-
inline pre_order_iterator end() const¶
Return iterator to the end of the tree.
-
post_order_iterator begin_post() const¶
Return post-order iterator to the beginning of the tree.
-
post_order_iterator end_post() const¶
Return post-order iterator to the end of the tree.
-
fixed_depth_iterator begin_fixed(const iterator_base&, unsigned int) const¶
Return fixed-depth iterator to the first node at a given depth.
-
fixed_depth_iterator end_fixed(const iterator_base&, unsigned int) const¶
Return fixed-depth iterator to end of the nodes at given depth.
-
sibling_iterator begin(const iterator_base&) const¶
Return sibling iterator to the first child of given node.
-
sibling_iterator end(const iterator_base&) const¶
Return sibling iterator to the end of the children of a given node.
-
template<typename iter>
iter previous_sibling(iter) const¶ Return iterator to the previous sibling of a node.
-
template<typename iter>
iter next_sibling(iter) const¶ Return iterator to the next sibling of a node.
-
template<typename iter>
iter next_at_same_depth(iter) const¶ Return iterator to the next node at a given depth.
-
void clear()¶
Erase all nodes of the tree.
-
template<typename iter>
iter erase(iter)¶ Erase element at position pointed to by iterator, return incremented iterator.
-
void erase_children(const iterator_base&)¶
Erase all children of the node pointed to by iterator.
-
template<typename iter>
iter append_child(iter position)¶ Insert empty node as last child of node pointed to by position.
-
template<typename iter>
iter append_child(iter position, const T &x)¶ Insert node as last child of node pointed to by position.
-
template<typename iter>
iter append_child(iter position, iter other_position)¶ Append the node (plus its children) at other_position as a child of position.
-
template<typename iter>
iter append_children(iter position, sibling_iterator from, sibling_iterator to)¶ Append the nodes in the from-to range (plus their children) as children of position.
-
template<typename iter>
iter insert(iter position, const T &x)¶ Insert node as previous sibling of node pointed to by position.
-
template<typename iter>
iter insert_subtree(iter position, const iterator_base &subtree)¶ Insert node (with children) pointed to by subtree as previous sibling of node pointed to by position.
-
template<typename iter>
iter insert_after(iter position, const T &x)¶ Insert node as next sibling of node pointed to by position.
-
template<typename iter>
iter replace(iter position, const T &x)¶ Replace node at ‘position’ with other node (keeping same children); ‘position’ becomes invalid.
-
template<typename iter>
iter replace(iter position, const iterator_base &from)¶ Replace node at ‘position’ with subtree starting at ‘from’ (do not erase subtree at ‘from’); see above.
-
sibling_iterator replace(sibling_iterator orig_begin, sibling_iterator orig_end, sibling_iterator new_begin, sibling_iterator new_end)¶
Replace string of siblings (plus their children) with copy of a new string (with children); see above.
-
template<typename iter>
iter flatten(iter position)¶ Move all children of node at ‘position’ to be siblings, returns position.
-
template<typename iter>
iter reparent(iter position, sibling_iterator begin, sibling_iterator end)¶ Move nodes in range to be children of ‘position’.
-
template<typename iter>
iter reparent(iter position, iter from)¶ Move all child nodes of ‘from’ to be children of ‘position’.
-
template<typename iter>
iter move_after(iter target, iter source)¶ Move ‘source’ node (plus its children) to become the next sibling of ‘target’.
-
template<typename iter>
iter move_before(iter target, iter source)¶ Move ‘source’ node (plus its children) to become the previous sibling of ‘target’.
-
template<typename iter>
iter move_ontop(iter target, iter source)¶ Move ‘source’ node (plus its children) to become the node at ‘target’ (erasing the node at ‘target’).
-
void merge(sibling_iterator, sibling_iterator, sibling_iterator, sibling_iterator, bool duplicate_leaves = false)¶
Merge with other tree, creating new branches and leaves only if they are not already present.
-
void sort(sibling_iterator from, sibling_iterator to, bool deep = false)¶
Sort (std::sort only moves values of nodes, this one moves children as well).
-
template<class StrictWeakOrdering>
void sort(sibling_iterator from, sibling_iterator to, StrictWeakOrdering comp, bool deep = false)¶
-
template<typename iter>
bool equal(const iter &one, const iter &two, const iter &three) const¶ Compare two ranges of nodes (compares nodes as well as tree structure).
-
template<typename iter, class BinaryPredicate>
bool equal(const iter &one, const iter &two, const iter &three, BinaryPredicate) const¶
-
template<typename iter, class BinaryPredicate>
bool equal_subtree(const iter &one, const iter &two, BinaryPredicate) const¶
-
tree subtree(sibling_iterator from, sibling_iterator to) const¶
Extract a new tree formed by the range of siblings plus all their children.
-
void swap(sibling_iterator it)¶
Exchange the node (plus subtree) with its sibling node (do nothing if no sibling present).
-
int size() const¶
Count the total number of nodes.
-
bool empty() const¶
Check if tree is empty.
-
int depth(const iterator_base&) const¶
Compute the depth to the root.
-
unsigned int number_of_children(const iterator_base&) const¶
Count the number of children of node at position.
-
unsigned int number_of_siblings(const iterator_base&) const¶
Count the number of ‘next’ siblings of node at iterator.
-
bool is_in_subtree(const iterator_base &position, const iterator_base &begin, const iterator_base &end) const¶
Determine whether node at position is in the subtrees with root in the range.
-
bool is_valid(const iterator_base&) const¶
Determine whether the iterator is an ‘end’ iterator and thus not actually pointing to a node.
-
unsigned int index(sibling_iterator it) const¶
Determine the index of a node in the range of siblings to which it belongs.
-
sibling_iterator child(const iterator_base &position, unsigned int) const¶
Inverse of ‘index’: return the n-th child of the node at position.
Protected Types
-
typedef tree_node_<T> tree_node¶
Private Members
-
tree_node_allocator alloc_¶
-
typedef pre_order_iterator iterator¶
-
template<class T>
class tree_node_¶ - #include <tree.hh>
A node in the tree, combining links to other nodes as well as the actual data.
Public Members
-
tree_node_<T> *parent¶
-
tree_node_<T> *first_child¶
-
tree_node_<T> *last_child¶
-
tree_node_<T> *prev_sibling¶
-
tree_node_<T> *next_sibling¶
-
tree_node_<T> *parent¶
-
template<typename T>
class TreeNode¶ - #include <I3MCTree_fwd.h>
A generic tree node
Public Functions
-
inline TreeNode()¶
-
inline TreeNode()¶
-
class TriggerKey¶
- #include <TriggerKey.h>
Public Types
-
enum SourceID¶
Enumeration describing what “subdetector” issued a trigger.
Values:
-
enumerator IN_ICE¶
-
enumerator ICE_TOP¶
-
enumerator AMANDA_TWR_DAQ¶
-
enumerator EXTERNAL¶
-
enumerator GLOBAL¶
-
enumerator AMANDA_MUON_DAQ¶
-
enumerator SPASE¶
-
enumerator UNKNOWN_SOURCE¶
-
enumerator IN_ICE_PULSES¶
-
enumerator IN_ICE¶
-
enum TypeID¶
Enumeration describing what “algorithm” issued a trigger. More details about a specific trigger can be stored in the I3TriggerStatus maps as part of the detector status
Values:
-
enumerator SIMPLE_MULTIPLICITY¶
-
enumerator CALIBRATION¶
-
enumerator MIN_BIAS¶
-
enumerator THROUGHPUT¶
-
enumerator TWO_COINCIDENCE¶
-
enumerator THREE_COINCIDENCE¶
-
enumerator MERGED¶
-
enumerator SLOW_PARTICLE¶
-
enumerator FAINT_PARTICLE¶
-
enumerator FRAGMENT_MULTIPLICITY¶
-
enumerator STRING¶
-
enumerator VOLUME¶
-
enumerator SPHERE¶
-
enumerator UNBIASED¶
-
enumerator SPASE_2¶
-
enumerator UNKNOWN_TYPE¶
-
enumerator SIMPLE_MULTIPLICITY¶
Public Functions
-
inline TriggerKey()¶
Default constructor.
-
inline TriggerKey(SourceID source, TypeID type, SubtypeID subtype = NO_SUBTYPE)¶
Constructor.
- Parameters:
source – Source ID.
type – Type ID.
subtype – Subtype ID (optional; default is NO_SUBTYPE).
-
inline TriggerKey(SourceID source, TypeID type, int configID, SubtypeID subtype = NO_SUBTYPE)¶
Constructor.
- Parameters:
source – Source ID.
type – Type ID.
configID – Configuration ID.
subtype – Subtype ID (optional; default is NO_SUBTYPE).
-
~TriggerKey()¶
Destructor.
-
inline const char *GetSourceString() const¶
Returns the name of the source ID.
- Returns:
The name.
-
inline const char *GetTypeString() const¶
Returns the name of the type ID.
- Returns:
The name.
-
inline bool CheckConfigID() const¶
Indicates, if a configuration ID is set.
The triplet of (SourceID source, TypeID type, int configID) corresponds to a trigger status/config used in the IceCube DAQ. AMANDA has no such trigger configurations, so that the configuration ID might not be set.
- Returns:
True, if configuration ID is set.
-
inline int GetConfigID() const¶
Retrieves the configuration ID.
- Returns:
Configuration ID.
-
inline boost::optional<int> GetConfigIDOptional() const¶
-
inline void SetConfigID()¶
Resets the configuration ID.
-
inline void SetConfigID(int configID)¶
Sets the configuration ID.
- Parameters:
configID – Configuration ID.
-
inline bool operator==(const TriggerKey &rhs) const¶
Equality operator.
- Parameters:
rhs – The trigger key to compare this one to.
- Returns:
true if source, type, subtype and configuration ID of the two trigger keys match.
-
inline bool operator!=(const TriggerKey &rhs) const¶
Inequality operator.
- Parameters:
rhs – The trigger key to compare this one to.
- Returns:
false if source, type, subtype and configuration ID of the two trigger keys are different.
Public Static Functions
-
static const char *GetSourceString(SourceID source)¶
Returns the name of a source ID.
- Parameters:
source – The source ID.
- Returns:
The name.
Friends
- friend class icecube::serialization::access
-
enum SourceID¶
-
struct TWRAOMStatus¶
- #include <Deprecated.hpp>
Public Members
-
double binSize¶
-
unsigned int stopDelay¶
-
unsigned int baseline¶
-
unsigned int threshold¶
Friends
- friend class icecube::serialization::access
-
double binSize¶
-
struct TWRCalibration¶
- #include <Deprecated.hpp>
-
struct TWRXTCal¶
- #include <Deprecated.hpp>
-
class ublas_matrix_shim : public boost::numeric::ublas::matrix<double, boost::numeric::ublas::row_major, ublas_storage_shim>¶
- #include <I3Matrix.h>
Subclassed by I3Matrix
Protected Types
-
typedef boost::numeric::ublas::matrix<double, boost::numeric::ublas::row_major, ublas_storage_shim> base¶
Protected Functions
-
inline ublas_matrix_shim()¶
-
inline ublas_matrix_shim(size_t size1, size_t size2)¶
Friends
- friend class icecube::serialization::access
-
typedef boost::numeric::ublas::matrix<double, boost::numeric::ublas::row_major, ublas_storage_shim> base¶
-
class ublas_storage_shim : public boost::numeric::ublas::unbounded_array<double, std::allocator<double>>¶
- #include <I3Matrix.h>
Public Types
Public Functions
-
inline explicit ublas_storage_shim(const allocator_type &a = allocator_type())¶
-
inline explicit ublas_storage_shim(size_type size, const allocator_type &a = allocator_type())¶
-
inline ublas_storage_shim(size_type size, const value_type &init, const allocator_type &a = allocator_type())¶
Friends
- friend class icecube::serialization::access
-
inline explicit ublas_storage_shim(const allocator_type &a = allocator_type())¶
-
namespace [anonymous]
-
namespace [anonymous]¶
-
namespace [anonymous]¶
-
namespace [anonymous]¶
-
namespace [anonymous]¶
-
namespace [anonymous]¶
-
namespace CompareFloatingPoint¶
-
namespace fft¶
Enums
Functions
-
AntennaTimeSeries GetHilbertEnvelope(const FFTData &data)¶
-
EFieldTimeSeries GetHilbertEnvelope(const FFTData3D &data)¶
-
AntennaTimeSeries GetHilbertEnvelope(const AntennaTimeSeries &timeSeries)¶
-
EFieldTimeSeries GetHilbertEnvelope(const EFieldTimeSeries &timeSeries)¶
-
AntennaSpectrum GetAnalyticSignal(const FFTData &data)¶
-
AntennaSpectrum GetAnalyticSignal(const AntennaTimeSeries &timeSeries)¶
-
double GetHilbertPeakTime(const AntennaTimeSeries &timeSeries)¶
-
double GetHilbertPeakTime(const AntennaTimeSeries &timeSeries, double &maxVal)¶
-
double GetHilbertPeakTime(const EFieldTimeSeries &timeSeries, double &maxVal)¶
-
boost::rational<long> GetRationalNumberFromDecimal(double decimal, const bool secondCall = false)¶
-
template<typename T, typename F>
void UpsampleTimeSeries(FFTDataContainer<T, F> &container, const unsigned int upsamplingFactor, const bool removeOffset = false)¶
-
template<typename T, typename F>
void TruncateFrequencySpectrum(FFTDataContainer<T, F> &container, const double targetBinning)¶
-
template<typename T, typename F>
void ThinOutTimeSeries(FFTDataContainer<T, F> &container, const long thinOutFactor)¶
-
template<typename T, typename F>
void ResampleFFTDataContainer(FFTDataContainer<T, F> &container, const double timeBinning)¶
-
const unsigned int GetNCFromNR(unsigned int nReal)¶
-
const unsigned int GetNRFromNC(unsigned int nComp)¶
-
AntennaTimeSeries GetHilbertEnvelope(const FFTData &data)¶
-
namespace GSL¶
Functions
-
template<typename FunctionType>
double integrate(FunctionType &&f, double a, double b, double rtol = 1e-7, unsigned int max_iter = 10000, size_t memory_alloc = 10000)¶ Compute a one-dimensional integral using GSL.
- Parameters:
f – Function to integrate.
a – Lower integration limit.
b – Upper integration limit.
rtol – Target relative tolerance.
max_iter – Maximum number of iterations to perform the integral.
memory_alloc – Number of intervals of scratch space to allocate.
-
template<typename FunctionType>
-
namespace I3
-
namespace detail¶
-
namespace I3Constants¶
A list of static variables commonly used by physics analysis.
Just a namespace filled with constants — add a line
using namespace I3Constants
to get access to them directly, or just useI3Constants::pi
, for example.- Todo:
probably need more constants here. Add them here when you need them.
Variables
-
static const double KBoltzmann = 1.38064852e-23 * I3Units::joule / I3Units::kelvin¶
Boltzmann temperature constant (i.e. k_B)
-
static const double n_ice_phase = 1.3195¶
The “average” phase velocity (for wavelength of 400nm)
See also
-
static const double n_ice_group = 1.35634¶
The “average” group velocity (for wavelength of 400nm)
See also
-
static const double n_ice = n_ice_group¶
The index of refraction of ice
-
static const double theta_cherenkov = std::acos(1 / n_ice_phase) * I3Units::rad¶
The Cherenkov angle in ice
-
static const double c_ice = c / n_ice_group¶
The speed of light in ice
-
static const double pi = M_PI¶
pi.
-
static const double e = M_E¶
Euler’s number
-
static const double NA = 6.0221415e23¶
Avaogadro’s Number
-
static const double SurfaceElev = 9291.31 * I3Units::feet¶
Elevation of ice surface (floor of string 21 deployment tower)
-
static const double OriginElev = 2900 * I3Units::feet¶
Elevation of IceCube origin (z=0) — BY DEFINITION From email from Kurt Woschnagg on 08/25/2004
-
static const double zIceTop = SurfaceElev - OriginElev¶
Z-coordinate of IceTop (Origin Depth) Obtained from DEFINED elevation of origin and MEASURED surface elevation
- Todo:
Make sure that the elevation of IceTop is the same as the elevation of AMANDA hole 4. If not, then correct for the difference.
-
static const double Coordinate_shift_x = -339.8 * I3Units::m¶
Conversion between IceCube and AMANDA coordinates from docushare file by Kurt Woschnagg (x,y,z)icecube = (x,y,z)amanda - (x,y,z)shift
-
namespace I3DeltaCompression¶
-
namespace I3MCTreePhysicsLibrary¶
Functions
-
I3MCTree::optional_value GetMostEnergeticPrimary(const I3MCTree &t, bool safe_mode = true)¶
Returns the InIce particle with highest energy. This is useful for example in extracting “the muon” from the atmospheric neutrino data. The names below are fairly descriptive and should accurately describe what the function does.
If safe_mode is true, return boost::none if there are two or more particles with the same highest energy. This incurs a second O(N) search over the tree.
-
I3MCTree::optional_value GetMostEnergetic(const I3MCTree &t, I3Particle::ParticleType pt, bool safe_mode = true)¶
-
I3MCTree::optional_value GetMostEnergetic(I3MCTreeConstPtr t, I3Particle::ParticleType pt, bool safe_mode = true)¶
-
I3MCTree::optional_value GetMostEnergeticPrimary(const I3MCTree &t, bool safe_mode = true)¶
-
namespace I3MCTreeUtils¶
Functions
-
void AddPrimary(I3MCTree&, const I3Particle&)¶
Adds a primary (top-level node) to the tree. The primary has no parent. A tree can have multiple primaries. Sets the shape to Primary
-
void AppendChild(I3MCTree&, const I3ParticleID&, const I3Particle&)¶
Appends a child to the parent particle
-
const std::vector<I3Particle> GetPrimaries(const I3MCTree&)¶
Gets a list of primaries from the tree
-
const std::vector<const I3Particle*> GetPrimariesPtr(I3MCTreeConstPtr)¶
-
const std::vector<I3Particle*> GetPrimariesPtr(I3MCTreePtr)¶
-
const std::vector<I3Particle> GetDaughters(const I3MCTree&, const I3ParticleID&)¶
Gets a list of daughters of the parent particle.
-
const std::vector<const I3Particle*> GetDaughtersPtr(const I3MCTreeConstPtr, const I3ParticleID&)¶
-
const std::vector<I3Particle*> GetDaughtersPtr(I3MCTreePtr, const I3ParticleID&)¶
-
const I3Particle GetParent(const I3MCTree&, const I3ParticleID&)¶
Gets the parent of a particleID. log_fatal or NULL if parent does not exist
-
const I3Particle *GetParentPtr(const I3MCTreeConstPtr, const I3ParticleID&)¶
-
I3Particle *GetParentPtr(I3MCTreePtr, const I3ParticleID&)¶
-
bool Has(const I3MCTree&, const I3ParticleID&)¶
Returns true if the particle is in the tree
-
bool HasParent(const I3MCTree&, const I3ParticleID&)¶
Returns true if the particle has a parent
-
const I3Particle GetParticle(const I3MCTree&, const I3ParticleID&)¶
This gets the particle with a particleID. log_fatal or NULL if particle does not exist.
-
const I3Particle *GetParticlePtr(const I3MCTreeConstPtr, const I3ParticleID&)¶
-
I3Particle *GetParticlePtr(I3MCTreePtr, const I3ParticleID&)¶
-
const I3Particle GetPrimary(const I3MCTree&, const I3ParticleID&)¶
This gets the primary that created the particleID. log_fatal or NULL if particle does not exist.
-
const I3Particle *GetPrimaryPtr(const I3MCTreeConstPtr, const I3ParticleID&)¶
-
I3Particle *GetPrimaryPtr(I3MCTreePtr, const I3ParticleID&)¶
-
const I3MCTreeConstPtr Get(const I3Frame&, const std::string&)¶
Gets an I3MCTree from the frame with the specified key.
-
template<typename Function>
const I3MCTree::optional_value GetBest(const I3MCTree &t, Function func)¶ Get the “best match” particle in the tree using a comparison Function.
- Parameters:
t – I3MCTree
func – Callable which takes two I3Particles, compares them, and returns true if the first is better, false if the second is better
-
template<typename Function>
const I3MCTree::fast_const_iterator GetBestPtr(const I3MCTreeConstPtr t, Function func)¶
-
template<typename Function>
const std::vector<I3Particle> GetFilter(const I3MCTree &t, Function func)¶ Get all matching particles in the tree using a filter Function.
- Parameters:
t – I3MCTree
func – Callable which takes an I3Particle and returns true/false
-
template<typename Function>
const std::vector<typename I3MCTree::fast_const_iterator> GetFilterPtr(const I3MCTreeConstPtr t, Function func)¶
-
template<typename FilterFunction, typename CmpFunction>
const I3MCTree::optional_value GetBestFilter(const I3MCTree &t, FilterFunction f, CmpFunction c)¶ Get best matching particle in the tree using a filter Function and a comparison Function.
- Parameters:
t – I3MCTree
f – Callable which takes an I3Particle and returns true/false
c – Callable which takes two I3Particles, compares them, and returns true if the first is better, false if the second is better
-
template<typename FilterFunction, typename CmpFunction>
const I3MCTree::fast_const_iterator GetBestFilterPtr(const I3MCTreeConstPtr t, FilterFunction f, CmpFunction c)¶
-
void AddPrimary(I3MCTree&, const I3Particle&)¶
-
namespace I3SuperDSTRecoPulseUtils¶
Functions
-
static bool TimeOrdering(const I3RecoPulse &p1, const I3RecoPulse &p2)¶
-
static bool IsBorked(const I3RecoPulse &p1)¶
-
static bool HasLC(const I3RecoPulse &p1)¶
-
static bool ShouldSplit(const OMKey &key, const I3RecoPulse ¤t, const I3RecoPulse &previous)¶
-
static bool TimeOrdering(const I3RecoPulse &p1, const I3RecoPulse &p2)¶
-
namespace I3SuperDSTSerialization¶
Functions
- struct I3SuperDSTSerialization::DOMHeader __attribute ((packed))
-
namespace I3SuperDSTUtils¶
-
namespace I3TimeUtils¶
Functions
-
bool leap_year(const int year)¶
Returns true if the year is a leap year
-
int32_t mod_julian_day_start_of_year(int year)¶
returns the Modified Julian Date of Jan 1 of the specified year
-
bool leap_sec_on_mjd(const double mjd)¶
return true if a leap second occurs on the last second of the day Modified Julian Date of mjd
-
int32_t leap_seconds_range(const int32_t mjd1, const int32_t mjd2)¶
returns the number of leapseconds between the specified Modified Julian Dates.
Including the leap second at the end of mjd1 but not the one at the end of mjd2. returns negative value if mjd2 > mjd1
-
int32_t year_to_date_leap_seconds(const int32_t mjd)¶
Returns the number of leapseconds since the start of the year for specified Modified Julian Date.
-
int32_t seconds_in_day(const double mjd)¶
return return the number of seconds on Modified Julian Date mjd: 86400 for normal days, 86401 for days with leap second
-
int64_t max_DAQ_time(const int year)¶
Returns the number of tenths of nanoseconds it the specified year.
Takes into account both leap years and leap seconds
-
int64_t ns_to_daqtime(const double time)¶
Converts a time of type double with I3Units of time (your choice) to the number of tenths of nanoseconds (i.e. “daqtime”). This takes into account rounding.
-
bool leap_year(const int year)¶
-
namespace I3TriggerHierarchyUtils¶
Functions
-
inline size_t Count(const I3TriggerHierarchy &triggers, TriggerKey::SourceID src)¶
-
inline size_t Count(const I3TriggerHierarchy &triggers, TriggerKey::TypeID type)¶
-
inline size_t Count(const I3TriggerHierarchy &triggers, TriggerKey::SourceID src, TriggerKey::TypeID type)¶
-
inline size_t Count(const I3TriggerHierarchy &triggers, const TriggerKey &key)¶
-
inline size_t Count(const I3TriggerHierarchy &triggers, const std::vector<TriggerKey> keys)¶
-
inline I3TriggerHierarchy::iterator Find(const I3TriggerHierarchy &triggers, TriggerKey::SourceID src, I3TriggerHierarchy::iterator iter = I3TriggerHierarchy::iterator())¶
-
inline I3TriggerHierarchy::iterator Find(const I3TriggerHierarchy &triggers, TriggerKey::TypeID type, I3TriggerHierarchy::iterator iter = I3TriggerHierarchy::iterator())¶
-
inline I3TriggerHierarchy::iterator Find(const I3TriggerHierarchy &triggers, TriggerKey::SourceID src, TriggerKey::TypeID type, I3TriggerHierarchy::iterator iter = I3TriggerHierarchy::iterator())¶
-
inline I3TriggerHierarchy::iterator Find(const I3TriggerHierarchy &triggers, const TriggerKey &key, I3TriggerHierarchy::iterator iter = I3TriggerHierarchy::iterator())¶
-
inline I3TriggerHierarchy Insert(I3TriggerHierarchy &triggers, const I3Trigger &trig)¶
-
inline size_t Count(const I3TriggerHierarchy &triggers, TriggerKey::SourceID src)¶
-
namespace internal¶
Functions
-
inline bool EqualSrc(const I3Trigger &trigger, TriggerKey::SourceID src)¶
-
inline bool EqualType(const I3Trigger &trigger, TriggerKey::TypeID type)¶
-
inline bool EqualSrcType(const I3Trigger &trigger, TriggerKey::SourceID src, TriggerKey::TypeID type)¶
-
inline bool EqualKey(const I3Trigger &trigger, const TriggerKey &key)¶
-
inline bool EqualKeys(const I3Trigger &trigger, const std::vector<TriggerKey> keys)¶
-
inline bool EqualSrc(const I3Trigger &trigger, TriggerKey::SourceID src)¶
-
namespace I3Units¶
-
namespace kp¶
- Todo:
New-style move members are not completely finished yet.
Fixed depth iterators do not iterate over the entire range if there are ‘holes’ in the tree.
If a range uses const iter_base& as end iterator, things will inevitably go wrong, because upcast from iter_base to a non-sibling_iter is incorrect. This upcast should be removed (and then all illegal uses as previously in ‘equal’ will be flagged by the compiler). This requires new copy constructors though.
There’s a bug in replace(sibling_iterator, …) when the ranges sit next to each other. Turned up in append_child(iter,iter) but has been avoided now.
”std::operator<” does not work correctly on our iterators, and for some reason a globally defined template operator< did not get picked up. Using a comparison class now, but this should be investigated.
-
namespace std
STL namespace.
-
namespace TreeBase¶
- file AntennaKey.cxx
- #include <dataclasses/AntennaKey.h>#include <icetray/I3Logging.h>
Functions
-
std::ostream &operator<<(std::ostream &os, const AntennaKey &key)¶
-
bool operator<(const AntennaKey &lhs, const AntennaKey &rhs)¶
-
I3_SERIALIZABLE(AntennaKey)¶
-
I3_SERIALIZABLE(I3VectorAntennaKey)¶
-
I3_SERIALIZABLE(I3MapAntennaKeyAntennaKey)¶
-
std::ostream &operator<<(std::ostream &os, const AntennaKey &key)¶
- file AntennaKey.h
- #include <iostream>#include <icetray/serialization.h>#include <icetray/I3PointerTypedefs.h>#include <dataclasses/I3Vector.h>
Typedefs
-
typedef I3Vector<AntennaKey> I3VectorAntennaKey¶
-
typedef I3Map<AntennaKey, AntennaKey> I3MapAntennaKeyAntennaKey¶
Functions
-
bool operator<(const AntennaKey &lhs, const AntennaKey &rhs)
-
std::ostream &operator<<(std::ostream&, const AntennaKey &key)
-
I3_POINTER_TYPEDEFS(AntennaKey)¶
-
I3_POINTER_TYPEDEFS(I3VectorAntennaKey)¶
-
I3_POINTER_TYPEDEFS(I3MapAntennaKeyAntennaKey)¶
Variables
-
static const unsigned antennakey_version_ = 0¶
-
typedef I3Vector<AntennaKey> I3VectorAntennaKey¶
- file caldate.cxx
- #include “jday.h”
- file CompareFloatingPoint.cxx
- #include <dataclasses/external/CompareFloatingPoint.h>#include <iostream>#include <sstream>#include <iomanip>
- file CompareFloatingPoint.h
- #include <float.h>#include <cmath>#include <stdint.h>#include <cstring>#include <string>#include <cstdlib>
- file copy_if.h
Functions
-
template<typename InputIterator, typename OutputIterator, typename Predicate>
OutputIterator copy_if(InputIterator begin, InputIterator end, OutputIterator destBegin, Predicate p)¶ Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
-
template<typename InputIterator, typename OutputIterator, typename Predicate>
- file DeltaCompressor.cxx
- #include “dataclasses/physics/DeltaCompressor.h”#include <iostream>#include <stdexcept>#include <cstdlib>#include <cassert>
- file DeltaCompressor.h
- #include <vector>
- file calibration/deprecated/Deprecated.hpp
- #include <icetray/serialization.h>#include <icetray/OMKey.h>#include <dataclasses/calibration/I3DOMCalibration.h>
Functions
-
I3_SERIALIZABLE(TWRCalibration)¶
-
I3_SERIALIZABLE(I3TankCalibrationBackwardsCompat)¶
-
I3_SERIALIZABLE(I3AMANDAOM_XTalk)¶
-
I3_SERIALIZABLE(I3AMANDAOMCalibration)¶
-
I3_SERIALIZABLE(TWRCalibration)¶
- file status/deprecated/Deprecated.hpp
Functions
-
I3_SERIALIZABLE(TWRAOMStatus)¶
-
I3_SERIALIZABLE(TWRAOMStatus)¶
- file FFTDataContainer.cxx
- #include <serialization/base_object.hpp>#include <serialization/nvp.hpp>#include <serialization/complex.hpp>#include <dataclasses/fft/FFTDataContainer.h>#include <dataclasses/fft/FFTWPlan.h>
- file FFTDataContainer.h
- #include <complex>#include <iostream>#include <dataclasses/Utility.h>#include <icetray/I3Logging.h>#include <dataclasses/I3AntennaWaveform.h>
Defines
-
DO_ICECUBE_DEFS(type)¶
Typedefs
-
using FFTData = FFTDataContainer<double, std::complex<double>>¶
-
using FFTData3D = FFTDataContainer<I3Position, I3ComplexVector>¶
Variables
-
static const unsigned int i3fftdatacontainer_version_ = 0¶
-
DO_ICECUBE_DEFS(type)¶
- file FFTHilbertEnvelope.cxx
- #include <dataclasses/fft/FFTHilbertEnvelope.h>#include <dataclasses/fft/FFTDataContainer.h>#include <dataclasses/fft/FFTWPlan.h>
- file FFTHilbertEnvelope.h
- #include <dataclasses/I3AntennaWaveform.h>#include <dataclasses/fft/FFTDataContainer.h>
- file FFTResamplingTools.cxx
- #include <dataclasses/fft/FFTResamplingTools.h>
- file FFTResamplingTools.h
- #include <dataclasses/fft/FFTDataContainer.h>#include <boost/rational.hpp>
- file FFTWPlan.cxx
- #include <iostream>#include <fftw3.h>#include <math.h>#include <dataclasses/fft/FFTWPlan.h>#include <icetray/I3Logging.h>
- file FFTWPlan.h
- #include <fftw3.h>#include <vector>#include <complex>
- file I3AMANDAAnalogReadout.cxx
- #include <icetray/serialization.h>#include “dataclasses/physics/I3AMANDAAnalogReadout.h”#include <algorithm>#include <functional>
Copyright (C) 2005 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
deyoung
Functions
-
I3_SPLIT_SERIALIZABLE(I3AMANDAAnalogReadout)¶
-
I3_SERIALIZABLE(I3AMANDAAnalogReadoutMap)¶
-
std::ostream &operator<<(std::ostream &os, const I3AMANDAAnalogReadout &r)¶
- file I3AMANDAAnalogReadout.h
- #include <iostream>#include <vector>#include “dataclasses/Utility.h”#include “dataclasses/I3Vector.h”#include “dataclasses/I3Map.h”#include “icetray/OMKey.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Map<OMKey, I3AMANDAAnalogReadout> I3AMANDAAnalogReadoutMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3AMANDAAnalogReadout&)
-
I3_POINTER_TYPEDEFS(I3AMANDAAnalogReadout)¶
-
I3_POINTER_TYPEDEFS(I3AMANDAAnalogReadoutMap)¶
-
I3_CLASS_VERSION(I3AMANDAAnalogReadoutMap, i3amandaanalogreadout_version_)¶
Variables
-
static const unsigned i3amandaanalogreadout_version_ = 0¶
Old-style AMANDA ADC/TDC readout.
This class represents an old-style AMANDA DAQ readout, with a series of LEs and TEs and a single amplitude measurement that represents the peak from the entire event. TOTs are generated on the fly and may be wrong if edges are missing.
- file I3AntennaChannel.cxx
- #include <dataclasses/I3AntennaChannel.h>#include <dataclasses/fft/FFTHilbertEnvelope.h>#include <icetray/I3Units.h>
Functions
-
I3_SERIALIZABLE(I3AntennaChannel)¶
-
I3_SERIALIZABLE(I3AntennaChannelMap)¶
-
std::ostream &operator<<(std::ostream &os, const I3AntennaChannel &g)¶
-
I3_SERIALIZABLE(I3AntennaChannel)¶
- file I3AntennaChannel.h
- #include <dataclasses/I3Map.h>#include <dataclasses/fft/FFTDataContainer.h>
Typedefs
-
typedef I3Map<int, I3AntennaChannel> I3AntennaChannelMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3AntennaChannel&)
-
I3_POINTER_TYPEDEFS(I3AntennaChannel)¶
-
I3_CLASS_VERSION(I3AntennaChannel, i3antennachannel_version_)¶
-
I3_POINTER_TYPEDEFS(I3AntennaChannelMap)¶
Variables
-
static const unsigned int i3antennachannel_version_ = 0¶
-
typedef I3Map<int, I3AntennaChannel> I3AntennaChannelMap¶
- file I3AntennaDataMap.cxx
- #include <dataclasses/I3AntennaDataMap.h>
Functions
-
I3_SERIALIZABLE(I3AntennaDataMap)¶
-
I3_SERIALIZABLE(I3AntennaDataMap)¶
- file I3AntennaDataMap.h
- #include <dataclasses/I3Map.h>#include <dataclasses/I3AntennaChannel.h>
Typedefs
-
typedef I3Map<AntennaKey, I3AntennaChannelMap> I3AntennaDataMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3AntennaDataMap)¶
-
typedef I3Map<AntennaKey, I3AntennaChannelMap> I3AntennaDataMap¶
- file I3AntennaGeo.cxx
- #include <dataclasses/geometry/I3AntennaGeo.h>
Functions
-
I3_SERIALIZABLE(I3AntennaGeo)¶
-
I3_SERIALIZABLE(I3AntennaGeoMap)¶
-
std::ostream &operator<<(std::ostream &os, const I3AntennaGeo &g)¶
-
I3_SERIALIZABLE(I3AntennaGeo)¶
- file I3AntennaGeo.h
- #include <string>#include <dataclasses/I3Direction.h>#include <dataclasses/I3Orientation.h>#include <dataclasses/I3Position.h>#include <dataclasses/I3Map.h>#include <dataclasses/Utility.h>#include <dataclasses/AntennaKey.h>
Typedefs
-
typedef I3Map<AntennaKey, I3AntennaGeo> I3AntennaGeoMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3AntennaGeo&)
-
I3_POINTER_TYPEDEFS(I3AntennaGeo)¶
-
I3_CLASS_VERSION(I3AntennaGeo, i3antennageo_version_)¶
-
I3_POINTER_TYPEDEFS(I3AntennaGeoMap)¶
Variables
-
static const unsigned i3antennageo_version_ = 0¶
-
typedef I3Map<AntennaKey, I3AntennaGeo> I3AntennaGeoMap¶
- file I3AntennaWaveform.cxx
- #include <dataclasses/I3AntennaWaveform.h>#include <serialization/base_object.hpp>#include <serialization/nvp.hpp>#include <serialization/complex.hpp>
Defines
-
LEFT_AUGMENTED_ARITHMETIC_OPERATOR_1D(_type_, _op_)¶
-
LEFT_ARITHMETIC_OPERATOR_1D(_type_, _op_)¶
Functions
-
I3_SERIALIZABLE(AntennaTimeSeries)¶
-
I3_SERIALIZABLE(AntennaSpectrum)¶
-
I3_SERIALIZABLE(EFieldTimeSeries)¶
-
I3_SERIALIZABLE(EFieldSpectrum)¶
-
I3_SERIALIZABLE(AntennaTimeSeriesMap)¶
-
I3_SERIALIZABLE(AntennaSpectrumMap)¶
-
I3_SERIALIZABLE(EFieldTimeSeriesMap)¶
-
I3_SERIALIZABLE(EFieldSpectrumMap)¶
-
LEFT_AUGMENTED_ARITHMETIC_OPERATOR_1D(_type_, _op_)¶
- file I3AntennaWaveform.h
- #include <functional>#include <iostream>#include <vector>#include <complex>#include <dataclasses/AntennaKey.h>#include <dataclasses/Utility.h>#include <dataclasses/I3Map.h>#include <dataclasses/I3Vector.h>#include <dataclasses/I3Position.h>#include <dataclasses/I3ComplexVector.h>
Defines
-
DO_DEFINE_IC(type)¶
-
INNER_ARITHMETIC_BINARY_OPERATOR(_op_, _stl_functor_)¶
-
INNER_AUGMENTED_ARITHMETIC_OPERATOR(_op_, _stl_functor_)¶
-
OUTER_AUGMENTED_ARITHMETIC_OPERATOR(_op_, _stl_functor_)¶
-
LEFT_AUGMENTED_ARITHMETIC_OPERATOR_DOUBLE(_op_)¶
-
LEFT_ARITHMETIC_OPERATOR(_op_)¶
Typedefs
-
typedef I3AntennaWaveform<double> AntennaTimeSeries¶
-
typedef I3AntennaWaveform<std::complex<double>> AntennaSpectrum¶
-
typedef I3AntennaWaveform<I3Position> EFieldTimeSeries¶
-
typedef I3AntennaWaveform<I3ComplexVector> EFieldSpectrum¶
Functions
-
DO_DEFINE_IC(AntennaTimeSeries)¶
-
DO_DEFINE_IC(AntennaSpectrum)¶
-
DO_DEFINE_IC(EFieldTimeSeries)¶
-
DO_DEFINE_IC(EFieldSpectrum)¶
-
AntennaTimeSeries &operator*=(AntennaTimeSeries &lhs, const AntennaTimeSeries &rhs)¶
-
AntennaTimeSeries &operator/=(AntennaTimeSeries &lhs, const AntennaTimeSeries &rhs)¶
-
AntennaSpectrum &operator*=(AntennaSpectrum &lhs, const AntennaSpectrum &rhs)¶
-
AntennaSpectrum &operator/=(AntennaSpectrum &lhs, const AntennaSpectrum &rhs)¶
-
AntennaTimeSeries operator*(AntennaTimeSeries &lhs, const AntennaTimeSeries &rhs)¶
-
AntennaTimeSeries operator/(AntennaTimeSeries &lhs, const AntennaTimeSeries &rhs)¶
-
AntennaSpectrum operator*(AntennaSpectrum &lhs, const AntennaSpectrum &rhs)¶
-
AntennaSpectrum operator/(AntennaSpectrum &lhs, const AntennaSpectrum &rhs)¶
Variables
-
static const unsigned int i3antennawaveform_version_ = 0¶
-
DO_DEFINE_IC(type)¶
- file I3Calibration.cxx
- #include <map>#include <icetray/serialization.h>#include <dataclasses/calibration/I3Calibration.h>#include “dataclasses/TankKey.h”#include “deprecated/Deprecated.hpp”
Functions
-
I3_SPLIT_SERIALIZABLE(I3Calibration)¶
-
I3_SPLIT_SERIALIZABLE(I3Calibration)¶
- file I3Calibration.h
- #include <map>#include “dataclasses/Utility.h”#include “dataclasses/calibration/I3DOMCalibration.h”#include “dataclasses/calibration/I3VEMCalibration.h”#include “dataclasses/I3Time.h”#include “icetray/OMKey.h”#include <icetray/I3FrameObject.h>#include <icetray/I3DefaultName.h>
Definition of I3Calibration class
Copyright (C) 2004 the IceCube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Functions
-
I3_CLASS_VERSION(I3Calibration, i3calibration_version_)¶
-
I3_DEFAULT_NAME(I3Calibration)¶
-
I3_POINTER_TYPEDEFS(I3Calibration)¶
Variables
-
static const unsigned i3calibration_version_ = 4¶
- file I3ComplexVector.cxx
- #include <dataclasses/I3ComplexVector.h>#include <dataclasses/I3Position.h>#include <dataclasses/I3Direction.h>#include <serialization/complex.hpp>
- file I3ComplexVector.h
- #include <cmath>#include <complex>#include “icetray/I3FrameObject.h”#include <dataclasses/Utility.h>#include <sstream>#include “dataclasses/external/CompareFloatingPoint.h”
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3ComplexVector &p)¶
-
double abs(const I3ComplexVector &p)
-
I3_POINTER_TYPEDEFS(I3ComplexVector)¶
-
I3_CLASS_VERSION(I3ComplexVector, i3complexvector_version_)¶
Variables
-
static const unsigned i3complexvector_version_ = 0¶
Complex implementation of I3Position.
-
std::ostream &operator<<(std::ostream &oss, const I3ComplexVector &p)¶
- file I3Constants.h
- #include “icetray/I3Units.h”#include <cmath>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
- file I3DetectorStatus.cxx
- #include <icetray/serialization.h>#include <dataclasses/status/I3DetectorStatus.h>#include “deprecated/Deprecated.hpp”
Functions
-
I3_SPLIT_SERIALIZABLE(I3DetectorStatus)¶
-
I3_SPLIT_SERIALIZABLE(I3DetectorStatus)¶
- file I3DetectorStatus.h
- #include <map>#include <icetray/I3DefaultName.h>#include <icetray/I3FrameObject.h>#include <dataclasses/I3Time.h>#include <icetray/OMKey.h>#include <dataclasses/TriggerKey.h>#include <dataclasses/Utility.h>#include <dataclasses/status/I3DOMStatus.h>#include <dataclasses/status/I3TriggerStatus.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Functions
-
I3_CLASS_VERSION(I3DetectorStatus, i3detectorstatus_version_)¶
-
I3_DEFAULT_NAME(I3DetectorStatus)¶
-
I3_POINTER_TYPEDEFS(I3DetectorStatus)¶
Variables
-
static const unsigned i3detectorstatus_version_ = 4¶
This is the state of the aspects of the detector that people have direct control over. Contains the “per run” settings.
Stuff that is a ‘knob’ on the detector. This is a top-level object in the frame related to this ‘Detector Status’ information. Contains:
map of per DOM configurations (also the list of active DOMs),
map of per AOM configurations (including AOMs read out by the TWR DAQ),
map of active icecube triggers (and their configurations),
map of active amanda triggers (and their configurations) and
map of active domhubs (and their settings) … eventually.
- file I3Direction.cxx
- #include <iostream>#include <icetray/serialization.h>#include <dataclasses/I3Direction.h>#include <dataclasses/I3Position.h>#include <cmath>#include <icetray/I3Units.h>
Functions
-
I3_SERIALIZABLE(I3Direction)¶
-
I3_SERIALIZABLE(I3DirectionVect)¶
-
I3Position operator*(double a, const I3Direction &d)¶
-
std::ostream &operator<<(std::ostream &oss, const I3Direction &d)¶
-
I3_SERIALIZABLE(I3Direction)¶
- file I3Direction.h
- #include <icetray/I3FrameObject.h>#include <dataclasses/I3Constants.h>#include “Utility.h”#include <dataclasses/I3Vector.h>#include <dataclasses/external/CompareFloatingPoint.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Vector<I3Direction> I3DirectionVect¶
Functions
-
I3Position operator*(double, const I3Direction&)
-
std::ostream &operator<<(std::ostream &oss, const I3Direction &d)
-
I3_POINTER_TYPEDEFS(I3Direction)¶
-
I3_CLASS_VERSION(I3Direction, i3direction_version_)¶
-
I3_POINTER_TYPEDEFS(I3DirectionVect)¶
Variables
-
static const unsigned i3direction_version_ = 0¶
- file I3DOMCalibration.cxx
- #include <map>#include <icetray/serialization.h>#include <dataclasses/calibration/I3DOMCalibration.h>#include <icetray/I3Units.h>#include <gsl/gsl_integration.h>
Defines
-
DSPET_compare_member(member)¶
Functions
-
I3_SERIALIZABLE(QuadraticFit)¶
-
I3_SPLIT_SERIALIZABLE(SPEChargeDistribution)¶
-
std::ostream &operator<<(std::ostream &oss, const QuadraticFit &f)¶
-
std::ostream &operator<<(std::ostream &oss, const SPEChargeDistribution &spe)¶
-
std::ostream &operator<<(std::ostream &oss, const I3DOMCalibration &c)¶
-
std::ostream &operator<<(std::ostream &oss, const I3DOMCalibrationMap &m)¶
-
I3_SERIALIZABLE(I3DOMCalibration)¶
Variables
-
const double causalityShift = -11.5¶
-
const SPETemplate ATWDNewToroidTemplate[3] = {SPETemplate(17.899 / 14.970753076313095, -4.24 - 5 - causalityShift, 5.5, 42), SPETemplate(1.6581978, -11.70227755 - causalityShift, 5.4664884, 36.22319705), SPETemplate(0.70944364, -10.58782492 - causalityShift, 3.48330553, 42.10873959)}¶
-
const SPETemplate ATWDNewToroidDroopTemplate[3] = {SPETemplate(-0.8644871211757873, -0.39712728498041222, 2.2153931795324807e-08, 0.18265408524009966), SPETemplate(-0.60714457126191879, 1.0708609673531526, 0.85478360796100328, 0.22084066752348605), SPETemplate(-1.4510165738141465, -0.29659623453192685, 7.5567807067886802e-09, 0.18209846421412432),}¶
-
const SPETemplate ATWDOldToroidTemplate[3] = {SPETemplate(15.47 / 13.292860653948139, -3.929 - 5 - causalityShift, 4.7, 39.), SPETemplate(2.07399312, -10.95781298 - causalityShift, 4.86019733, 30.74826947), SPETemplate(1.35835821, -9.68624195 - causalityShift, 3.5016398, 30.96897853),}¶
-
const SPETemplate ATWDOldToroidDroopTemplate[3] = {SPETemplate(-0.87271352029389926, -0.37445896923019595, 0.05292192451474604, 0.2015123032569355), SPETemplate(-0.48448879003182993, 0.035060687415361419, 0.044493411456291751, 0.25894387769482058), SPETemplate(-0.74959447466950724, 0.16580945347622786, 0.055065176963265461, 0.25173422056591982),}¶
- const SPETemplate FADCTemplate (25.12/71.363940160184669, 61.27-50-causalityShift, 30., 186.)
- const SPETemplate FADCDroopTemplate (-2.8837584956162883, 0.57888025049064207, 0.81965713180496758, 0.04299648444652391)
-
DSPET_compare_member(member)¶
- file I3DOMCalibration.h
- #include <string>#include <map>#include <vector>#include <stdint.h>#include <sstream>#include <cmath>#include <boost/math/constants/constants.hpp>#include <dataclasses/external/CompareFloatingPoint.h>#include <icetray/I3Units.h>#include <dataclasses/Utility.h>#include <icetray/OMKey.h>
Definition of I3DOMCalibration class
Copyright (C) 2004 the IceCube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef std::map<OMKey, I3DOMCalibration> I3DOMCalibrationMap¶
Functions
-
I3_CLASS_VERSION(LinearFit, linearfit_version_)¶
-
I3_CLASS_VERSION(QuadraticFit, quadraticfit_version_)¶
-
I3_CLASS_VERSION(SPEChargeDistribution, SPEChargeDistribution_version_)¶
-
I3_CLASS_VERSION(TauParam, tauparam_version_)¶
-
I3_POINTER_TYPEDEFS(I3DOMCalibrationMap)¶
-
I3_CLASS_VERSION(I3DOMCalibration, i3domcalibration_version_)¶
-
I3_POINTER_TYPEDEFS(I3DOMCalibration)¶
-
std::ostream &operator<<(std::ostream &oss, const QuadraticFit &f)
-
std::ostream &operator<<(std::ostream &oss, const SPEChargeDistribution &spe)
-
std::ostream &operator<<(std::ostream &oss, const I3DOMCalibration &c)
-
std::ostream &operator<<(std::ostream &oss, const I3DOMCalibrationMap &m)
- file I3DOMFunctions.cxx
- #include “dataclasses/I3DOMFunctions.h”#include “icetray/I3Units.h”#include <vector>#include <string>
Copyright (C) 2006 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Functions
-
double ATWDSamplingRate(unsigned int chip, const I3DOMStatus &status, const I3DOMCalibration &calib)¶
A class containing a collection of functions that use dom status/calibration information to return “calculated” status items (Gain, SPEMean, etc)
expandible in the future, as needed Return the ATWD sampling rate for chip 0 or 1
-
double PMTGain(const I3DOMStatus &status, const I3DOMCalibration &calib)¶
Return the calculated PMT gain
-
double SPEMean(const I3DOMStatus &status, const I3DOMCalibration &calib)¶
Return the calculated SPEMean (the ADC “charge”, in GV ns, corresponding to the calibrated value of 1 PE). This converts ADC amplitudes into units of photoelectrons.
-
double MeanSPECharge(const I3DOMCalibration &calib)¶
Return the expectation value of the SPE distribution, in PE, for this DOM. Whereas 1 PE (see above) is the most likely value for one PE of charge, the usual mean charge per PE is usually somewhat less. This can be used to estimate the number of photons responsible for a given number of photoelectrons.
-
double FADCBaseline(const I3DOMStatus &status, const I3DOMCalibration &calib)¶
Get the FADC baseline (in counts)
-
double TransitTime(const I3DOMStatus &status, const I3DOMCalibration &calib)¶
Get the total transit time (PMT transit time + delay)
-
double SPEDiscriminatorThreshold(const I3DOMStatus &status, const I3DOMCalibration &calib, double const spePeakVoltageChargeRatio)¶
Get the calibrated SPE Discrimiator threshold (pC)
-
double MPEDiscriminatorThreshold(const I3DOMStatus &status, const I3DOMCalibration &calib, double const spePeakVoltageChargeRatio)¶
Get the calibrated MPE Discrimiator threshold (pC)
-
double OldspeThreshold(const I3DOMStatus &status)¶
OldspeThreshold - a function to return the old “pseudo calibration” values from the raw DAC values (now stored in DOMStatus record). Previously, these psuedo-calibrations were applied by I3OmDb and stored in DOMStatus. This changed with offline V02-02-00 releases.
Returns the speThresold value in I3Units::Volt
-
double OldmpeThreshold(const I3DOMStatus &status)¶
OldmpeThreshold - a function to return the old “pseudo calibration” values from the raw DAC values (now stored in DOMStatus record). Previously, these psuedo-calibrations were applied by I3OmDb and stored in DOMStatus. This changed with offline V02-02-00 releases.
Returns the mpeThresold value in I3Units::Volt
-
double SPEPMTThreshold(const I3DOMStatus &status, const I3DOMCalibration &calib)¶
Updated approximation function for SPE DOM threshold from D.Chirkin
-
std::vector<int> DOMCalVersion(const I3DOMCalibration &calib)¶
Given a string which contains the DOMCal version (e.g. “6.1.0”), return a vector<int> which contains the numbers as its elements (i.e. what’s between the separating “.”s)
-
unsigned int WhichATWD(const I3DOMLaunch &domLaunch)¶
Converts a ATWDselect enumeration into ATWD ID. This corrects the problem that I3DOMLaunch::ATWDSelect is enumd 1 or 2 while all I3DOMCalibration are enumerated as 0 or 1 for the 2 ATWD chips. Changing the enum in I3DOMLaunch would cause nasty serialization issues. This moves the conversion function that has always been in DOMCalibrator to DOMFunctions to be available to all.
- file I3DOMFunctions.h
- #include “dataclasses/status/I3DOMStatus.h”#include “dataclasses/calibration/I3DOMCalibration.h”#include “dataclasses/physics/I3DOMLaunch.h”#include <vector>
Copyright (C) 2006 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Defines
-
__SPE_PEAK_VOLTAGE_CHARGE_RATIO__¶
manually determined relationship between collected charge in picocoulumb and peak voltage in millivolt
Functions
-
double ATWDSamplingRate(unsigned int chip, const I3DOMStatus&, const I3DOMCalibration&)
A class containing a collection of functions that use dom status/calibration information to return “calculated” status items (Gain, SPEMean, etc)
expandible in the future, as needed Return the ATWD sampling rate for chip 0 or 1
-
double PMTGain(const I3DOMStatus&, const I3DOMCalibration&)
Return the calculated PMT gain
-
double SPEMean(const I3DOMStatus&, const I3DOMCalibration&)
Return the calculated SPEMean (the ADC “charge”, in GV ns, corresponding to the calibrated value of 1 PE). This converts ADC amplitudes into units of photoelectrons.
-
double MeanSPECharge(const I3DOMCalibration&)
Return the expectation value of the SPE distribution, in PE, for this DOM. Whereas 1 PE (see above) is the most likely value for one PE of charge, the usual mean charge per PE is usually somewhat less. This can be used to estimate the number of photons responsible for a given number of photoelectrons.
-
double FADCBaseline(const I3DOMStatus&, const I3DOMCalibration&)
Get the FADC baseline (in counts)
-
double TransitTime(const I3DOMStatus&, const I3DOMCalibration&)
Get the total transit time (PMT transit time + delay)
-
double SPEDiscriminatorThreshold(const I3DOMStatus&, const I3DOMCalibration&, double const spePeakVoltageChargeRatio = __SPE_PEAK_VOLTAGE_CHARGE_RATIO__)
Get the calibrated SPE Discrimiator threshold (pC)
-
double SPEPMTThreshold(const I3DOMStatus&, const I3DOMCalibration&)
Updated approximation function for SPE DOM threshold from D.Chirkin
-
double MPEDiscriminatorThreshold(const I3DOMStatus&, const I3DOMCalibration&, double const spePeakVoltageChargeRatio = __SPE_PEAK_VOLTAGE_CHARGE_RATIO__)
Get the calibrated MPE Discrimiator threshold (pC)
-
double OldspeThreshold(const I3DOMStatus&)
OldspeThreshold - a function to return the old “pseudo calibration” values from the raw DAC values (now stored in DOMStatus record). Previously, these psuedo-calibrations were applied by I3OmDb and stored in DOMStatus. This changed with offline V02-02-00 releases.
Returns the speThresold value in I3Units::Volt
-
double OldmpeThreshold(const I3DOMStatus&)
OldmpeThreshold - a function to return the old “pseudo calibration” values from the raw DAC values (now stored in DOMStatus record). Previously, these psuedo-calibrations were applied by I3OmDb and stored in DOMStatus. This changed with offline V02-02-00 releases.
Returns the mpeThresold value in I3Units::Volt
-
std::vector<int> DOMCalVersion(const I3DOMCalibration&)
Given a string which contains the DOMCal version (e.g. “6.1.0”), return a vector<int> which contains the numbers as its elements (i.e. what’s between the separating “.”s)
-
unsigned int WhichATWD(const I3DOMLaunch&)
Converts a ATWDselect enumeration into ATWD ID. This corrects the problem that I3DOMLaunch::ATWDSelect is enumd 1 or 2 while all I3DOMCalibration are enumerated as 0 or 1 for the 2 ATWD chips. Changing the enum in I3DOMLaunch would cause nasty serialization issues. This moves the conversion function that has always been in DOMCalibrator to DOMFunctions to be available to all.
- file I3DOMLaunch.cxx
- #include <vector>#include <icetray/serialization.h>#include <dataclasses/physics/I3DOMLaunch.h>#include <dataclasses/physics/DeltaCompressor.h>#include <stdexcept>#include <dataclasses/I3Vector.h>#include <boost/foreach.hpp>
Functions
-
bool operator==(const I3DOMLaunch &lhs, const I3DOMLaunch &rhs)¶
-
std::ostream &operator<<(std::ostream &oss, const I3DOMLaunch &d)¶
-
I3_SPLIT_SERIALIZABLE(I3DOMLaunch)¶
-
I3_SERIALIZABLE(I3DOMLaunchSeriesMap)¶
-
bool operator==(const I3DOMLaunch &lhs, const I3DOMLaunch &rhs)¶
- file I3DOMLaunch.h
- #include <vector>#include <dataclasses/I3Map.h>#include <icetray/OMKey.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Version
$Revision$
- Date
$Date$
Defines
-
I3DOMLAUNCH_H_I3DOMLaunch_ATWDselect¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
-
I3DOMLAUNCH_H_I3DOMLaunch_TriggerType¶
-
I3DOMLAUNCH_H_I3DOMLaunch_TriggerMode¶
Typedefs
-
typedef std::vector<I3DOMLaunch> I3DOMLaunchSeries¶
-
typedef I3Map<OMKey, I3DOMLaunchSeries> I3DOMLaunchSeriesMap¶
Functions
-
I3_CLASS_VERSION(I3DOMLaunch, i3domlaunch_version_)¶
-
I3_POINTER_TYPEDEFS(I3DOMLaunch)¶
-
I3_POINTER_TYPEDEFS(I3DOMLaunchSeries)¶
-
I3_POINTER_TYPEDEFS(I3DOMLaunchSeriesMap)¶
-
bool operator==(const I3DOMLaunch &lhs, const I3DOMLaunch &rhs)
-
std::ostream &operator<<(std::ostream&, const I3DOMLaunch&)
-
inline I3DOMLaunch::TriggerMode operator|(I3DOMLaunch::TriggerMode a, I3DOMLaunch::TriggerMode b)¶
Bit operators to combine different trigger modes.
As an example: One might set I3DOMLaunch::LC_LOWER | I3DOMLaunch::LC_UPPER, if the local coincidence condition for the lower and upper DOM is met at the same time.
-
inline I3DOMLaunch::TriggerMode operator&(I3DOMLaunch::TriggerMode a, I3DOMLaunch::TriggerMode b)¶
-
inline I3DOMLaunch::TriggerMode operator^(I3DOMLaunch::TriggerMode a, I3DOMLaunch::TriggerMode b)¶
-
inline I3DOMLaunch::TriggerMode &operator|=(I3DOMLaunch::TriggerMode &a, I3DOMLaunch::TriggerMode b)¶
-
inline I3DOMLaunch::TriggerMode &operator&=(I3DOMLaunch::TriggerMode &a, I3DOMLaunch::TriggerMode b)¶
-
inline I3DOMLaunch::TriggerMode &operator^=(I3DOMLaunch::TriggerMode &a, I3DOMLaunch::TriggerMode b)¶
-
inline I3DOMLaunch::TriggerMode operator~(I3DOMLaunch::TriggerMode a)¶
Variables
-
static const unsigned i3domlaunch_version_ = 5¶
The direct (digital) readout of an IceCube DOM.
The full digital readout of an IceCube DOM consists of 1-4 short but fine-grained ATWD readouts, and a long but coarse fADC readout, all beginning at the same time. The fADC is fixed at 40 MHz, while the sampling rate of the ATWDs is adjustable and is determined by the DOM calibrator. There is also a ‘coarse charge stamp’ containing the 3 largest samples out of the first 16 fADC samples
- file I3DOMStatus.cxx
- #include <icetray/serialization.h>#include <dataclasses/status/I3DOMStatus.h>#include “icetray/I3Units.h”
Functions
-
I3_SERIALIZABLE(I3DOMStatus)¶
-
I3_SERIALIZABLE(I3DOMStatus)¶
- file I3DOMStatus.h
- #include “dataclasses/Utility.h”#include <icetray/OMKey.h>#include <serialization/version.hpp>
Typedefs
-
typedef std::map<OMKey, I3DOMStatus> I3DOMStatusMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3DOMStatusMap)¶
-
I3_POINTER_TYPEDEFS(I3DOMStatus)¶
-
I3_CLASS_VERSION(I3DOMStatus, i3domstatus_version_)¶
Variables
-
static const unsigned i3domstatus_version_ = 6¶
-
typedef std::map<OMKey, I3DOMStatus> I3DOMStatusMap¶
- file I3Double.cxx
- #include <icetray/serialization.h>#include <dataclasses/I3Double.h>
- file I3Double.h
- #include <icetray/I3DefaultName.h>#include <icetray/I3PODHolder.h>
Typedefs
-
typedef I3PODHolder<double> I3Double¶
-
typedef I3PODHolder<double> I3Double¶
- file I3EventHeader.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3EventHeader.h>#include <limits>
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3EventHeader &eh)¶
-
I3_SERIALIZABLE(I3EventHeader)¶
-
std::ostream &operator<<(std::ostream &oss, const I3EventHeader &eh)¶
- file I3EventHeader.h
- #include <string>#include <dataclasses/I3Time.h>#include <icetray/I3DefaultName.h>#include <icetray/I3FrameObject.h>#include <icetray/I3PointerTypedefs.h>#include <icetray/serialization.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3EventHeader &eh)
-
I3_CLASS_VERSION(I3EventHeader, i3eventheader_version_)¶
-
I3_POINTER_TYPEDEFS(I3EventHeader)¶
-
I3_DEFAULT_NAME(I3EventHeader)¶
Variables
-
static const unsigned i3eventheader_version_ = 3¶
- file I3FilterResult.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3FilterResult.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
Functions
-
std::ostream &operator<<(std::ostream &os, const I3FilterResult &fr)¶
-
I3_SERIALIZABLE(I3FilterResult)¶
-
I3_SERIALIZABLE(I3FilterResultMap)¶
- file I3FilterResult.h
- #include <string>#include <icetray/I3FrameObject.h>#include <icetray/I3PointerTypedefs.h>#include <dataclasses/I3Map.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
Typedefs
-
typedef I3Map<std::string, I3FilterResult> I3FilterResultMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3FilterResult&)
-
I3_POINTER_TYPEDEFS(I3FilterResult)¶
-
I3_POINTER_TYPEDEFS(I3FilterResultMap)¶
- file I3FlasherInfo.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3FlasherInfo.h>
Functions
-
std::ostream &operator<<(std::ostream &os, const I3FlasherInfo &fi)¶
-
I3_SERIALIZABLE(I3FlasherInfo)¶
-
I3_SERIALIZABLE(I3FlasherInfoVect)¶
-
std::ostream &operator<<(std::ostream &os, const I3FlasherInfo &fi)¶
- file I3FlasherInfo.h
- #include <vector>#include “icetray/I3FrameObject.h”#include “icetray/OMKey.h”#include “dataclasses/I3Vector.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Vector<I3FlasherInfo> I3FlasherInfoVect¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3FlasherInfo&)
-
I3_POINTER_TYPEDEFS(I3FlasherInfo)¶
-
I3_CLASS_VERSION(I3FlasherInfo, i3flasherinfo_version_)¶
-
I3_POINTER_TYPEDEFS(I3FlasherInfoVect)¶
Variables
-
static const unsigned i3flasherinfo_version_ = 1¶
- file I3FlasherStatus.cxx
- #include <icetray/serialization.h>#include <dataclasses/status/I3FlasherStatus.h>
Functions
-
I3_SERIALIZABLE(I3FlasherStatus)¶
-
I3_SERIALIZABLE(I3FlasherStatusMap)¶
-
I3_SERIALIZABLE(I3FlasherSubrunMap)¶
-
std::ostream &operator<<(std::ostream &oss, const I3FlasherStatus &s)¶
-
std::ostream &operator<<(std::ostream &oss, const I3FlasherStatusMap &map)¶
-
std::ostream &operator<<(std::ostream &oss, const I3FlasherSubrunMap &map)¶
-
I3_SERIALIZABLE(I3FlasherStatus)¶
- file I3FlasherStatus.h
- #include <icetray/I3FrameObject.h>#include <icetray/OMKey.h>#include <dataclasses/I3Map.h>
Copyright (C) 2017 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Map<OMKey, I3FlasherStatus> I3FlasherStatusMap¶
-
typedef I3Map<unsigned, I3FlasherStatusMap> I3FlasherSubrunMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3FlasherStatus)¶
-
I3_POINTER_TYPEDEFS(I3FlasherStatusMap)¶
-
I3_POINTER_TYPEDEFS(I3FlasherSubrunMap)¶
-
I3_CLASS_VERSION(I3FlasherStatus, i3flasherstatus_version_)¶
-
std::ostream &operator<<(std::ostream &oss, const I3FlasherStatus &s)
-
std::ostream &operator<<(std::ostream &oss, const I3FlasherStatusMap &map)
-
std::ostream &operator<<(std::ostream &oss, const I3FlasherSubrunMap &map)
Variables
-
static const unsigned i3flasherstatus_version_ = 1¶
- file I3FrameTransformations.cxx
- #include <boost/shared_ptr.hpp>#include <icetray/I3Frame.h>#include <icetray/I3Units.h>#include <dataclasses/I3MapOMKeyMask.h>#include <dataclasses/I3MapOMKeyUnion.h>#include <dataclasses/physics/I3RecoHit.h>#include <dataclasses/physics/I3RecoPulse.h>#include <dataclasses/payload/I3SuperDST.h>#include <dataclasses/payload/I3SuperDSTTrigger.h>#include <dataclasses/physics/I3Trigger.h>#include <dataclasses/status/I3DetectorStatus.h>
Functions
-
static I3RecoPulseSeriesMapPtr HitsAsPulses(I3RecoHitSeriesMapConstPtr hits)¶
-
static I3RecoPulseSeriesMapPtr HitsAsPulses(I3RecoHitSeriesMapConstPtr hits)¶
- file I3Geometry.cxx
- #include <icetray/serialization.h>#include <dataclasses/geometry/I3Geometry.h>#include <boost/foreach.hpp>#include <boost/preprocessor/seq/for_each.hpp>#include <boost/lexical_cast.hpp>
Functions
-
I3_SERIALIZABLE(I3Geometry)¶
-
I3_SERIALIZABLE(I3Geometry)¶
- file I3Geometry.h
- #include <vector>#include “dataclasses/Utility.h”#include “dataclasses/geometry/I3TankGeo.h”#include “dataclasses/geometry/I3ScintGeo.h”#include “dataclasses/geometry/I3OMGeo.h”#include “dataclasses/geometry/I3AntennaGeo.h”#include “dataclasses/geometry/I3IceActGeo.h”#include “dataclasses/I3Time.h”#include <icetray/I3DefaultName.h>#include “icetray/I3FrameObject.h”#include “dataclasses/I3Map.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
n$Id$
- Date
$Date$
Defines
-
I3GEOMETRY_H_I3Geometry_SnowHeightProvenance¶
Functions
-
I3_DEFAULT_NAME(I3Geometry)¶
-
I3_POINTER_TYPEDEFS(I3Geometry)¶
-
I3_CLASS_VERSION(I3Geometry, i3geometry_version_)¶
Variables
-
static const unsigned i3geometry_version_ = 3¶
- file I3IceActGeo.cxx
- #include <dataclasses/geometry/I3IceActGeo.h>
Functions
-
I3_SERIALIZABLE(I3IceActGeo)¶
-
I3_SERIALIZABLE(I3IceActGeoMap)¶
-
I3_SERIALIZABLE(I3IceActPixelPositionMap)¶
-
std::ostream &operator<<(std::ostream &os, const I3IceActGeo &g)¶
-
I3_SERIALIZABLE(I3IceActGeo)¶
- file I3IceActGeo.h
- #include <string>#include <dataclasses/I3Direction.h>#include <dataclasses/I3Orientation.h>#include <dataclasses/I3Position.h>#include <dataclasses/I3Map.h>#include <dataclasses/Utility.h>#include <dataclasses/IceActKey.h>
Typedefs
-
typedef I3Map<unsigned, I3Position> I3IceActPixelPositionMap¶
-
typedef I3Map<IceActKey, I3IceActGeo> I3IceActGeoMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3IceActGeo&)
-
I3_POINTER_TYPEDEFS(I3IceActGeo)¶
-
I3_CLASS_VERSION(I3IceActGeo, i3iceactgeo_version_)¶
-
I3_POINTER_TYPEDEFS(I3IceActPixelPositionMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActGeoMap)¶
Variables
-
static const unsigned i3iceactgeo_version_ = 0¶
-
typedef I3Map<unsigned, I3Position> I3IceActPixelPositionMap¶
- file I3IceActMaps.cxx
- #include “dataclasses/physics/I3IceActMaps.h”
Functions
-
I3_SERIALIZABLE(I3IceActBoolMap)¶
-
I3_SERIALIZABLE(I3IceActIntMap)¶
-
I3_SERIALIZABLE(I3IceActUnsignedMap)¶
-
I3_SERIALIZABLE(I3IceActDoubleMap)¶
-
I3_SERIALIZABLE(I3IceActStringMap)¶
-
I3_SERIALIZABLE(I3IceActTelescopePixelDoubleMap)¶
-
I3_SERIALIZABLE(I3IceActTelescopePixelUnsignedMap)¶
-
I3_SERIALIZABLE(I3IceActTelescopePixelVectorIntMap)¶
-
I3_SERIALIZABLE(I3IceActTelescopeStringDoubleMap)¶
-
I3_SERIALIZABLE(I3IceActTriggerMap)¶
-
I3_SERIALIZABLE(I3IceActWaveform)¶
-
I3_SERIALIZABLE(I3IceActWaveformMap)¶
-
I3_SERIALIZABLE(I3IceActRecoPulseSeries)¶
-
I3_SERIALIZABLE(I3IceActRecoPulseSeriesMap)¶
-
I3_SERIALIZABLE(I3IceActBoolMap)¶
- file I3IceActMaps.h
- #include “icetray/I3Bool.h”#include “dataclasses/I3Map.h”#include “dataclasses/I3String.h”#include “dataclasses/I3Vector.h”#include “dataclasses/IceActKey.h”#include “dataclasses/physics/I3Waveform.h”#include “dataclasses/physics/I3RecoPulse.h”#include “dataclasses/physics/I3Trigger.h”
Typedefs
-
typedef I3Map<IceActKey, I3MapUnsignedUnsigned> I3IceActTelescopePixelUnsignedMap¶
-
typedef I3Map<IceActKey, I3MapUnsignedDouble> I3IceActTelescopePixelDoubleMap¶
-
typedef I3Map<IceActKey, I3MapIntVectorInt> I3IceActTelescopePixelVectorIntMap¶
-
typedef I3Map<IceActKey, I3MapStringDouble> I3IceActTelescopeStringDoubleMap¶
-
typedef I3Map<unsigned, std::vector<I3Waveform>> I3IceActWaveform¶
-
typedef I3Map<IceActKey, I3IceActWaveform> I3IceActWaveformMap¶
-
typedef I3Map<unsigned, I3RecoPulseSeries> I3IceActRecoPulseSeries¶
-
typedef I3Map<IceActKey, I3IceActRecoPulseSeries> I3IceActRecoPulseSeriesMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3IceActBoolMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActIntMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActUnsignedMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActDoubleMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActStringMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActTelescopePixelUnsignedMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActTelescopePixelDoubleMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActTelescopePixelVectorIntMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActTelescopeStringDoubleMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActTriggerMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActWaveform)¶
-
I3_POINTER_TYPEDEFS(I3IceActWaveformMap)¶
-
I3_POINTER_TYPEDEFS(I3IceActRecoPulseSeries)¶
-
I3_POINTER_TYPEDEFS(I3IceActRecoPulseSeriesMap)¶
-
typedef I3Map<IceActKey, I3MapUnsignedUnsigned> I3IceActTelescopePixelUnsignedMap¶
- file I3IceTopSLCCalibration.cxx
- #include <icetray/serialization.h>#include <boost/foreach.hpp>#include <boost/preprocessor/seq/for_each.hpp>#include <boost/lexical_cast.hpp>
- Version
$Id$
- Date
$Date$
Defines
-
MAKE_ENUM_TO_STRING_CASE_LINE(r, data, t)
-
MAKE_STRING_TO_ENUM_IF_LINE2(r, data, t)
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3IceTopSLCCalibration &sc)¶
-
I3_SERIALIZABLE(I3IceTopSLCCalibration)¶
-
I3_SERIALIZABLE(I3IceTopSLCCalibrationMap)¶
-
I3_SPLIT_SERIALIZABLE(I3IceTopSLCCalibrationCollection)¶
- file I3IceTopSLCCalibration.h
- #include <icetray/OMKey.h>#include <icetray/I3FrameObject.h>#include <dataclasses/Utility.h>#include <dataclasses/external/CompareFloatingPoint.h>#include <dataclasses/I3Map.h>#include <dataclasses/I3Time.h>
- Version
$Id$
- Date
$Date$
Defines
-
I3ICETOPSLCCALIBRATION_H_I3IceTopSLCCalibrationCollection_ITSLCCalProvenance¶
Typedefs
-
typedef I3Map<OMKey, I3IceTopSLCCalibration> I3IceTopSLCCalibrationMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3IceTopSLCCalibration)¶
-
I3_POINTER_TYPEDEFS(I3IceTopSLCCalibrationMap)¶
-
I3_CLASS_VERSION(I3IceTopSLCCalibrationCollection, i3itslccalibration_version_)¶
-
I3_POINTER_TYPEDEFS(I3IceTopSLCCalibrationCollection)¶
-
std::ostream &operator<<(std::ostream &oss, const I3IceTopSLCCalibration &c)
Variables
-
static const unsigned i3itslccalibration_version_ = 1¶
- file I3LinearizedMCTree.cxx
- #include “dataclasses/physics/I3LinearizedMCTree.h”#include “dataclasses/I3Constants.h”#include “icetray/I3Units.h”#include <boost/foreach.hpp>#include <queue>
Copyright (c) 2012 Jakob van Santen vansanten@wisc.edu Copyright (c) 2012 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Date
$Date$
- Author
jvansanten
- file I3LinearizedMCTree.h
- #include “dataclasses/physics/I3MCTree.h”
Copyright (c) 2012 Jakob van Santen vansanten@wisc.edu Copyright (c) 2012 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Date
$Date$
- Author
jvansanten
Functions
-
I3_POINTER_TYPEDEFS(I3LinearizedMCTree)¶
-
I3_CLASS_VERSION(I3LinearizedMCTree, i3linearizedmctree_version_)¶
Variables
-
static const unsigned i3linearizedmctree_version_ = 1¶
- file I3Map.cxx
- #include <icetray/serialization.h>#include <dataclasses/I3Map.h>#include <string>
Functions
-
I3_SERIALIZABLE(I3MapStringDouble)¶
-
I3_SERIALIZABLE(I3MapStringVectorDouble)¶
-
I3_SERIALIZABLE(I3MapUnsignedUnsigned)¶
-
I3_SERIALIZABLE(I3MapUnsignedDouble)¶
-
I3_SERIALIZABLE(I3MapUShortUShort)¶
-
I3_SERIALIZABLE(I3MapIntVectorInt)¶
-
I3_SERIALIZABLE(I3MapKeyDouble)¶
-
I3_SERIALIZABLE(I3MapKeyUInt)¶
-
I3_SERIALIZABLE(I3MapTriggerVectorUInt)¶
-
I3_SERIALIZABLE(I3MapTriggerDouble)¶
-
I3_SERIALIZABLE(I3MapTriggerUInt)¶
-
I3_SERIALIZABLE(I3MapStringDouble)¶
- file I3Map.h
- #include <icetray/serialization.h>#include <map>#include <string>#include <vector>#include <dataclasses/Utility.h>#include <icetray/I3Logging.h>#include <icetray/I3FrameObject.h>#include <icetray/has_operator.h>#include <icetray/OMKey.h>#include “dataclasses/TriggerKey.h”#include “dataclasses/ostream_overloads.hpp”#include <boost/lexical_cast.hpp>
Typedefs
-
typedef I3Map<std::string, I3MapStringDouble> I3MapStringStringDouble¶
-
typedef I3Map<TriggerKey, std::vector<unsigned int>> I3MapTriggerVectorUInt¶
-
typedef I3Map<TriggerKey, double> I3MapTriggerDouble¶
-
typedef I3Map<TriggerKey, unsigned int> I3MapTriggerUInt¶
Functions
-
template<typename Key, typename Value>
std::ostream &operator<<(std::ostream &os, const I3Map<Key, Value> m)¶
-
I3_POINTER_TYPEDEFS(I3MapStringDouble)¶
-
I3_POINTER_TYPEDEFS(I3MapStringVectorDouble)¶
-
I3_POINTER_TYPEDEFS(I3MapUnsignedUnsigned)¶
-
I3_POINTER_TYPEDEFS(I3MapUnsignedDouble)¶
-
I3_POINTER_TYPEDEFS(I3MapUShortUShort)¶
-
I3_POINTER_TYPEDEFS(I3MapIntVectorInt)¶
-
I3_POINTER_TYPEDEFS(I3MapKeyDouble)¶
-
I3_POINTER_TYPEDEFS(I3MapKeyUInt)¶
-
I3_POINTER_TYPEDEFS(I3MapTriggerVectorUInt)¶
-
I3_POINTER_TYPEDEFS(I3MapTriggerDouble)¶
-
I3_POINTER_TYPEDEFS(I3MapTriggerUInt)¶
-
typedef I3Map<std::string, I3MapStringDouble> I3MapStringStringDouble¶
- file I3MapOMKeyMask.cxx
- #include <algorithm>#include “dataclasses/I3MapOMKeyMask.h”#include “dataclasses/physics/I3RecoPulse.h”#include “boost/make_shared.hpp”#include <serialization/binary_object.hpp>
Functions
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapMask::bitmask &mask)¶
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapMask &mask)¶
-
I3_SPLIT_SERIALIZABLE(I3RecoPulseSeriesMapMask)¶
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapMask::bitmask &mask)¶
- file I3MapOMKeyMask.h
- #include <functional>#include <string>#include <list>#include <boost/foreach.hpp>#include <boost/function.hpp>#include <boost/dynamic_bitset.hpp>#include “icetray/I3FrameObject.h”#include “icetray/OMKey.h”#include “icetray/I3Frame.h”#include “icetray/serialization.h”#include “dataclasses/physics/I3RecoPulse.h”
Functions
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapMask&)
-
I3_CLASS_VERSION(I3RecoPulseSeriesMapMask, i3recopulseseriesmapmask_version_)¶
-
I3_POINTER_TYPEDEFS(I3RecoPulseSeriesMapMask)¶
Variables
-
static const unsigned i3recopulseseriesmapmask_version_ = 2¶
$Id$
Copyright (C) 2011 Jakob van Santen vansanten@wisc.edu Copyright (C) 2011 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapMask&)
- file I3MapOMKeyUnion.cxx
- #include “dataclasses/I3MapOMKeyUnion.h”#include “dataclasses/physics/I3RecoPulse.h”#include “boost/make_shared.hpp”#include “boost/foreach.hpp”
Functions
-
static bool PulseCompare(const I3RecoPulse &p1, const I3RecoPulse &p2)¶
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapUnion &un)¶
-
I3_SERIALIZABLE(I3RecoPulseSeriesMapUnion)¶
-
static bool PulseCompare(const I3RecoPulse &p1, const I3RecoPulse &p2)¶
- file I3MapOMKeyUnion.h
- #include <functional>#include <string>#include <list>#include “icetray/I3FrameObject.h”#include “icetray/OMKey.h”#include “icetray/I3Frame.h”#include “icetray/serialization.h”#include “dataclasses/physics/I3RecoPulse.h”
Functions
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapUnion&)
-
I3_CLASS_VERSION(I3RecoPulseSeriesMapUnion, i3recopulseseriesmapunion_version_)¶
-
I3_POINTER_TYPEDEFS(I3RecoPulseSeriesMapUnion)¶
Variables
-
static const unsigned i3recopulseseriesmapunion_version_ = 0¶
$Id$
Copyright (C) 2011 Jakob van Santen vansanten@wisc.edu Copyright (C) 2011 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapUnion&)
- file I3Matrix.cxx
- #include <icetray/serialization.h>#include <dataclasses/I3Matrix.h>
- file I3Matrix.h
- #include <icetray/I3FrameObject.h>#include <boost/numeric/ublas/matrix.hpp>#include <serialization/serialization.hpp>#include <serialization/array.hpp>#include <serialization/collection_size_type.hpp>#include <serialization/nvp.hpp>
- file I3MCHit.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3MCHit.h>#include <dataclasses/physics/I3Particle.h>
- file I3MCHit.h
- #include “dataclasses/I3Vector.h”#include “dataclasses/I3Map.h”#include “dataclasses/physics/I3ParticleID.h”#include “icetray/OMKey.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Defines
-
I3MCHIT_H_I3MCHit_HitSource¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
Typedefs
-
typedef I3Map<OMKey, I3MCHitSeries> I3MCHitSeriesMap¶
Functions
-
I3_CLASS_VERSION(I3MCHit, i3mchit_version_)¶
-
I3_POINTER_TYPEDEFS(I3MCHitSeries)¶
-
I3_POINTER_TYPEDEFS(I3MCHitSeriesMap)¶
Variables
-
static const unsigned i3mchit_version_ = 3¶
Derived I3Hit class with additional ‘Weight’ and ‘Parent track’ info.
This class records the true (simulated) time at which a photoelectron was produced. In addition to the time, it contains the identity of the track which was responsible for the hit, and a statistical weight to assign to the hit (default 1). Also, CherenkovDistance- direct path distance to the track that generated this hit.
- file I3MCList.cxx
- #include <icetray/serialization.h>#include <dataclasses/I3Vector.h>#include <dataclasses/physics/I3Particle.h>
- file I3MCTree.cxx
- #include <cassert>#include <icetray/serialization.h>#include “dataclasses/physics/I3MCTree.h”
Implementation for I3MCTree.
Copyright (C) 2013 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
$Id$
- Version
$Revision$
- Date
$Date$
- file I3MCTree.h
- #include <iterator>#include <map>#include <vector>#include <string>#include <utility>#include <stdint.h>#include <boost/none.hpp>#include <boost/optional.hpp>#include <boost/iterator/iterator_facade.hpp>#include <icetray/I3DefaultName.h>#include <icetray/I3FrameObject.h>#include <icetray/serialization.h>#include <icetray/I3Logging.h>#include <I3/hash_map.h>#include “dataclasses/physics/I3Particle.h”#include “dataclasses/physics/I3ParticleID.h”#include “dataclasses/physics/detail/I3MCTree_fwd.h”#include “dataclasses/physics/detail/I3MCTree_impl.h”
Tree of I3Particles.
Copyright (C) 2013 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
$Id$
- Version
$Revision$
- Date
$Date$
- file I3MCTree_fwd.h
Typedefs
-
typedef TreeBase::Tree<I3Particle, I3ParticleID> I3MCTree¶
I3MCTree - This goes into the frame and everyone can see it
-
typedef TreeBase::Tree<I3Particle, I3ParticleID> I3MCTree¶
- file I3MCTree_impl.h
- #include <cassert>#include <stack>#include <boost/dynamic_bitset.hpp>#include <boost/foreach.hpp>#include <icetray/serialization.h>
Implementation for TreeBase.
Copyright (C) 2013 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Rcs
I3MCTree.hh 112306 2013-10-28 22:43:59Z david.schultz
- Version
- Rcs
112306
- Date
- Rcs
2013-10-28 17:43:59 -0500 (Mon, 28 Oct 2013)
- file I3MCTreePhysicsLibrary.cxx
- #include <string>#include <dataclasses/external/CompareFloatingPoint.h>#include “dataclasses/physics/I3ParticleID.h”#include “dataclasses/physics/I3MCTreeUtils.h”#include <boost/function.hpp>
- file I3MCTreePhysicsLibrary.hh
- #include “dataclasses/physics/I3Particle.h”#include “dataclasses/physics/I3MCTree.h”
Copyright (C) 2013 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- file I3MCTreeUtils.cxx
- #include <sstream>#include “dataclasses/physics/I3MCTreeUtils.h”#include “icetray/I3Frame.h”
- file I3MCTreeUtils.h
- #include “dataclasses/physics/I3Particle.h”#include “dataclasses/physics/I3ParticleID.h”#include “dataclasses/physics/I3MCTree.h”
Copyright (C) 2013 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- file I3ModuleGeo.cxx
- #include <icetray/serialization.h>#include <dataclasses/geometry/I3ModuleGeo.h>
Functions
-
I3_SERIALIZABLE(I3ModuleGeo)¶
-
I3_SERIALIZABLE(I3ModuleGeoMap)¶
-
std::ostream &operator<<(std::ostream &os, const I3ModuleGeo &g)¶
-
I3_SERIALIZABLE(I3ModuleGeo)¶
- file I3ModuleGeo.h
- #include <vector>#include <icetray/I3DefaultName.h>#include “icetray/I3FrameObject.h”#include “dataclasses/ModuleKey.h”#include “dataclasses/I3Position.h”#include “dataclasses/I3Orientation.h”#include “dataclasses/I3Map.h”
Defines
-
I3MODULEGEO_H_I3ModuleGeo_ModuleType¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
Please note: using “LOM” here to refer to LOM-16. The plan is to eventually be able to merge LOM + LOM18 into a single enum for long term use
Typedefs
-
typedef I3Map<ModuleKey, I3ModuleGeo> I3ModuleGeoMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3ModuleGeo&)
-
I3_CLASS_VERSION(I3ModuleGeo, i3modulegeo_version_)¶
-
I3_POINTER_TYPEDEFS(I3ModuleGeo)¶
-
I3_POINTER_TYPEDEFS(I3ModuleGeoMap)¶
Variables
-
static const unsigned i3modulegeo_version_ = 1¶
-
I3MODULEGEO_H_I3ModuleGeo_ModuleType¶
- file I3OMGeo.cxx
- #include <icetray/serialization.h>#include <dataclasses/geometry/I3OMGeo.h>
Enums
-
enum OldOrientation__¶
Values:
-
enum OldOrientation__¶
- file I3OMGeo.h
- #include “dataclasses/I3Position.h”#include “dataclasses/I3Direction.h”#include “dataclasses/I3Orientation.h”#include “dataclasses/I3Map.h”#include <string>#include <iostream>#include <sstream>#include “icetray/OMKey.h”#include “dataclasses/Utility.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Defines
-
I3OMGEO_H_I3OMGeo_OMType¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
Variables
-
static const unsigned i3omgeo_version_ = 1¶
- file I3Orientation.cxx
- #include <iostream>#include <icetray/serialization.h>#include “dataclasses/I3Orientation.h”#include “dataclasses/I3Constants.h”#include <math.h>#include <float.h>#include <algorithm>
Functions
-
I3_SERIALIZABLE(I3Orientation)¶
-
I3_SERIALIZABLE(I3OrientationVect)¶
-
std::ostream &operator<<(std::ostream &os, const I3Orientation &ori)¶
-
I3_SERIALIZABLE(I3Orientation)¶
- file I3Orientation.h
- #include <math.h>#include <sstream>#include “icetray/I3FrameObject.h”#include “Utility.h”#include “dataclasses/I3Constants.h”#include “dataclasses/I3Quaternion.h”#include “dataclasses/I3Direction.h”
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Vector<I3Orientation> I3OrientationVect¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3Orientation&)
-
I3_POINTER_TYPEDEFS(I3Orientation)¶
-
I3_CLASS_VERSION(I3Orientation, i3orientation_version_)¶
-
I3_POINTER_TYPEDEFS(I3OrientationVect)¶
Variables
-
static const unsigned i3orientation_version_ = 0¶
- file I3Particle.cxx
- #include <icetray/serialization.h>#include <icetray/I3Units.h>#include <dataclasses/physics/I3Particle.h>#include <boost/functional/hash/hash.hpp>#include <dataclasses/I3Constants.h>#include <limits>#include <map>#include <boost/assign/list_of.hpp>#include <boost/preprocessor/cat.hpp>#include <boost/preprocessor/seq/for_each.hpp>#include <boost/lexical_cast.hpp>#include <unistd.h>#include <cstdlib>
Typedefs
-
typedef std::map<I3Particle::ParticleType, double> particle_type_mass_conversion_t¶
-
typedef std::map<int, I3Particle::ParticleType> particle_type_conversion_t¶
-
typedef I3Vector<I3Particle> I3ParticleVect¶
Functions
-
std::string i3particle_type_string(int32_t pdg_code)¶
Get name of an I3Particle::ParticleType as a string
-
std::ostream &operator<<(std::ostream &oss, const I3Particle &p)¶
-
std::ostream &operator<<(std::ostream &oss, const I3ParticleID &pid)¶
-
I3_SPLIT_SERIALIZABLE(I3Particle)¶
-
I3_SERIALIZABLE(I3ParticleVect)¶
-
I3_SERIALIZABLE(I3ParticleID)¶
Variables
-
static int32_t global_last_pid_ = 0¶
-
static int32_t global_minor_id_ = 0¶
-
static const particle_type_mass_conversion_t fromParticleTypeMassTable¶
-
static const particle_type_conversion_t fromOldI3ParticleTable¶
-
static const particle_type_conversion_t fromRDMCTable¶
-
typedef std::map<I3Particle::ParticleType, double> particle_type_mass_conversion_t¶
- file I3Particle.h
- #include “dataclasses/I3Position.h”#include “dataclasses/I3Direction.h”#include “icetray/I3Units.h”#include “dataclasses/I3Vector.h”#include “dataclasses/physics/I3ParticleID.h”#include “dataclasses/external/CompareFloatingPoint.h”#include <map>#include <string>#include <boost/optional.hpp>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Defines
-
I3PARTICLE_SUPPORTS_PDG_ENCODINGS¶
-
I3PARTICLE_H_I3Particle_ParticleType¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
-
I3PARTICLE_H_I3Particle_ParticleShape¶
-
I3PARTICLE_H_I3Particle_FitStatus¶
-
I3PARTICLE_H_I3Particle_LocationType¶
Typedefs
-
typedef I3Vector<I3Particle> I3VectorI3Particle¶
Functions
-
std::string i3particle_type_string(int32_t pdg_code)
Get name of an I3Particle::ParticleType as a string
-
std::ostream &operator<<(std::ostream &oss, const I3Particle &d)
-
I3_POINTER_TYPEDEFS(I3Particle)¶
-
I3_CLASS_VERSION(I3Particle, i3particle_version_)¶
-
I3_POINTER_TYPEDEFS(I3VectorI3Particle)¶
Variables
-
static const unsigned i3particle_version_ = 5¶
- file I3ParticleID.h
- #include <icetray/I3PointerTypedefs.h>#include <dataclasses/I3Map.h>#include <icetray/serialization.h>#include <I3/hash_map.h>
Typedefs
-
typedef I3Map<I3ParticleID, double> I3MapI3ParticleIDDouble¶
Functions
-
I3_POINTER_TYPEDEFS(I3ParticleID)¶
-
I3_POINTER_TYPEDEFS(I3MapI3ParticleIDDouble)¶
-
std::ostream &operator<<(std::ostream&, const I3ParticleID&)
-
typedef I3Map<I3ParticleID, double> I3MapI3ParticleIDDouble¶
- file I3ParticleIDMap.cxx
- #include <dataclasses/physics/I3ParticleID.h>#include <dataclasses/I3Map.h>
Functions
-
I3_SERIALIZABLE(I3MapI3ParticleIDDouble)¶
-
I3_SERIALIZABLE(I3MapI3ParticleIDDouble)¶
- file I3Position.cxx
- #include <iostream>#include <icetray/serialization.h>#include “dataclasses/I3Position.h”#include “dataclasses/I3Direction.h”#include “dataclasses/I3Constants.h”#include “icetray/I3Units.h”
Functions
-
I3_SERIALIZABLE(I3Position)¶
-
I3Position operator*(double a, const I3Position &p)¶
-
std::ostream &operator<<(std::ostream &oss, const I3Position &p)¶
-
double abs(const I3Position &p)¶
-
I3_SERIALIZABLE(I3Position)¶
- file I3Position.h
- #include <cmath>#include “icetray/I3FrameObject.h”#include “Utility.h”#include <sstream>#include “dataclasses/external/CompareFloatingPoint.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Functions
-
I3Position operator*(double, const I3Position&)
-
std::ostream &operator<<(std::ostream &oss, const I3Position &p)
-
double abs(const I3Position &p)
-
I3_POINTER_TYPEDEFS(I3Position)¶
-
I3_CLASS_VERSION(I3Position, i3position_version_)¶
Variables
-
static const unsigned i3position_version_ = 0¶
The basic position class for IceCube.
All positions in IceCube should be written with this class. Positions can be given in cartesian, spherical, or cylindrical coordinates.
- Todo:
implement “print out” of all information in a uniform way…
insure that the temporary data isn’t written to disk.
- file I3Quaternion.cxx
- #include <icetray/serialization.h>#include “dataclasses/Utility.h”#include “dataclasses/I3Quaternion.h”
Functions
-
std::ostream &operator<<(std::ostream &os, const I3Quaternion &q)¶
-
I3Quaternion operator*(double a, const I3Quaternion &q)¶
-
I3_SERIALIZABLE(I3Quaternion)¶
-
std::ostream &operator<<(std::ostream &os, const I3Quaternion &q)¶
- file I3Quaternion.h
- #include <iostream>#include <cmath>#include <dataclasses/I3Direction.h>#include <dataclasses/I3Position.h>#include “icetray/I3FrameObject.h”
Functions
-
I3Quaternion operator*(double, const I3Quaternion&)
-
std::ostream &operator<<(std::ostream&, const I3Quaternion&)
-
I3_POINTER_TYPEDEFS(I3Quaternion)¶
-
I3_CLASS_VERSION(I3Quaternion, i3quaternion_version_)¶
Variables
-
static const unsigned i3quaternion_version_ = 0¶
This class implements quaternions which can be used for vector rotations.
$Id$
Copyright (C) 2008, 2009 Claudio Kopper claudio.kopper@physik.uni-erlangen.de
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS’’ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
-
I3Quaternion operator*(double, const I3Quaternion&)
- file I3RecoHit.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3RecoHit.h>#include <dataclasses/external/CompareFloatingPoint.h>
- file I3RecoHit.h
- #include “dataclasses/Utility.h”#include “dataclasses/I3Vector.h”#include “dataclasses/I3Map.h”#include “icetray/OMKey.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Map<OMKey, I3RecoHitSeries> I3RecoHitSeriesMap¶
Functions
-
I3_CLASS_VERSION(I3RecoHit, i3recohit_version_)¶
-
I3_POINTER_TYPEDEFS(I3RecoHitSeries)¶
-
I3_POINTER_TYPEDEFS(I3RecoHitSeriesMap)¶
Variables
-
static const unsigned i3recohit_version_ = 1¶
A base class for reconstruted hits.
Carries no information beyond ‘hit’ but can be sub-classed as part of a hit series reconstruction.
- file I3RecoPulse.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3RecoPulse.h>#include <dataclasses/physics/I3Waveform.h>#include <dataclasses/external/CompareFloatingPoint.h>#include <string>
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3RecoPulse &p)¶
-
I3_SERIALIZABLE(I3RecoPulse)¶
-
I3_SERIALIZABLE(I3RecoPulseSeriesMap)¶
-
I3_SERIALIZABLE(I3RecoPulseMap)¶
-
std::ostream &operator<<(std::ostream &oss, const I3RecoPulse &p)¶
- file I3RecoPulse.h
- #include “dataclasses/Utility.h”#include “dataclasses/I3Vector.h”#include “icetray/OMKey.h”#include “dataclasses/I3Map.h”#include “icetray/I3Frame.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef std::vector<I3RecoPulse> I3RecoPulseSeries¶
-
typedef I3Map<OMKey, I3RecoPulseSeries> I3RecoPulseSeriesMap¶
-
typedef I3Map<OMKey, I3RecoPulse> I3RecoPulseMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3RecoPulse)¶
-
I3_CLASS_VERSION(I3RecoPulse, i3recopulse_version_)¶
-
std::ostream &operator<<(std::ostream &oss, const I3RecoPulse &p)
-
I3_POINTER_TYPEDEFS(I3RecoPulseSeries)¶
-
I3_POINTER_TYPEDEFS(I3RecoPulseSeriesMap)¶
-
I3_POINTER_TYPEDEFS(I3RecoPulseMap)¶
Variables
-
static const unsigned i3recopulse_version_ = 3¶
A storage class for extracted pulses from a feature extractor A readout independent representation of a waveform feature or Analog readout.
- file I3RecoPulseSeriesMapApplySPECorrection.cxx
-
#include “dataclasses/physics/I3RecoPulse.h”#include “dataclasses/calibration/I3Calibration.h”#include “boost/make_shared.hpp”#include “boost/foreach.hpp”
Functions
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapApplySPECorrection &corr)¶
-
I3_SERIALIZABLE(I3RecoPulseSeriesMapApplySPECorrection)¶
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapApplySPECorrection &corr)¶
- file I3RecoPulseSeriesMapApplySPECorrection.h
- #include <functional>#include <string>#include “icetray/I3FrameObject.h”#include “icetray/OMKey.h”#include “icetray/I3Frame.h”#include “icetray/serialization.h”#include “dataclasses/physics/I3RecoPulse.h”
Functions
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapApplySPECorrection&)
-
I3_CLASS_VERSION(I3RecoPulseSeriesMapApplySPECorrection, i3recopulseseriesmapapplyspecorrection_version_)¶
-
I3_POINTER_TYPEDEFS(I3RecoPulseSeriesMapApplySPECorrection)¶
Variables
-
static const unsigned i3recopulseseriesmapapplyspecorrection_version_ = 0¶
$Id$
Copyright (C) 2016 Claudio Kopper ckopper@icecube.wisc.edu Copyright (C) 2016 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapApplySPECorrection&)
- file I3RecoPulseSeriesMapCombineByModule.cxx
-
#include “dataclasses/physics/I3RecoPulse.h”#include “dataclasses/calibration/I3Calibration.h”#include “boost/make_shared.hpp”#include “boost/foreach.hpp”
Functions
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapCombineByModule &corr)¶
-
I3_SERIALIZABLE(I3RecoPulseSeriesMapCombineByModule)¶
-
std::ostream &operator<<(std::ostream &os, const I3RecoPulseSeriesMapCombineByModule &corr)¶
- file I3RecoPulseSeriesMapCombineByModule.h
- #include <functional>#include <string>#include “icetray/I3FrameObject.h”#include “icetray/OMKey.h”#include “icetray/I3Frame.h”#include “icetray/serialization.h”#include “dataclasses/physics/I3RecoPulse.h”
Functions
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapCombineByModule&)
-
I3_CLASS_VERSION(I3RecoPulseSeriesMapCombineByModule, I3RecoPulseSeriesMapCombineByModule_version_)¶
-
I3_POINTER_TYPEDEFS(I3RecoPulseSeriesMapCombineByModule)¶
Variables
-
static const unsigned I3RecoPulseSeriesMapCombineByModule_version_ = 0¶
$Id$
Copyright (C) 2018 Jakob van Santen jakob.van.santen@desy.de Copyright (C) 2018 the IceCube Collaboration http://www.icecube.wisc.edu SPDX-License-Identifier: BSD-2-Clause
-
std::ostream &operator<<(std::ostream&, const I3RecoPulseSeriesMapCombineByModule&)
- file I3ScintGeo.cxx
- #include <dataclasses/geometry/I3ScintGeo.h>
Functions
-
I3_SERIALIZABLE(I3ScintGeo)¶
-
I3_SERIALIZABLE(I3ScintGeoMap)¶
-
std::ostream &operator<<(std::ostream &os, const I3ScintGeo &g)¶
-
I3_SERIALIZABLE(I3ScintGeo)¶
- file I3ScintGeo.h
- #include <string>#include <dataclasses/I3Direction.h>#include <dataclasses/I3Orientation.h>#include <dataclasses/I3Position.h>#include <dataclasses/I3Map.h>#include <dataclasses/Utility.h>#include <dataclasses/ScintKey.h>
Typedefs
-
typedef I3Map<ScintKey, I3ScintGeo> I3ScintGeoMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3ScintGeo&)
-
I3_POINTER_TYPEDEFS(I3ScintGeo)¶
-
I3_CLASS_VERSION(I3ScintGeo, i3scintgeo_version_)¶
-
I3_POINTER_TYPEDEFS(I3ScintGeoMap)¶
Variables
-
static const unsigned i3scintgeo_version_ = 0¶
-
typedef I3Map<ScintKey, I3ScintGeo> I3ScintGeoMap¶
- file I3ScintRecoPulseSeriesMap.cxx
-
Functions
-
I3_SERIALIZABLE(I3ScintRecoPulseSeriesMap)¶
-
I3_SERIALIZABLE(I3ScintRecoPulseSeriesMap)¶
- file I3ScintRecoPulseSeriesMap.h
- #include <dataclasses/I3Map.h>#include <dataclasses/ScintKey.h>#include <dataclasses/physics/I3RecoPulse.h>
Typedefs
-
typedef I3Map<ScintKey, I3RecoPulseSeries> I3ScintRecoPulseSeriesMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3ScintRecoPulseSeriesMap)¶
-
typedef I3Map<ScintKey, I3RecoPulseSeries> I3ScintRecoPulseSeriesMap¶
- file I3String.cxx
- #include <icetray/serialization.h>#include <dataclasses/I3String.h>
- file I3String.h
- #include <string>#include <icetray/I3DefaultName.h>#include <icetray/I3PODHolder.h>
Typedefs
-
typedef I3PODHolder<std::string> I3String¶
-
typedef I3PODHolder<std::string> I3String¶
- file I3SuperDST.cxx
- #include <cassert>#include <serialization/binary_object.hpp>#include <boost/static_assert.hpp>#include <boost/utility.hpp>#include <boost/foreach.hpp>#include <boost/next_prior.hpp>#include “icetray/OMKey.h”#include “icetray/I3Units.h”#include “dataclasses/payload/I3SuperDST.h”#include “dataclasses/payload/I3SuperDSTUtils.h”#include <sys/resource.h>
Copyright (c) 2010 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause.
$Id$
- Version
$Revision$
- Date
$Date$
- Author
Jakob van Santen vansanten@wisc.edu
Defines
-
I3SUPERDSTCHARGESTAMP_TIME_BITS_V0¶
-
I3SUPERDSTCHARGESTAMP_CHARGE_BITS_V0¶
-
I3SUPERDSTCHARGESTAMP_BYTESIZE_V0¶
-
I3SUPERDST_DOMID_BITS_V0¶
-
I3SUPERDST_SLOP_BITS_V0¶
-
I3SUPERDST_HEADER_BYTESIZE_V0¶
Functions
-
I3_SPLIT_SERIALIZABLE(I3SuperDST)¶
- file I3SuperDST.h
- #include <map>#include <vector>#include “icetray/I3FrameObject.h”#include “icetray/IcetrayFwd.h”#include “dataclasses/physics/I3RecoPulse.h”#include “dataclasses/physics/I3TriggerHierarchy.h”#include “dataclasses/payload/I3SuperDSTTrigger.h”
Copyright (c) 2010 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause.
$Id:$
- Version
$Revision$
- Date
$Date$
- Author
Jakob van Santen vansanten@wisc.edu
Variables
-
static const unsigned i3superdst_version_ = 1¶
- file I3SuperDSTTrigger.cxx
- #include “dataclasses/payload/I3SuperDST.h”#include “dataclasses/payload/I3SuperDSTUtils.h”#include “dataclasses/payload/I3SuperDSTTrigger.h”#include “dataclasses/status/I3DetectorStatus.h”#include “dataclasses/physics/I3Trigger.h”#include <boost/foreach.hpp>#include <boost/next_prior.hpp>#include <boost/utility.hpp>
Copyright (c) 2011 Jakob van Santen vansanten@wisc.edu Copyright (c) 2011 the IceCube Collaboration <icecube.wisc.edu> SPDX-License-Identifier: BSD-2-Clause.
$Id$
- Version
$Revision$
- Date
$Date$
- Author
Jakob van Santen vansanten@wisc.edu
Functions
-
inline uint32_t FindIndex(const I3TriggerStatusMap &triggers, const TriggerKey &key)¶
-
inline const TriggerKey &FindKey(const I3TriggerStatusMap &triggers, uint32_t idx)¶
-
inline bool ExpectNoConfig(const TriggerKey &key)¶
-
I3_SPLIT_SERIALIZABLE(I3SuperDSTTriggerSeries)¶
- file I3SuperDSTTrigger.h
- #include “icetray/I3FrameObject.h”#include “icetray/I3Logging.h”#include “dataclasses/physics/I3TriggerHierarchy.h”
Copyright (c) 2011 Jakob van Santen vansanten@wisc.edu Copyright (c) 2011 the IceCube Collaboration <icecube.wisc.edu> SPDX-License-Identifier: BSD-2-Clause.
$Id$
- Version
$Revision$
- Date
$Date$
- Author
Jakob van Santen vansanten@wisc.edu
Functions
-
I3_POINTER_TYPEDEFS(I3SuperDSTTriggerSeries)¶
- file I3SuperDSTUtils.h
- #include <serialization/binary_object.hpp>
Copyright (c) 2011 Jakob van Santen Copyright (c) 2011 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause.
$Id$
- Version
$Revision$
- Date
$Date$
- Author
Jakob van Santen vansanten@wisc.edu
- file I3TankGeo.cxx
- #include <icetray/serialization.h>#include <dataclasses/geometry/I3TankGeo.h>
- file I3TankGeo.h
- #include <iostream>#include “dataclasses/I3Position.h”#include “dataclasses/Utility.h”#include “icetray/OMKey.h”#include “dataclasses/I3Vector.h”#include “dataclasses/I3Map.h”#include “dataclasses/external/CompareFloatingPoint.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef I3Map<int, I3StationGeo> I3StationGeoMap¶
Functions
-
I3_CLASS_VERSION(I3TankGeo, i3tankgeo_version_)¶
-
I3_POINTER_TYPEDEFS(I3StationGeo)¶
-
I3_POINTER_TYPEDEFS(I3StationGeoMap)¶
Variables
-
static const unsigned i3tankgeo_version_ = 2¶
- file I3Time.cxx
- #include <string>#include <dataclasses/jday.h>#include <icetray/serialization.h>#include <dataclasses/I3Time.h>#include <icetray/I3Units.h>#include <boost/algorithm/string.hpp>#include <boost/multiprecision/cpp_int.hpp>
- file I3Time.h
- #include <string>#include <time.h>#include <icetray/I3FrameObject.h>#include <dataclasses/Utility.h>
Functions
-
double operator-(const I3Time t1, const I3Time t2)
Returns the difference between two I3Times in nanoseconds
-
I3_CLASS_VERSION(I3Time, i3time_version_)¶
Variables
-
static const unsigned i3time_version_ = 0¶
A class for dealing with global times.
Has methods for setting the time in either the Daq UTC convention or in the Modified Julian convention
-
double operator-(const I3Time t1, const I3Time t2)
- file I3TimeWindow.cxx
- #include “dataclasses/I3TimeWindow.h”#include <boost/foreach.hpp>#include <serialization/list.hpp>#include <boost/next_prior.hpp>
Functions
-
I3_SERIALIZABLE(I3TimeWindow)¶
-
I3_SERIALIZABLE(I3TimeWindowSeries)¶
-
I3_SERIALIZABLE(I3TimeWindowSeriesMap)¶
-
I3TimeWindowSeriesMap operator|(const I3TimeWindowSeriesMap &left, const I3TimeWindowSeriesMap &right)¶
-
std::ostream &operator<<(std::ostream &oss, const I3TimeWindow &w)¶
-
std::ostream &operator<<(std::ostream &os, const I3TimeWindowSeries &tws)¶
-
I3_SERIALIZABLE(I3TimeWindow)¶
- file I3TimeWindow.h
- #include <dataclasses/I3Vector.h>#include <dataclasses/I3Map.h>
Typedefs
-
typedef I3Map<OMKey, I3TimeWindowSeries> I3TimeWindowSeriesMap¶
Functions
-
I3TimeWindowSeriesMap operator|(const I3TimeWindowSeriesMap&, const I3TimeWindowSeriesMap&)
-
std::ostream &operator<<(std::ostream &oss, const I3TimeWindow &w)
-
std::ostream &operator<<(std::ostream&, const I3TimeWindowSeries&)
-
I3_POINTER_TYPEDEFS(I3TimeWindow)¶
-
I3_POINTER_TYPEDEFS(I3TimeWindowSeries)¶
-
I3_POINTER_TYPEDEFS(I3TimeWindowSeriesMap)¶
-
I3_CLASS_VERSION(I3TimeWindow, i3timewindow_version_)¶
-
I3_CLASS_VERSION(I3TimeWindowSeries, i3timewindowseries_version_)¶
-
I3_CLASS_VERSION(I3TimeWindowSeriesMap, i3timewindowseriesmap_version_)¶
-
typedef I3Map<OMKey, I3TimeWindowSeries> I3TimeWindowSeriesMap¶
- file I3Tree.h
- #include <icetray/serialization.h>#include <stack>#include <dataclasses/external/tree.hh>#include <dataclasses/Utility.h>#include <icetray/I3FrameObject.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
tschmidt
- file I3Trigger.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3Trigger.h>#include <icetray/I3Units.h>#include <dataclasses/external/CompareFloatingPoint.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- file I3Trigger.h
- #include <icetray/I3Logging.h>#include <dataclasses/TriggerKey.h>#include <dataclasses/Utility.h>#include <dataclasses/I3Vector.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
blaufuss
- Author
deyoung
- Author
ehrlich
Variables
-
static const unsigned i3trigger_version_ = 1¶
The basic trigger class.
This is the base class for trigger records that will live in the I3TriggerHierarchy.
- file I3TriggerHierarchy.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3TriggerHierarchy.h>#include <iostream>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
Functions
-
std::string DumpChildren(const I3TriggerHierarchy &t, I3TriggerHierarchy::iterator i)¶
-
std::ostream &operator<<(std::ostream &oss, const I3TriggerHierarchy &t)¶
pointer type to insulate users from memory management
-
I3_SERIALIZABLE(I3TriggerHierarchy)¶
- file I3TriggerHierarchy.h
- #include <algorithm>#include <boost/lambda/lambda.hpp>#include <boost/lambda/bind.hpp>#include “dataclasses/I3Tree.h”#include “dataclasses/physics/I3Trigger.h”#include “icetray/I3DefaultName.h”#include “icetray/I3Frame.h”
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
tschmidt
Typedefs
-
typedef I3Tree<I3Trigger> I3TriggerHierarchy¶
Type definition for a n-ary tree of I3Trigger.
In contrast to AMANDA, there is no “flat” structure of coincident triggers in IceCube anymore. DAQ provides a more complicated n-ary tree-like hierarchy of triggers instead. So called “global triggers” hold “subdetector triggers” (child nodes of the corresponding node within the tree). “Global triggers” might be assigned as children to an additional “global trigger” of type “MERGED”, if two or more of these overlap in time.
Triggering at “string processor” level will add one additional level of siblings in future.
A n-ary tree of I3Trigger describes both scenarios very well. One might only use top level siblings for triggers in AMANDA and a full tree-like hierarchy for triggers in IceCube.
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3TriggerHierarchy &t)
pointer type to insulate users from memory management
-
I3_POINTER_TYPEDEFS(I3TriggerHierarchy)¶
-
I3_DEFAULT_NAME(I3TriggerHierarchy)¶
define a default name to address hierarchy in a frame
- file I3TriggerStatus.cxx
- #include <icetray/serialization.h>#include <dataclasses/status/I3TriggerStatus.h>#include <sstream>#include <iostream>#include <boost/foreach.hpp>#include <boost/preprocessor.hpp>#include <boost/function.hpp>#include <boost/lexical_cast.hpp>#include <boost/optional.hpp>#include <boost/algorithm/string.hpp>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
Defines
-
TRIGGER_CONFIG_TYPES(TYPE)¶
Functions
-
template<typename F, typename T>
void Convert(const F &from, boost::optional<T> &to)¶ Uses boost::lexical_cast to ensure the conversion can be made. http://www.boost.org/doc/libs/1_38_0/libs/conversion/lexical_cast.htm This catches things that will silently trip up atoi and atof.
-
template<>
void Convert(const char *from, boost::optional<bool> &to)¶
-
I3_SPLIT_SERIALIZABLE(I3TriggerStatus)¶
-
I3_SERIALIZABLE(I3TriggerReadoutConfig)¶
-
TRIGGER_CONFIG_TYPES(bool)¶
-
TRIGGER_CONFIG_TYPES(int)¶
-
TRIGGER_CONFIG_TYPES(float)¶
-
TRIGGER_CONFIG_TYPES(double)¶
-
TRIGGER_CONFIG_TYPES(unsigned)¶
-
TRIGGER_CONFIG_TYPES(long)¶
- file I3TriggerStatus.h
- #include <string>#include <map>#include <boost/optional.hpp>#include <dataclasses/Utility.h>#include <dataclasses/TriggerKey.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
blaufuss
Typedefs
-
typedef std::map<TriggerKey, I3TriggerStatus> I3TriggerStatusMap¶
pointer type to insulate users from memory management
Functions
-
template<typename F, typename T>
void Convert(const F &from, boost::optional<T> &to) Uses boost::lexical_cast to ensure the conversion can be made. http://www.boost.org/doc/libs/1_38_0/libs/conversion/lexical_cast.htm This catches things that will silently trip up atoi and atof.
-
template<typename T>
void Convert(const char *from, boost::optional<T> &to)
-
I3_CLASS_VERSION(I3TriggerReadoutConfig, i3triggerreadoutconfig_version_)¶
-
I3_POINTER_TYPEDEFS(I3TriggerStatusMap)¶
-
I3_POINTER_TYPEDEFS(I3TriggerStatus)¶
-
I3_CLASS_VERSION(I3TriggerStatus, i3triggerstatus_version_)¶
Variables
-
static const unsigned i3triggerstatus_version_ = 3¶
A trigger status/configuration object.
A class describing all additional trigger information beside source, type and subtype that are encapsulated in a TriggerKey already. It only consists of
a name and
a map of trigger settings: string, integer values, since most trigger information varies by trigger type.
For IceCube triggers, these settings are most probably …
… simple multiplicity trigger:
”threshold” - number of hits required in a time window
”timeWindow” - length of sliding time window (in ns)
… calibration trigger
”hitType” - type of hit to trigger on (0 (test), 1 (CPU), 2 (SPE), 3 (flasher))
… min bias trigger
”prescale” - one over the fraction of hits to trigger on
… two coincidence trigger
”triggerType1” - trigger type of first trigger
”triggerConfigId1” - trigger config ID of first trigger
”sourceId1” - source ID of first trigger
”triggerType2” - trigger type of second trigger
”triggerConfigId2” - trigger config ID of second trigger
”sourceId2” - source ID of second trigger
… three coincidence trigger
”triggerType1” - trigger type of first trigger
”triggerConfigId1” - trigger config ID of first trigger
”sourceId1” - source ID of first trigger
”triggerType2” - trigger type of second trigger
”triggerConfigId2” - trigger config ID of second trigger
”sourceId2” - source ID of second trigger
”triggerType3” - trigger type of third trigger
”triggerConfigId3” - trigger config ID of third trigger
“sourceId3” - source ID of third triggerAdditionally, the per-trigger readout instructions, specified for each subdetector: readoutTimeMinus : time before the trigger time to set the readout window readoutTimePlus : time after the trigger time to set the readout window readoutTimeOffset : time shift relatve to the trigger time to set the readout window
-
static const unsigned i3triggerreadoutconfig_version_ = 0¶
- file I3TWRFrag.cxx
- #include <vector>#include <icetray/serialization.h>#include <dataclasses/physics/I3TWRFrag.h>#include <math.h>
implementation of the I3TWRFrag class
Copyright (c) 2005 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
tschmidt
- file I3TWRFrag.h
- #include <vector>#include <dataclasses/Utility.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Version
$Revision$
- Date
$Date$
Functions
-
I3_CLASS_VERSION(I3TWRFrag, i3twrfrag_version_)¶
Variables
-
static const unsigned i3twrfrag_version_ = 1¶
- file I3TWRLaunch.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3TWRLaunch.h>#include <math.h>
implementation of the I3TWRLaunch class
Copyright (c) 2005 the IceCube Collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
tschmidt
Functions
-
bool operator==(const I3TWRLaunch &lhs, const I3TWRLaunch &rhs)¶
-
std::ostream &operator<<(std::ostream &os, const I3TWRLaunch &l)¶
-
I3_SERIALIZABLE(I3TWRLaunch)¶
-
I3_SERIALIZABLE(I3TWRLaunchSeriesMap)¶
- file I3TWRLaunch.h
- #include <vector>#include <dataclasses/I3Map.h>#include <dataclasses/I3Vector.h>#include <icetray/OMKey.h>#include <dataclasses/Utility.h>#include <dataclasses/physics/I3TWRFrag.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef std::vector<I3TWRLaunch> I3TWRLaunchSeries¶
-
typedef I3Map<OMKey, I3TWRLaunchSeries> I3TWRLaunchSeriesMap¶
Functions
-
std::ostream &operator<<(std::ostream&, const I3TWRLaunch&)
-
bool operator==(const I3TWRLaunch &lhs, const I3TWRLaunch &rhs)
-
I3_CLASS_VERSION(I3TWRLaunch, i3twrlaunch_version_)¶
-
I3_POINTER_TYPEDEFS(I3TWRLaunch)¶
-
I3_POINTER_TYPEDEFS(I3TWRLaunchSeries)¶
-
I3_POINTER_TYPEDEFS(I3TWRLaunchSeriesMap)¶
Variables
-
static const unsigned i3twrlaunch_version_ = 1¶
- file I3UInt64.cxx
- #include <icetray/I3PODHolder.h>#include <icetray/serialization.h>
Typedefs
-
typedef I3PODHolder<uint64_t> I3UInt64¶
-
typedef I3PODHolder<uint64_t> I3UInt64¶
- file I3Vector.cxx
- #include <icetray/serialization.h>#include <dataclasses/I3Vector.h>#include <string>
Functions
-
I3_SERIALIZABLE(I3VectorBool)¶
-
I3_SERIALIZABLE(I3VectorChar)¶
-
I3_SERIALIZABLE(I3VectorShort)¶
-
I3_SERIALIZABLE(I3VectorUShort)¶
-
I3_SERIALIZABLE(I3VectorInt)¶
-
I3_SERIALIZABLE(I3VectorUnsignedInt)¶
-
I3_SERIALIZABLE(I3VectorInt64)¶
-
I3_SERIALIZABLE(I3VectorUInt64)¶
-
I3_SERIALIZABLE(I3VectorFloat)¶
-
I3_SERIALIZABLE(I3VectorDouble)¶
-
I3_SERIALIZABLE(I3VectorString)¶
-
I3_SERIALIZABLE(I3VectorOMKey)¶
-
I3_SERIALIZABLE(I3VectorTankKey)¶
-
I3_SERIALIZABLE(I3VectorModuleKey)¶
-
I3_SERIALIZABLE(I3VectorDoubleDouble)¶
-
I3_SERIALIZABLE(I3VectorI3Position)¶
-
I3_SERIALIZABLE(I3VectorBool)¶
- file I3Vector.h
- #include <string>#include <icetray/serialization.h>#include <icetray/I3FrameObject.h>#include <icetray/ostream_pair.hpp>#include <icetray/has_operator.h>#include <vector>#include “dataclasses/Utility.h”#include “icetray/OMKey.h”#include “dataclasses/ModuleKey.h”#include “dataclasses/TankKey.h”#include “dataclasses/I3Position.h”#include “dataclasses/StationKey.h”
Typedefs
-
typedef I3Vector<I3Position> I3VectorI3Position¶
-
typedef I3Vector<StationKey> I3VectorStationKey¶
Functions
-
I3_POINTER_TYPEDEFS(I3VectorBool)¶
-
I3_POINTER_TYPEDEFS(I3VectorChar)¶
-
I3_POINTER_TYPEDEFS(I3VectorInt)¶
-
I3_POINTER_TYPEDEFS(I3VectorUInt)¶
-
I3_POINTER_TYPEDEFS(I3VectorInt64)¶
-
I3_POINTER_TYPEDEFS(I3VectorUInt64)¶
-
I3_POINTER_TYPEDEFS(I3VectorFloat)¶
-
I3_POINTER_TYPEDEFS(I3VectorDouble)¶
-
I3_POINTER_TYPEDEFS(I3VectorString)¶
-
I3_POINTER_TYPEDEFS(I3VectorOMKey)¶
-
I3_POINTER_TYPEDEFS(I3VectorTankKey)¶
-
I3_POINTER_TYPEDEFS(I3VectorStationKey)¶
-
I3_POINTER_TYPEDEFS(I3VectorModuleKey)¶
-
I3_POINTER_TYPEDEFS(I3VectorDoubleDouble)¶
-
I3_POINTER_TYPEDEFS(I3VectorI3Position)¶
-
typedef I3Vector<I3Position> I3VectorI3Position¶
- file I3VEMCalibration.cxx
- #include <icetray/serialization.h>#include “dataclasses/calibration/I3VEMCalibration.h”
- Version
$Id$
- Date
$Date$
Functions
-
std::ostream &operator<<(std::ostream &oss, const I3VEMCalibration &vc)¶
-
I3_SERIALIZABLE(I3VEMCalibration)¶
- file I3VEMCalibration.h
- #include <icetray/OMKey.h>#include <dataclasses/Utility.h>#include <dataclasses/external/CompareFloatingPoint.h>
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef std::map<OMKey, I3VEMCalibration> I3VEMCalibrationMap¶
Functions
-
I3_POINTER_TYPEDEFS(I3VEMCalibrationMap)¶
-
I3_CLASS_VERSION(I3VEMCalibration, i3vemcalibration_version_)¶
-
I3_POINTER_TYPEDEFS(I3VEMCalibration)¶
-
std::ostream &operator<<(std::ostream &oss, const I3VEMCalibration &c)
Variables
-
static const unsigned i3vemcalibration_version_ = 0¶
This struct stores the VEM (Vertical Equivalent Muon) calibration data for an IceTop DOM. In addition it contains information concerning the switching between the high gain (HG) and low gain (LG) DOMs in a Tank.
- Author
Tilo Waldenmaier (struct’d by Erik Blaufuss)
- file I3Waveform.cxx
- #include <icetray/serialization.h>#include <dataclasses/physics/I3Waveform.h>#include <algorithm>#include <boost/lambda/bind.hpp>#include <boost/lambda/lambda.hpp>#include <boost/foreach.hpp>
Functions
-
I3_SPLIT_SERIALIZABLE(I3Waveform::StatusCompound)¶
-
bool operator==(const I3Waveform &lhs, const I3Waveform &rhs)¶
-
std::ostream &operator<<(std::ostream &oss, const I3Waveform &wf)¶
-
std::ostream &operator<<(std::ostream &oss, const I3Waveform::StatusCompound &sc)¶
-
I3_SPLIT_SERIALIZABLE(I3Waveform)¶
-
I3_SERIALIZABLE(I3WaveformSeriesMap)¶
-
I3_SERIALIZABLE(I3ScintWaveformSeriesMap)¶
-
I3_SPLIT_SERIALIZABLE(I3Waveform::StatusCompound)¶
- file I3Waveform.h
- #include <utility>#include <vector>#include <dataclasses/I3Map.h>#include <dataclasses/ScintKey.h>#include <icetray/OMKey.h>
Copyright (C) 2004 The icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
Defines
-
I3WAVEFORM_H_I3Waveform_Source¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
-
I3WAVEFORM_H_I3Waveform_Status¶
Typedefs
-
typedef std::vector<I3Waveform> I3WaveformSeries¶
-
typedef I3Map<OMKey, I3WaveformSeries> I3WaveformSeriesMap¶
-
typedef I3Map<ScintKey, I3WaveformSeries> I3ScintWaveformSeriesMap¶
Functions
-
SourceCompound(Source source = ATWD, unsigned id = 0)¶
-
bool operator==(const I3Waveform &lhs, const I3Waveform &rhs)
-
std::ostream &operator<<(std::ostream &oss, const I3Waveform &wf)
-
std::ostream &operator<<(std::ostream &oss, const I3Waveform::StatusCompound &wf)
-
I3_CLASS_VERSION(I3Waveform, i3waveform_version_)¶
-
I3_CLASS_VERSION(I3Waveform::StatusCompound, i3waveform_version_)¶
-
I3_POINTER_TYPEDEFS(I3Waveform)¶
-
I3_POINTER_TYPEDEFS(I3WaveformSeries)¶
-
I3_POINTER_TYPEDEFS(I3WaveformSeriesMap)¶
-
I3_POINTER_TYPEDEFS(I3ScintWaveformSeriesMap)¶
- file IceActKey.cxx
- #include <dataclasses/IceActKey.h>#include <icetray/I3Logging.h>
- file IceActKey.h
- #include <iostream>#include <icetray/serialization.h>#include <icetray/I3PointerTypedefs.h>#include <dataclasses/I3Vector.h>
Functions
-
I3_POINTER_TYPEDEFS(I3VectorIceActKey)¶
Variables
-
static const unsigned iceactkey_version_ = 0¶
-
I3_POINTER_TYPEDEFS(I3VectorIceActKey)¶
- file jday.h
- file ModuleKey.cxx
- #include <icetray/serialization.h>#include <dataclasses/ModuleKey.h>#include <sstream>#include <boost/regex.hpp>#include <boost/lexical_cast.hpp>
- file ModuleKey.h
- #include <iostream>#include <string>#include <icetray/IcetrayFwd.h>#include <icetray/I3FrameObject.h>#include <icetray/serialization.h>#include “dataclasses/I3Map.h”
Functions
-
I3_CLASS_VERSION(ModuleKey, modulekey_version_)¶
-
inline bool operator<(const ModuleKey &lhs, const ModuleKey &rhs)¶
comparison operator. First compares the string numbers, then compares the om numbers. Required to put ModuleKeys as the key of a map
-
std::ostream &operator<<(std::ostream&, const ModuleKey &key)
streams an ModuleKey to an arbitrary ostream. These are important, the tray uses these conversion internally.
-
I3_POINTER_TYPEDEFS(I3MapModuleKeyString)¶
Variables
-
static const unsigned modulekey_version_ = 1¶
$Id$
Copyright (C) 2012 The IceCube Collaboration http://www.icecube.wisc.edu
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS’’ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
SPDX-License-Identifier: BSD-2-Clause
-
I3_CLASS_VERSION(ModuleKey, modulekey_version_)¶
- file ostream_overloads.hpp
- #include <vector>#include <icetray/has_operator.h>
- file ScintKey.cxx
- #include <dataclasses/ScintKey.h>#include <icetray/I3Logging.h>
- file ScintKey.h
- #include <iostream>#include <icetray/serialization.h>#include <icetray/I3PointerTypedefs.h>#include <dataclasses/I3Vector.h>
Functions
-
I3_POINTER_TYPEDEFS(I3VectorScintKey)¶
Variables
-
static const unsigned scintkey_version_ = 0¶
-
I3_POINTER_TYPEDEFS(I3VectorScintKey)¶
- file StationKey.h
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Typedefs
-
typedef int StationKey¶
the station key. Basically a number (the string it is on top). Negative for SPASE stations.
- file stream_overloads.cpp
- #include <dataclasses/I3Vector.h>
- file TankKey.cxx
- #include <icetray/serialization.h>#include “dataclasses/TankKey.h”
- file TankKey.h
- #include <utility>#include <icetray/OMKey.h>#include <icetray/serialization.h>#include <iostream>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
Functions
-
inline bool operator<(const TankKey &lhs, const TankKey &rhs)¶
comparison operator. First compares the string numbers, then compares the tank numbers. Required to put TankKeys as the key of a map
-
std::ostream &operator<<(std::ostream&, const TankKey &key)
streams an TankKey to an arbitrary ostream.
-
I3_CLASS_VERSION(TankKey, tankkey_version_)¶
Variables
-
static const unsigned tankkey_version_ = 0¶
A small class which is the string number and tank number for an IceTop tank.
- file TestConstCache.cxx
- #include <icetray/I3Module.h>#include <dataclasses/geometry/I3Geometry.h>
Functions
-
I3_MODULE(TestConstCache)¶
-
I3_MODULE(TestConstCache)¶
- file tree.hh
- #include <cassert>#include <memory>#include <stdexcept>#include <iterator>#include <set>
Functions
-
template<class T, class tree_node_allocator>
bool operator>(const typename tree<T, tree_node_allocator>::iterator_base &one, const typename tree<T, tree_node_allocator>::iterator_base &two)¶
-
template<class T, class tree_node_allocator>
- file TriggerKey.cxx
- #include <icetray/serialization.h>#include <dataclasses/TriggerKey.h>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
Functions
-
std::ostream &operator<<(std::ostream &oss, const TriggerKey &k)¶
-
I3_SPLIT_SERIALIZABLE(TriggerKey)¶
- file TriggerKey.h
- #include <string>#include <icetray/I3Logging.h>#include <dataclasses/Utility.h>#include <boost/optional.hpp>
Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause $Id$
- Version
$Revision$
- Date
$Date$
- Author
blaufuss
Defines
-
TRIGGERKEY_H_TriggerKey_SourceID¶
List the names of enumeration members defined in this file here. These can be used for e.g. pybindings, which require the names of the enumeration members to be known. This list should be updated whenever members or new enums are added to the class.
-
TRIGGERKEY_H_TriggerKey_TypeID¶
-
TRIGGERKEY_H_TriggerKey_SubtypeID¶
Typedefs
-
typedef std::vector<TriggerKey> TriggerKeyVector¶
Functions
-
I3_POINTER_TYPEDEFS(TriggerKey)¶
pointer type to insulate users from memory management
-
I3_CLASS_VERSION(TriggerKey, triggerkey_version_)¶
-
I3_POINTER_TYPEDEFS(TriggerKeyVector)¶
-
inline bool operator<(const TriggerKey &lhs, const TriggerKey &rhs)¶
Comparison operator. Required to use TriggerKeys as a key of a map.
Precedence between source, type, subtype and configuration ID is somewhat arbitrary, so I’ve picked: source, type, subtype, configuration ID in order of descending importance.
- Parameters:
lhs – the left-hand trigger key.
rhs – the right-hand trigger key.
- Returns:
true if the lhs should be ordered before the rhs.
-
inline bool operator>=(const TriggerKey &lhs, const TriggerKey &rhs)¶
Comparison operator.
- Parameters:
lhs – the left-hand trigger key.
rhs – the right-hand trigger key.
- Returns:
true if the rhs should be ordered before the lhs or if lhs and rhs are equal.
-
inline bool operator>(const TriggerKey &lhs, const TriggerKey &rhs)¶
Comparison operator.
- Parameters:
lhs – the left-hand trigger key.
rhs – the right-hand trigger key.
- Returns:
true if the rhs should be ordered before the lhs.
-
inline bool operator<=(const TriggerKey &lhs, const TriggerKey &rhs)¶
Comparison operator.
- Parameters:
lhs – the left-hand trigger key.
rhs – the right-hand trigger key.
- Returns:
true if the lhs should be ordered before the rhs or if lhs and rhs are equal.
-
std::ostream &operator<<(std::ostream &oss, const TriggerKey &k)
Variables
-
static const unsigned triggerkey_version_ = 1¶
A small class which is the “key” for the trigger status/config map in I3DetectorStatus.
Triggers are identified by three IDs in the IceCube DAQ system/global trigger. These three IDs make an “unique” identifier that can be used to look up additional trigger information like “prescale” for “MIN_BIAS” triggers or “threshold” and “timeWindow” for “SIMPLE_MULTIPLICITY” triggers.
Those three pieces are:
Source ID
Type ID
Config ID
Software triggers from the TWR DAQ system are somewhat special, if processed by the global trigger. A configuration that corresponds to a given source, type and config ID triplet describes how the trigger is processed by global trigger, but it carries no information about the TWR DAQ trigger system. There is no more difference between a simple multiplicity of 18 or 24. Thus is this triplet complemented by a subtype - it will only be used in connection with software triggers. The subtype will also avoid ambiguities, when decoding data from IceCube DAQ/global trigger.
- file Utility.h
- #include <stdint.h>#include <dataclasses/copy_if.h>#include <icetray/serialization.h>#include <icetray/IcetrayFwd.h>#include <icetray/I3FrameObject.h>#include <icetray/I3Logging.h>
Functions
-
template<typename T>
std::string AsXML(const T &ob)¶ Copyright (C) 2004 the icecube collaboration SPDX-License-Identifier: BSD-2-Clause
- Version
$Id$
- Date
$Date$
-
template<typename T>
- page todo
- Namespace I3Constants
probably need more constants here. Add them here when you need them.
- Member I3Constants::zIceTop
Make sure that the elevation of IceTop is the same as the elevation of AMANDA hole 4. If not, then correct for the difference.
- Class I3Direction
implement “print out” of all information in a uniform way…
ensure that the temporary data isn’t written to disk.
- Member i3position_version_
implement “print out” of all information in a uniform way…
insure that the temporary data isn’t written to disk.
- Namespace kp
New-style move members are not completely finished yet.
Fixed depth iterators do not iterate over the entire range if there are ‘holes’ in the tree.
If a range uses const iter_base& as end iterator, things will inevitably go wrong, because upcast from iter_base to a non-sibling_iter is incorrect. This upcast should be removed (and then all illegal uses as previously in ‘equal’ will be flagged by the compiler). This requires new copy constructors though.
There’s a bug in replace(sibling_iterator, …) when the ranges sit next to each other. Turned up in append_child(iter,iter) but has been avoided now.
”std::operator<” does not work correctly on our iterators, and for some reason a globally defined template operator< did not get picked up. Using a comparison class now, but this should be investigated.
- dir calibration
- dir calibration
- dir dataclasses
- dir dataclasses
- dir dataclasses
- dir deprecated
- dir deprecated
- dir detail
- dir external
- dir external
- dir fft
- dir fft
- dir geometry
- dir geometry
- dir I3PODHolder
- dir icetray
- dir payload
- dir payload
- dir physics
- dir physics
- dir private
- dir public
- dir status
- dir status
- dir test_module
- page index
The tree.hh library for C++ provides an STL-like container class for n-ary trees, templated over the data stored at the nodes. Various types of iterators are provided (post-order, pre-order, and others). Where possible the access methods are compatible with the STL or alternative algorithms are available.
See also
- Author
Kasper Peeters
- Version
2.02
- Date
12-Oct-2005