|
ATLAS Offline Software
|
#include <LArOFPhasePicker.h>
|
| LArOFPhasePicker (const std::string &name, ISvcLocator *pSvcLocator) |
|
| ~LArOFPhasePicker () |
|
StatusCode | initialize () |
|
StatusCode | execute () |
|
StatusCode | stop () |
|
StatusCode | finalize () |
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
Definition at line 26 of file LArOFPhasePicker.h.
◆ StoreGateSvc_t
◆ LArOFPhasePicker()
LArOFPhasePicker::LArOFPhasePicker |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
◆ ~LArOFPhasePicker()
LArOFPhasePicker::~LArOFPhasePicker |
( |
| ) |
|
|
default |
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
253 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
229 return PBASE::declareProperty(
name,hndl,
doc);
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
338 return PBASE::declareProperty(
name, property,
doc);
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode LArOFPhasePicker::execute |
( |
| ) |
|
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ extraOutputDeps()
const DataObjIDColl & AthAlgorithm::extraOutputDeps |
( |
| ) |
const |
|
overridevirtualinherited |
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 50 of file AthAlgorithm.cxx.
57 return Algorithm::extraOutputDeps();
◆ finalize()
StatusCode LArOFPhasePicker::finalize |
( |
| ) |
|
|
inline |
◆ initialize()
StatusCode LArOFPhasePicker::initialize |
( |
| ) |
|
Definition at line 36 of file LArOFPhasePicker.cxx.
54 ATH_MSG_ERROR(
"Only \"Unknown\", \"SingleGroup\", \"SubDetector\", \"FeedThrough\", \"ExtendedFeedThrough\", \"ExtendedSubDetector\" and \"SuperCells\" are allowed" ) ;
55 return StatusCode::FAILURE ;
63 msg(MSG::ERROR) <<
"Could not get LArOnlineID helper !" <<
endmsg;
64 return StatusCode::FAILURE;
74 msg(MSG::ERROR) <<
"Could not get LArOnlineID helper !" <<
endmsg;
75 return StatusCode::FAILURE;
85 return StatusCode::SUCCESS;
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ pickOFC()
StatusCode LArOFPhasePicker::pickOFC |
( |
| ) |
|
|
private |
Definition at line 124 of file LArOFPhasePicker.cxx.
128 if (
sc.isFailure()) {
134 std::unique_ptr<LArOFCComplete> larOFCComplete=std::make_unique<LArOFCComplete>();
137 if (
sc.isFailure() ) {
138 ATH_MSG_ERROR(
"Could not initialize LArOFCComplete data object - exit!" ) ;
158 for(;
it!=it_e;++
it){
161 const int nPhases=
ofc.OFC_aSize();
180 if ( vOFC_a.size() == 0 || vOFC_b.size() == 0 ) {
183 }
else if ( vOFC_a.size() != vOFC_b.size() ) {
184 ATH_MSG_WARNING(
"OFC a (" << vOFC_a.size() <<
") and b (" << vOFC_b.size() <<
") are not the same size for channel "
188 std::vector<std::vector<float> > OFC_a;
190 std::vector<std::vector<float> > OFC_b;
195 std::bind(std::multiplies<float>(), std::placeholders::_1, ofW->
getW(
id)));
199 std::bind(std::multiplies<float>(), std::placeholders::_1, 1.5));
202 larOFCComplete->
set(
id,(
int)
gain,OFC_a,OFC_b,timeOffset,25.);
210 if (
sc.isFailure()) {
215 if (
sc.isFailure()) {
219 return StatusCode::SUCCESS;
◆ pickShape()
StatusCode LArOFPhasePicker::pickShape |
( |
| ) |
|
|
private |
Definition at line 224 of file LArOFPhasePicker.cxx.
230 if (
sc.isFailure()) {
235 std::unique_ptr<LArShapeComplete> larShapeComplete=std::make_unique<LArShapeComplete>();
238 if (
sc.isFailure() ) {
239 ATH_MSG_ERROR(
"Could not initialize LArShapeComplete data object - exit!" ) ;
248 for(;
it!=it_e;++
it){
252 const int nPhases=shape.shapeSize();
268 const float timeOffset=shape.timeOffset();
270 if ( vShape.size() == 0 || vShapeDer.size() == 0 ) {
272 }
else if ( vShape.size() != vShapeDer.size() ) {
273 ATH_MSG_WARNING(
"Shape a (" << vShape.size() <<
") and b (" << vShapeDer.size() <<
") are not the same size for channel"
277 std::vector<std::vector<float> > shapeDer;
278 std::vector<std::vector<float> > shapeAmpl;
279 shapeAmpl.push_back(vShape.
asVector());
280 shapeDer.push_back(vShapeDer.
asVector());
281 larShapeComplete->
set(
id,(
int)
gain,shapeAmpl,shapeDer,timeOffset,25.);
289 if (
sc.isFailure()) {
294 if (
sc.isFailure()) {
295 ATH_MSG_ERROR(
"Failed to sym-link LArShapeComplete object" );
299 return StatusCode::SUCCESS;
◆ renounce()
◆ renounceArray()
◆ stop()
StatusCode LArOFPhasePicker::stop |
( |
| ) |
|
◆ sysInitialize()
StatusCode AthAlgorithm::sysInitialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_defaultPhase
int LArOFPhasePicker::m_defaultPhase |
|
private |
◆ m_detStore
◆ m_doOFC
bool LArOFPhasePicker::m_doOFC |
|
private |
◆ m_doShape
bool LArOFPhasePicker::m_doShape |
|
private |
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_groupingName
std::string LArOFPhasePicker::m_groupingName |
|
private |
◆ m_groupingType
int LArOFPhasePicker::m_groupingType |
|
private |
◆ m_inputPhase
◆ m_isSC
bool LArOFPhasePicker::m_isSC |
|
private |
◆ m_keyOFC
std::string LArOFPhasePicker::m_keyOFC |
|
private |
◆ m_keyOFC_new
std::string LArOFPhasePicker::m_keyOFC_new |
|
private |
◆ m_keyPhase
std::string LArOFPhasePicker::m_keyPhase |
|
private |
◆ m_keyShape
std::string LArOFPhasePicker::m_keyShape |
|
private |
◆ m_keyShape_new
std::string LArOFPhasePicker::m_keyShape_new |
|
private |
◆ m_ofcWKey
◆ m_onlineID
◆ m_timeOffsetCorr
int LArOFPhasePicker::m_timeOffsetCorr |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
void set(const HWIdentifier &CellID, int gain, const std::vector< std::vector< float > > &vOFC_a, const std::vector< std::vector< float > > &vOFC_b, float timeOffset=0, float timeBinWidth=25./24.)
virtual const int & bin(const HWIdentifier &chid, const int &gain) const
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Declaration of const iterator.
std::string m_keyShape_new
const LArOnlineID_Base * m_onlineID
This class implements the ILArShape interface.
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
bool empty() const
Test if the key is blank.
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
const LArOFCBinComplete * m_inputPhase
virtual StatusCode sysInitialize() override
Override sysInitialize.
GroupingType
Grouping type.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
ConstConditionsMapIterator end(unsigned int gain) const
end of all channels for this gain
virtual bool isHECchannel(const HWIdentifier id) const =0
::StatusCode StatusCode
StatusCode definition for legacy code.
Default, invalid implementation of ClassID_traits.
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
std::string m_groupingName
Helper for the Liquid Argon Calorimeter cell identifiers.
void set(const HWIdentifier &CellID, int gain, const std::vector< std::vector< float > > &vShape, const std::vector< std::vector< float > > &vShapeDer, float timeOffset=0, float timeBinWidth=25./24.)
StatusCode initialize(bool used=true)
DataObjIDColl m_extendedExtraObjects
SG::ReadCondHandleKey< LArOFCweightSC > m_ofcWKey
virtual StatusCode initialize()
Initialization done after creation or read back - derived classes may augment the functionality.
#define ATH_MSG_WARNING(x)
Subset::ConstReference ConstReference
const float & getW(const HWIdentifier &chid) const
ConstConditionsMapIterator begin(unsigned int gain) const
get iterator for all channels for a gain
std::vector< value_type > asVector() const
Convert back to a vector.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
AthAlgorithm()
Default constructor:
std::string channel_name(const HWIdentifier id) const
Return a string corresponding to a feedthrough name given an identifier.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
This class implements the ILArOFC interface.
Proxy for accessing a range of float values like a vector.