19 declareInterface<IDataRetriever>(
this);
31 return StatusCode::SUCCESS;
45 for (containerIt=rpcContainer->begin(); containerIt!=rpcContainer->end(); ++containerIt) {
46 ndata += (*containerIt)->size();
53 DataVect lengthVec; lengthVec.reserve(ndata);
54 DataVect widthVec; widthVec.reserve(ndata);
55 DataVect idVec; idVec.reserve(ndata);
56 DataVect identifierVec; identifierVec.reserve(ndata);
57 DataVect barcode; barcode.reserve(ndata);
59 for (containerIt=rpcContainer->begin(); containerIt!=rpcContainer->end(); ++containerIt) {
63 for (collectionIt=rpcCollection->
begin(); collectionIt!=rpcCollection->
end(); ++collectionIt) {
75 int measuresPhi =
m_idHelperSvc->rpcIdHelper().measuresPhi(
id);
76 double stripLength = element->
StripLength(measuresPhi);
77 double stripWidth = element->
StripWidth(measuresPhi);
79 x.push_back(
DataType(globalPos.x()/CLHEP::cm));
80 y.push_back(
DataType(globalPos.y()/CLHEP::cm));
81 z.push_back(
DataType(globalPos.z()/CLHEP::cm));
82 lengthVec.push_back(
DataType(stripLength/CLHEP::cm));
83 widthVec.push_back(
DataType(stripWidth/CLHEP::cm));
85 idVec.push_back(
DataType(
id.get_compact() ));
94 myDataMap[
"length"] = lengthVec;
95 myDataMap[
"width"] = widthVec;
96 myDataMap[
"identifier"] = identifierVec;
97 myDataMap[
"id"] = idVec;
98 myDataMap[
"barcode"] = barcode;
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_WARNING(x)
char data[hepevt_bytes_allocation_ATLAS]
bool msgLvl(const MSG::Level lvl) const
DataModel_detail::const_iterator< DataVector > const_iterator
const_iterator end() const noexcept
const_iterator begin() const noexcept
const std::string m_typeName
The data type that is generated by this retriever.
RpcPrepDataRetriever(const std::string &type, const std::string &name, const IInterface *parent)
Standard Constructor.
virtual StatusCode retrieve(ToolHandle< IFormatTool > &FormatTool)
Retrieve all the data.
StatusCode initialize()
Default AthAlgTool methods.
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
virtual std::string dataTypeName() const
Return the name of the data type.
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_sgKey
The storegate key for the RPC collection.
An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station con...
double StripLength(bool measphi) const
returns the strip length for the phi or eta plane
Amg::Vector3D stripPos(const Identifier &id) const
double StripWidth(bool measphi) const
returns the strip width for the phi or eta plane
Class to represent RPC measurements.
Eigen::Matrix< double, 3, 1 > Vector3D
std::string getFullID(Identifier id, const MdtIdHelper &mdtHelper)
Get the identifier string for an MDT ID with the sequence: Detector/StationName/StationEta/StationPhi...
This header is shared inbetween the C-style server thread and the C++ Athena ServerSvc.
std::map< std::string, DataVect > DataMap
std::vector< DataType > DataVect
Defines a map with a key and a vector of DataType objects e.g.
MuonPrepDataCollection< RpcPrepData > RpcPrepDataCollection