|
ATLAS Offline Software
|
#include <LArRampAdHocPatchingAlg.h>
|
| LArRampAdHocPatchingAlg (const std::string &name, ISvcLocator *pSvcLocator) |
| regular Algorithm constructor More...
|
|
| ~LArRampAdHocPatchingAlg () |
| Destructor. More...
|
|
StatusCode | initialize () |
| Initialize method. More...
|
|
StatusCode | execute () |
| Empty Execute method. More...
|
|
StatusCode | stop () |
| Finalize method. More...
|
|
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 |
|
|
bool | ZeroTheIntercept (HWIdentifier chid, unsigned gain) |
|
bool | PutTheValues (HWIdentifier chid, std::vector< double > &rvalues, unsigned gain) |
|
StatusCode | ApplyAdHocPatches (std::vector< unsigned > &channelsToBePatched, std::vector< unsigned > &patchesTobeApplied, std::vector< std::vector< double > > &valuesToBeApplied, unsigned gain) |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
Definition at line 24 of file LArRampAdHocPatchingAlg.h.
◆ LArRampObj
◆ StoreGateSvc_t
◆ patchMethod
◆ LArRampAdHocPatchingAlg()
LArRampAdHocPatchingAlg::LArRampAdHocPatchingAlg |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
pSvcLocator |
|
) |
| |
regular Algorithm constructor
Definition at line 9 of file LArRampAdHocPatchingAlg.cxx.
30 "True: Use separate correction COOL channel, False: Correction + data in the same channel");
◆ ~LArRampAdHocPatchingAlg()
LArRampAdHocPatchingAlg::~LArRampAdHocPatchingAlg |
( |
| ) |
|
|
default |
◆ ApplyAdHocPatches()
StatusCode LArRampAdHocPatchingAlg::ApplyAdHocPatches |
( |
std::vector< unsigned > & |
channelsToBePatched, |
|
|
std::vector< unsigned > & |
patchesTobeApplied, |
|
|
std::vector< std::vector< double > > & |
valuesToBeApplied, |
|
|
unsigned |
gain |
|
) |
| |
|
private |
Definition at line 129 of file LArRampAdHocPatchingAlg.cxx.
131 if (channelsToBePatched.size() != patchesToBeApplied.size())
132 return StatusCode::FAILURE;
134 for (
unsigned ich=0;ich<channelsToBePatched.size();++ich ) {
137 const unsigned patchMethod = patchesToBeApplied[ich];
147 if ( valuesToBeApplied[putcount].
empty() )
return StatusCode::FAILURE;
161 return StatusCode::SUCCESS;
◆ 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 LArRampAdHocPatchingAlg::execute |
( |
| ) |
|
|
inline |
◆ 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 LArRampAdHocPatchingAlg::finalize |
( |
| ) |
|
|
inline |
◆ initialize()
StatusCode LArRampAdHocPatchingAlg::initialize |
( |
| ) |
|
Initialize method.
- Returns
- Gaudi status code. Analyzes and verifies the jobOption settings
Definition at line 38 of file LArRampAdHocPatchingAlg.cxx.
40 ATH_MSG_INFO (
"Initialing LArRampAdHocPatchingAlg..." );
47 return StatusCode::FAILURE;
52 return StatusCode::FAILURE;
60 return StatusCode::FAILURE;
64 ATH_MSG_ERROR (
"Wrong size of MEDIUM gain values vector !" );
65 return StatusCode::FAILURE;
73 return StatusCode::FAILURE;
78 return StatusCode::FAILURE;
84 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.
◆ PutTheValues()
bool LArRampAdHocPatchingAlg::PutTheValues |
( |
HWIdentifier |
chid, |
|
|
std::vector< double > & |
rvalues, |
|
|
unsigned |
gain |
|
) |
| |
|
private |
Definition at line 189 of file LArRampAdHocPatchingAlg.cxx.
191 unsigned s = rvalues.size();
194 patch.m_vRamp.resize(
s);
196 if(
s==0)
return false;
197 for (
unsigned i=0;
i<
s;++
i){
198 patch.m_vRamp[
i] = rvalues[
i];
202 catch(...) {
ATH_MSG_INFO (
"Skipping insert of corrections, maybe it's not about this partition");}
203 if (
sc.isFailure()) {
205 << MSG::hex << chid.
get_compact() << MSG::dec <<
", gain " <<
gain <<
"." );
208 ATH_MSG_INFO (
"Successfully put the values for channel 0x"
209 << MSG::hex << chid.
get_compact() << MSG::dec <<
", gain " <<
gain <<
"." );
◆ renounce()
◆ renounceArray()
◆ stop()
StatusCode LArRampAdHocPatchingAlg::stop |
( |
| ) |
|
Finalize method.
- Returns
- Gaudi status code. All the job is done here
Definition at line 88 of file LArRampAdHocPatchingAlg.cxx.
109 ATH_MSG_INFO (
"Going to apply ad-hoc patches to HIGH gain ramps." );
114 ATH_MSG_INFO (
"Going to apply ad-hoc patches to MEDIUM gain ramps." );
119 ATH_MSG_INFO (
"Going to apply ad-hoc patches to LOW gain ramps." );
124 return StatusCode::SUCCESS;
◆ 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()
◆ ZeroTheIntercept()
bool LArRampAdHocPatchingAlg::ZeroTheIntercept |
( |
HWIdentifier |
chid, |
|
|
unsigned |
gain |
|
) |
| |
|
private |
Definition at line 165 of file LArRampAdHocPatchingAlg.cxx.
170 patch.m_vRamp.resize(
s);
172 if(
s==0)
return false;
173 patch.m_vRamp[0] = 0.;
174 for (
unsigned i=1;
i<
s;++
i){
178 if (
sc.isFailure()) {
179 ATH_MSG_ERROR (
"Failed to zero the ramp intercept channel 0x"
180 << MSG::hex << chid.
get_compact() << MSG::dec <<
", gain " <<
gain <<
"." );
183 ATH_MSG_INFO (
"Successfully zeroed the ramp intercept channel 0x"
184 << MSG::hex << chid.
get_compact() << MSG::dec <<
", gain " <<
gain <<
"." );
◆ m_channelsToBePatchedHG
std::vector<unsigned> LArRampAdHocPatchingAlg::m_channelsToBePatchedHG |
|
private |
◆ m_channelsToBePatchedLG
std::vector<unsigned> LArRampAdHocPatchingAlg::m_channelsToBePatchedLG |
|
private |
◆ m_channelsToBePatchedMG
std::vector<unsigned> LArRampAdHocPatchingAlg::m_channelsToBePatchedMG |
|
private |
◆ m_containerKey
std::string LArRampAdHocPatchingAlg::m_containerKey |
|
private |
◆ m_contIn
◆ m_contOut
◆ m_detStore
◆ m_evtStore
◆ m_extendedExtraObjects
DataObjIDColl AthAlgorithm::m_extendedExtraObjects |
|
privateinherited |
◆ m_newContainerKey
std::string LArRampAdHocPatchingAlg::m_newContainerKey |
|
private |
◆ m_patchesToBeAppliedHG
std::vector<unsigned> LArRampAdHocPatchingAlg::m_patchesToBeAppliedHG |
|
private |
◆ m_patchesToBeAppliedLG
std::vector<unsigned> LArRampAdHocPatchingAlg::m_patchesToBeAppliedLG |
|
private |
◆ m_patchesToBeAppliedMG
std::vector<unsigned> LArRampAdHocPatchingAlg::m_patchesToBeAppliedMG |
|
private |
◆ m_useCorrChannel
bool LArRampAdHocPatchingAlg::m_useCorrChannel = false |
|
private |
◆ m_valuesToBeAppliedHG
std::vector<std::vector<double> > LArRampAdHocPatchingAlg::m_valuesToBeAppliedHG |
|
private |
◆ m_valuesToBeAppliedLG
std::vector<std::vector<double> > LArRampAdHocPatchingAlg::m_valuesToBeAppliedLG |
|
private |
◆ m_valuesToBeAppliedMG
std::vector<std::vector<double> > LArRampAdHocPatchingAlg::m_valuesToBeAppliedMG |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
LArRampComplete::LArCondObj LArRampObj
std::vector< unsigned > m_channelsToBePatchedMG
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
StatusCode insertCorrection(HWIdentifier id, const T &cond, unsigned int gain, bool corrChannel=true)
access to corrections -
std::string m_containerKey
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
value_type get_compact() const
Get the compact id.
bool ZeroTheIntercept(HWIdentifier chid, unsigned gain)
std::vector< unsigned > m_channelsToBePatchedLG
bool PutTheValues(HWIdentifier chid, std::vector< double > &rvalues, unsigned gain)
LArRampComplete * m_contOut
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
std::vector< float > m_vRamp
virtual void setOwner(IDataHandleHolder *o)=0
std::vector< std::vector< double > > m_valuesToBeAppliedHG
std::vector< unsigned > m_patchesToBeAppliedLG
std::string m_newContainerKey
virtual StatusCode sysInitialize() override
Override sysInitialize.
std::vector< unsigned > m_patchesToBeAppliedMG
GroupingType
Grouping type.
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
unsigned int groupingType() const
Type of grouping - defined in LArConditionContainerBase.h.
std::vector< std::vector< double > > m_valuesToBeAppliedLG
::StatusCode StatusCode
StatusCode definition for legacy code.
ConstReference get(const HWIdentifier id, unsigned int gain=0) const
get data with online identifier
StatusCode ApplyAdHocPatches(std::vector< unsigned > &channelsToBePatched, std::vector< unsigned > &patchesTobeApplied, std::vector< std::vector< double > > &valuesToBeApplied, unsigned gain)
std::vector< unsigned > m_channelsToBePatchedHG
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::vector< std::vector< double > > m_valuesToBeAppliedMG
const LArRampComplete * m_contIn
DataObjIDColl m_extendedExtraObjects
virtual StatusCode initialize()
Initialization done after creation or read back - derived classes may augment the functionality.
#define ATH_MSG_WARNING(x)
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
AthAlgorithm()
Default constructor:
std::vector< unsigned > m_patchesToBeAppliedHG
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>