![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef MUONTGC_CNVTOOLS_TGCRDOTOPREPDATATOOLMT_H
6 #define MUONTGC_CNVTOOLS_TGCRDOTOPREPDATATOOLMT_H
10 #include "GaudiKernel/ServiceHandle.h"
34 class TgcReadoutElement;
73 const std::vector<IdentifierHash>& idVect)
const override;
199 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcPrepDataCollection> > >& collectionMap,
200 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcCoinDataCollection> > >& coinMap)
const;
205 std::vector<std::unordered_map<
IdentifierHash, std::unique_ptr<TgcPrepDataCollection> > >& collectionMap)
const;
209 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcCoinDataCollection> > >& coinMap)
const;
213 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcCoinDataCollection> > >& coinMap)
const;
217 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcCoinDataCollection> > >& coinMap)
const;
221 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcCoinDataCollection> > >& coinMap)
const;
226 std::vector< std::unordered_map<
IdentifierHash, std::unique_ptr<TgcCoinDataCollection> > >& coinMap)
const;
242 const std::vector<const TgcRdo*>& rdoCollVec,
246 static bool isRequested(
const std::vector<IdentifierHash>& requestedIdHashVect,
265 int& tmp_slbId,
int& tmp_subMatrix,
int& tmp_position)
const;
276 const int DeltaBeforeConvert,
277 std::array<int, 4>& bitpos_i,
278 std::array<int, 4>& slbchannel_i,
279 std::array<int, 4>& slbId_in,
280 std::array<int, 4>& sbLoc_in,
282 const std::array<int, 2>& bitpos_o,
283 std::array<int, 2>& slbchannel_o,
284 const int slbId_o)
const;
289 const int DeltaBeforeConvert,
290 std::array<int, 4>& bitpos_i,
291 std::array<int, 4>& slbchannel_i,
294 const std::array<int, 2>& bitpos_o,
295 std::array<int, 2>& slbchannel_o)
const;
301 std::array<int, 3>& bitpos_w)
const;
306 std::array<int, 3>& bitpos_s) ;
318 double& z_wire)
const;
321 const bool isBackWard,
324 double& theta_strip)
const;
326 bool getPosAndIdWireOut(
const std::array<const MuonGM::TgcReadoutElement*, 2>& descriptor_o,
327 const std::array<Identifier, 2>& channelIdOut,
328 const std::array<int, 2>& gasGap_o,
329 const std::array<int, 2>& channel_o,
331 double& hit_position_o,
335 bool getPosAndIdStripOut(
const std::array<const MuonGM::TgcReadoutElement*, 2>& descriptor_o,
336 const std::array<Identifier,2 >& channelIdOut,
337 const std::array<int, 2>& gasGap_o,
338 const std::array<int, 2>& channel_o,
340 double& hit_position_o,
343 const bool isBackward,
const bool isAside)
const;
346 bool getPosAndIdWireIn(
const std::array<const MuonGM::TgcReadoutElement*, 4>& descriptor_i,
347 const std::array<Identifier,4 >& channelIdIn,
348 const std::array<int, 4>& gasGap_i,
349 const std::array<int, 4>& channel_i,
350 double& width_i,
double& hit_position_i,
354 bool getPosAndIdStripIn(
const std::array<const MuonGM::TgcReadoutElement*, 4>& descriptor_i,
355 const std::array<Identifier, 4>& channelIdIn,
356 const std::array<int, 4>& gasGap_i,
357 const std::array<int, 4>& channel_i,
358 double& width_i,
double& hit_position_i,
361 const bool isBackward,
const bool isAside)
const;
370 int&
index,
int& chip,
int& hitId,
int& sub,
int& sswId,
int& sbLoc,
int& subMatrix,
371 std::array<int, 3>& bitpos,
372 const bool isBoundary=
false,
const TgcRdo* rdoColl=0,
373 const int index_w=-1,
const int chip_w=-1,
const int hitId_w=-1,
const int sub_w=-1)
const;
378 const int index_w,
const int chip_w,
const int hitId_w,
const int sub_w)
const;
383 const int index_w,
const int chip_w,
const int hitId_w,
const int sub_w)
const;
386 int &trackletIdStripSecond,
int &trackletIdStripThird) ;
462 virtual StatusCode decode(
const EventContext& ctx,
const std::vector<uint32_t>& robIds)
const override;
466 newrodId = rd->
rodId();
470 newrodId = rd->
sector() / 2 + 1 + (rd->
rodId()-17) * 4;
471 newsector = (rd->
sector() + (rd->
rodId()-17)*8) % 2;
473 newrodId = rd->
sector() / 4 + 1 + (rd->
rodId()-17) * 4;
474 newsector = (rd->
sector() + (rd->
rodId()-17)*16) % 4;
485 #endif // MUONTGC_CNVTOOLS_TGCRDOTOPREPDATATOOLMT_H
Template for Muon PRD containers (which are basically collections of MuonPrepDataCollections).
Ensure that the Athena extensions are properly loaded.
Scalar phi() const
phi method
Scalar eta() const
pseudorapidity method
Eigen::Matrix< double, 2, 1 > Vector2D
This class provides conversion from CSC RDO data to CSC Digits.
Property holding a SG store/key/clid from which a WriteHandle is made.
::StatusCode StatusCode
StatusCode definition for legacy code.
Cached value with atomic update.
A TgcReadoutElement corresponds to a single TGC chamber; therefore typically a TGC station contains s...
Property holding a SG store/key/clid from which an UpdateHandle is made.
Cached value with atomic update.
Handle class for modifying an existing object in StoreGate.
SG::HandleKeyArray< SG::UpdateHandle< TgcCoinDataCollection_Cache >, SG::UpdateHandleKey< TgcCoinDataCollection_Cache >, Gaudi::DataHandle::Reader > TgcCoinUpdateHandles
An unit object of TGC ROD output.
SG::HandleKeyArray< SG::UpdateHandle< TgcPrepDataCollection_Cache >, SG::UpdateHandleKey< TgcPrepDataCollection_Cache >, Gaudi::DataHandle::Reader > TgcPrdUpdateHandles