|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
   32 #include <QStringList> 
   38 #include <Inventor/nodes/SoSeparator.h> 
   39 #include <Inventor/nodes/SoSwitch.h> 
   40 #include <Inventor/nodes/SoMaterial.h> 
   41 #include <Inventor/nodes/SoTexture2.h> 
   50     #include "GeoModelKernel/Units.h" 
   51     #define SYSTEM_OF_UNITS GeoModelKernelUnits // so we will get, e.g., 'GeoModelKernelUnits::cm' 
   53     #include "GaudiKernel/SystemOfUnits.h" 
   54     #define SYSTEM_OF_UNITS Gaudi::Units // so we will get, e.g., 'Gaudi::Units::cm' 
   55 #endif // BUILDVP1LIGHT 
   59 #if defined BUILDVP1LIGHT 
   70 #endif // BUILDVP1LIGHT 
   97     QStringList caloClusterList;
 
   98   #endif // BUILDVP1LIGHT 
  149   QString safetext(
text());
 
  150   safetext.replace(
' ',
'_');
 
  151   safetext.replace(
'[',
'_');
 
  152   safetext.replace(
']',
'_');
 
  153   safetext.replace(
'/',
'_');
 
  154   safetext.replace(
'.',
'_');
 
  155   safetext.replace(
',',
'_');
 
  156   safetext.replace(
'<',
'_');
 
  157   safetext.replace(
'>',
'_');
 
  158   safetext.replace(
'&',
'_');
 
  256 #include <Inventor/nodes/SoMaterial.h> 
  294           message(
"ERROR Handle of wrong type!");
 
  332   connect(controller,SIGNAL(cutAllowedPhiChanged(
const QList<VP1Interval>&)),
this,SLOT(
setCutAllowedPhi(
const QList<VP1Interval>&)));
 
  338   connect(controller,SIGNAL(scaleChanged(
const QPair<bool,double>&)),
this,SLOT(
setScale(
const QPair<bool,double>&)));
 
  376     messageVerbose(
"CaloCluster - No collSettingsButton set! Can't call init(), so crash is imminent...");
 
  377     throw std::runtime_error(
"CaloCluster - No collSettingsButton set!");
 
  421           message(
"ERROR Handle of wrong type!");
 
  438   #if defined BUILDVP1LIGHT 
  450       QString errMsg = 
"Failed to retrieve " + 
name();
 
  451       message(
"Error: Could not retrieve collection with key="+
name());
 
  456       message(
"Error: Could not retrieve collection with key="+
name());
 
  459   #endif // BUILDVP1LIGHT 
  465   if( ! coll->hasStore() ) {
 
  466     message(
"No auxiliary store got associated to the CaloCluster container with key: " +
name());
 
  479       messageDebug(
"WARNING: Ignoring null CaloCluster pointer.");
 
  500       message(
"CaloCluster::cut() --- to be implemented......");
 
  504     double jEnergy = handle->energyForCuts();
 
  505     double jEnergySqr = jEnergy * jEnergy; 
 
  521       double phi = handle->phi();
 
  543     messageVerbose(
"Not a IParticleCollHandle_CaloCluster. Calling base method...");
 
  564     messageDebug(
"IParticleCollHandle_CaloCluster::highestVisibleClusterEnergy()");
 
  572     messageDebug(
"IParticleCollHandle_CaloCluster::Imp::calculateHighestVisibleClusterEnergy()");
 
  587             if ( e < cluster->energyForCuts() )
 
  590               message(
"ERROR Handle of wrong type!");
 
  614   messageDebug(
"IParticleCollHandle_CaloCluster::persistifiableState() - start...");
 
  640   messageDebug(
"IParticleCollHandle_CaloCluster::persistifiableState() - end.");
 
  650     messageDebug(
"Warning: Ignoring state with wrong version");
 
  663   if (extraWidgetState!=QByteArray())
 
  667   messageDebug(
"restoring material collection button...");
 
  670   messageDebug(
"reset all caches storing values for cuts...");
 
  678   str << 
"\""<<
name().toLatin1().data()<<
"\":{";
 
  682     if (handle->visible()) {
 
  684       str << 
"\"Clus "<<
num++<< 
"\":{";
 
  685       handle->dumpToJSON(
str);
 
  
def retrieve(aClass, aKey=None)
void setExtraWidgetsState(const QByteArray &)
static const double calo_start_r
Const iterator class for DataVector/DataList.
Scalar phi() const
phi method
SoMaterial * material() const
void serialise(const std::vector< const IRoiDescriptor * > &rois, roiserial_type &s)
serialise an entire vector of IRoiDescriptors
double energyToLength(const double &energy) const
virtual void init(VP1MaterialButtonBase *matBut=0)
void messageVerbose(const QString &) const
void setState(const QByteArray &)
Provide specific implementation.
void disableUnrestoredChecks()
IParticleCollHandle_CaloCluster(AODSysCommonData *, const QString &name, xAOD::Type::ObjectType type)
SoGenericBox * genericBox()
virtual void init(VP1MaterialButtonBase *button=0)
double last_highestEnergy
virtual void largeChangesBegin()
virtual ~IParticleCollHandle_CaloCluster()
const QList< VP1Interval > & getCutAllowedPhi()
void updateShape(IParticleCollHandle_CaloCluster *coll)
static QString str(const QString &s)
virtual void dumpToJSON(std::ofstream &) const
CaloClusterCollectionSettingsButton * collSettingsButton
void recheckHighestVisibleClusterEnergy()
void messageDebug(const QString &) const
void setCutAllowedPt(const VP1Interval &)
void setCutAllowedPhi(const QList< VP1Interval > &)
const VP1Interval & getCutAllowedEta()
CaloCluster_v1 CaloCluster
Define the latest version of the calorimeter cluster class.
double highestVisibleClusterEnergy() const
const AODSysCommonData * common() const
QStringList getKeys() const
bool considerTransverseEnergies
QList< AODHandleBase * > getHandlesList() const
std::string toString(const Translation3D &translation, int precision=4)
GeoPrimitvesToStringConverter.
void highestVisibleClusterEnergyChanged()
QList< VP1Interval > allowedPhi
void visibilityChanged(bool)
void resetCachedValuesCuts()
bool contains(const std::string &s, const std::string ®x)
does a string contain the substring
void recheckCutStatusOfAllNotVisibleHandles()
QByteArray extraWidgetsState() const
void recheckCutStatusOfAllHandles()
const QString & name() const
virtual bool cut(AODHandleBase *)
virtual bool cut(AODHandleBase *)
void restore(QCheckBox *sb)
void setCutAllowedEta(const VP1Interval &)
VP1Interval allowedEnergies
static QStringList availableCollections(IVP1System *)
IParticleCollHandle_CaloCluster * theclass
void setupSettingsFromController(const AODSystemController *)
IVP1System * systemBase() const
virtual bool has3DObjects()
Returns true if the 3D objects have been created.
void showParametersChanged(bool)
double energyForCuts() const
static void messageVerbose(const QString &)
bool showOutlines() const
virtual void largeChangesEnd()
Interface for non-const operations on an auxiliary store.
virtual void handleIterationBegin()
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
bool isConsiderTransverseEnergy() const
QByteArray persistifiableState() const
Provide specific implementation.
void collVisibilityChanged(bool)
static void messageDebug(const QString &)
virtual void setupSettingsFromControllerSpecific(const AODSystemController *)
For extensions specific to this collection.
const VP1Interval & getCutAllowedPt()
virtual AODHandleBase * getNextHandle()
void addHandle(AODHandleBase *)
void message(const QString &) const
double calculateHighestVisibleClusterEnergy()
void update3DObjectsOfAllHandles()
static const double calo_crack_eta
VP1ExtraSepLayerHelper * sephelper
QByteArray restoreByteArray()
Base class for collections holding AOD objects of iParticle type Handles pt etc cuts Local data:
void recheckCutStatusOfAllVisibleHandles()
QPair< bool, double > scale
QPair< bool, double > scale() const
void setShowVolumeOutLines(bool)
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
const CaloClusterCollectionSettingsButton & collSettingsButton() const
static const double calo_start_z