|
ATLAS Offline Software
|
Go to the documentation of this file.
23 inline const float&
fconv(
const uint32_t&
x) {
return reinterpret_cast<const float&
>(
x); }
47 s.resize(
rois.size());
55 s.resize(
rois.size());
63 if (
s.empty() )
return;
64 rois.resize(
s.size());
65 for (
size_t i=0 ;
i<
s.size() ;
i++ ) {
79 if (
s.empty() )
return;
80 for (
size_t i=0 ;
i<
s.size() ;
i++ ) {
115 bool plusextra = (
extra[0]!=0 ) || (
extra[1]!=0 ) || (
extra[2]!=0 );
124 if ( plusextra ) Nextra = 3;
141 for (
int i=0 ;
i<Nextra ;
i++ )
s.push_back(
extra[
i] );
145 s.push_back( roi->
size() );
149 if ( roi->
size()>0 ) {
178 bool fullscan =
false;
179 if (param&1) fullscan =
true;
182 bool composite =
false;
183 if (param&2) composite =
true;
185 bool roiwords =
false;
186 if (param&4) roiwords =
true;
193 unsigned Nextra = ( roiwords ? 3 : 0 );
199 if ( s_end>s_last )
return 0;
205 unsigned extra[3] = { 0, 0, 0 };
208 for (
unsigned i=0 ;
i<Nextra ;
i++ )
extra[
i] =
unsigned(
s[extra_start+
i] );
211 unsigned l1Id =
extra[1];
234 if ( roi && composite ) {
240 unsigned size = *s_end;
244 std::cout <<
"size " <<
size << std::endl;
247 for (
unsigned i=0 ;
i<
size ;
i++ ) {
virtual double phi() const =0
Methods to retrieve data members.
virtual roi_iterator begin() const =0
const limit iterators
void serialise(const std::vector< const IRoiDescriptor * > &rois, roiserial_type &s)
serialise an entire vector of IRoiDescriptors
std::vector< const IRoiDescriptor * >::const_iterator roi_iterator
virtual double etaMinus() const =0
virtual unsigned size() const =0
number of constituents
nope - should be used for standalone also, perhaps need to protect the class def bits #ifndef XAOD_AN...
virtual roi_iterator end() const =0
virtual double etaPlus() const =0
const uint32_t & uconv(const float &x)
virtual double eta() const =0
void push_back(const IRoiDescriptor *roi)
add a RoiDescriptor
Describes the API of the Region of Ineterest geometry.
setTeId setLumiBlock roiId
const float & fconv(const uint32_t &x)
std::vector< std::vector< roitype_t > > roiserial_type
void deserialise(const roiserial_type &s, std::vector< const IRoiDescriptor * > &rois)
deserialise uint32_t vector into a full vector of IRoiDescriptors
virtual double phiMinus() const =0
virtual unsigned int roiId() const =0
identifiers
virtual double phiPlus() const =0
extreme phi values
virtual unsigned int l1Id() const =0
virtual double zedPlus() const =0
the zed and eta values at the most forward and most rear ends of the RoI
virtual bool isFullscan() const =0
is this a full detector RoI?
virtual double zed() const =0
virtual double zedMinus() const =0
void setComposite(bool b=true)
Athena::TPCnvVers::Current TrigRoiDescriptor
virtual int version() const override final
versioning
virtual int version() const =0
which roi version?
virtual unsigned int roiWord() const =0
virtual bool composite() const =0
Super RoI access methods.