ATLAS Offline Software
|
Classes | |
class | range_error |
Typedefs | |
typedef uint32_t | roitype_t |
typedef std::vector< std::vector< roitype_t > > | roiserial_type |
Enumerations | |
enum | ROIENUM { PARAM, ETA, ETAMINUS, ETAPLUS, PHI, PHIMINUS, PHIPLUS, ZED, ZEDMINUS, ZEDPLUS } |
enum | MASK { FULLSCAN = 0x1, COMPOSITE = 0x2, ROITYPE = 0x4 } |
Functions | |
bool | contains (const IRoiDescriptor &roi, double z0, double dzdr) |
see whether a segment is contained within the roi in r-z More... | |
bool | contains_zrange (const IRoiDescriptor &roi, double z0, double dzdr, double zmin, double zmax) |
bool | contains (const IRoiDescriptor &roi, double z, double r, double phi) |
see whether a point is contained within the roi (in phi and r-z) More... | |
bool | containsPhi (const IRoiDescriptor &roi, double phi) |
test whether a stub is contained within the roi More... | |
bool | containsZed (const IRoiDescriptor &roi, double z, double r) |
double | phicheck (double phi) |
basic range checkers More... | |
double | etacheck (double eta) |
double | zedcheck (double zed) |
void | serialise (const std::vector< const IRoiDescriptor * > &rois, roiserial_type &s) |
serialise an entire vector of IRoiDescriptors More... | |
void | serialise (const TrigRoiDescriptorCollection &rois, roiserial_type &s) |
serialise an entire TrigRoiDescriptor collection More... | |
void | deserialise (const roiserial_type &s, std::vector< const IRoiDescriptor * > &rois) |
deserialise uint32_t vector into a full vector of IRoiDescriptors More... | |
void | deserialise (const roiserial_type &s, TrigRoiDescriptorCollection &rois) |
deserialise uint32_t vector into a TrigRoiDescriptorCollection More... | |
void | serialise (const IRoiDescriptor *roi, std::vector< roitype_t > &s) |
serialise a single IRoiDescriptor More... | |
IRoiDescriptor * | deserialise (const roitype_t *&s_end, const roitype_t *s_last) |
deserialise to a single IRoiDescriptors (including constituents) More... | |
typedef std::vector< std::vector<roitype_t> > RoiUtil::roiserial_type |
Definition at line 22 of file RoiSerialise.h.
typedef uint32_t RoiUtil::roitype_t |
Definition at line 21 of file RoiSerialise.h.
enum RoiUtil::MASK |
Enumerator | |
---|---|
FULLSCAN | |
COMPOSITE | |
ROITYPE |
Definition at line 35 of file RoiSerialise.cxx.
enum RoiUtil::ROIENUM |
bool RoiUtil::contains | ( | const IRoiDescriptor & | roi, |
double | z, | ||
double | r, | ||
double | phi | ||
) |
see whether a point is contained within the roi (in phi and r-z)
Definition at line 110 of file RoiUtil.cxx.
bool RoiUtil::contains | ( | const IRoiDescriptor & | roi, |
double | z0, | ||
double | dzdr | ||
) |
see whether a segment is contained within the roi in r-z
test whether a stub is contained within the roi
Definition at line 42 of file RoiUtil.cxx.
bool RoiUtil::contains_zrange | ( | const IRoiDescriptor & | roi, |
double | z0, | ||
double | dzdr, | ||
double | zmin, | ||
double | zmax | ||
) |
Definition at line 60 of file RoiUtil.cxx.
bool RoiUtil::containsPhi | ( | const IRoiDescriptor & | roi, |
double | phi | ||
) |
bool RoiUtil::containsZed | ( | const IRoiDescriptor & | roi, |
double | z, | ||
double | r | ||
) |
Definition at line 94 of file RoiUtil.cxx.
void RoiUtil::deserialise | ( | const roiserial_type & | s, |
std::vector< const IRoiDescriptor * > & | rois | ||
) |
deserialise uint32_t vector into a full vector of IRoiDescriptors
deserialise a serialised vector into a full vector of IRoiDescriptors
Definition at line 62 of file RoiSerialise.cxx.
void RoiUtil::deserialise | ( | const roiserial_type & | s, |
TrigRoiDescriptorCollection & | rois | ||
) |
deserialise uint32_t vector into a TrigRoiDescriptorCollection
deserialise a serialised vector into a full vector of IRoiDescriptors
Oh dear, or dear rois.push_back( RoiUtil::deserialise( s_end, s_last ) );
while ( s_end<s_last )
Definition at line 78 of file RoiSerialise.cxx.
IRoiDescriptor * RoiUtil::deserialise | ( | const roitype_t *& | s_end, |
const roitype_t * | s_last | ||
) |
deserialise to a single IRoiDescriptors (including constituents)
get the packed version / fullscan / composite word
get the version
at this point we can have some customisation for the version number if required
is it a fullscan roi ?
is it a composite roi
set the expected limit of the serialised roitype_t container
calculate the untimate end of the basic roi roitype_t container
protection against over flowing the vector contents NB: this should really print an error or throw an exception but skipped in the interests of code portability
actually s_end becomes the address of the next word
get the additional (unwanted) roi words if required
create if fullscan
if not full scan, create with the roi parameters ...
this requires the roi words ... NB: if not required, the roi words are all set to 0
created the roi, now set composite if required NB: this is needed in case it is composite, but has no constituents
create constituents if required
Definition at line 162 of file RoiSerialise.cxx.
double RoiUtil::etacheck | ( | double | eta | ) |
Definition at line 133 of file RoiUtil.cxx.
double RoiUtil::phicheck | ( | double | phi | ) |
basic range checkers
Definition at line 123 of file RoiUtil.cxx.
void RoiUtil::serialise | ( | const IRoiDescriptor * | roi, |
std::vector< roitype_t > & | s | ||
) |
serialise a single IRoiDescriptor
serialise a single IRoiDescriptor (including constituents)
packed version number
pack fullscan flag
pack the composite flag
push back the additional (unwanted?) roi ID variables
now actual roi parameters
number of constituents if a composite roi
now serialise the constituents ...
Definition at line 97 of file RoiSerialise.cxx.
void RoiUtil::serialise | ( | const std::vector< const IRoiDescriptor * > & | rois, |
RoiUtil::roiserial_type & | s | ||
) |
void RoiUtil::serialise | ( | const TrigRoiDescriptorCollection & | rois, |
RoiUtil::roiserial_type & | s | ||
) |
serialise an entire TrigRoiDescriptor collection
serialise a vector of IRoiDescriptors
Definition at line 53 of file RoiSerialise.cxx.
double RoiUtil::zedcheck | ( | double | zed | ) |
Definition at line 141 of file RoiUtil.cxx.