|
ATLAS Offline Software
|
Go to the documentation of this file.
30 "True: Use separate correction COOL channel, False: Correction + data in the same channel");
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;
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;
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;
172 if(
s==0)
return false;
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 <<
"." );
191 unsigned s = rvalues.size();
196 if(
s==0)
return false;
197 for (
unsigned i=0;
i<
s;++
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 <<
"." );
def retrieve(aClass, aKey=None)
std::vector< unsigned > m_channelsToBePatchedMG
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Persistent data for LArRamp Copied from LAr.
StatusCode insertCorrection(HWIdentifier id, const T &cond, unsigned int gain, bool corrChannel=true)
access to corrections -
std::string m_containerKey
value_type get_compact() const
Get the compact id.
bool ZeroTheIntercept(HWIdentifier chid, unsigned gain)
std::vector< unsigned > m_channelsToBePatchedLG
StatusCode initialize()
Initialize method.
bool PutTheValues(HWIdentifier chid, std::vector< double > &rvalues, unsigned gain)
~LArRampAdHocPatchingAlg()
Destructor.
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
std::vector< std::vector< double > > m_valuesToBeAppliedHG
std::vector< unsigned > m_patchesToBeAppliedLG
std::string m_newContainerKey
std::vector< unsigned > m_patchesToBeAppliedMG
GroupingType
Grouping type.
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
LArRampAdHocPatchingAlg(const std::string &name, ISvcLocator *pSvcLocator)
regular Algorithm constructor
std::vector< std::vector< double > > m_valuesToBeAppliedMG
const LArRampComplete * m_contIn
virtual StatusCode initialize()
Initialization done after creation or read back - derived classes may augment the functionality.
Algorithm implementing ad-hoc Ramp patches.
StatusCode stop()
Finalize method.
std::vector< unsigned > m_patchesToBeAppliedHG