CMS 3D CMS Logo

Classes | Typedefs | Enumerations | Functions | Variables

pftools Namespace Reference

General option file parser. More...

Classes

class  CalibCompare
class  Calibratable
 Wraps essential single particle calibration data ready for export to a Root file. More...
class  CalibratableElement
 Small wrapper class for storing individual rechit and cluster information. More...
class  CalibrationResultWrapper
 A small class designed to hold the result of a calibration of a SingleParticleWrapper. More...
class  Calibrator
 Abstract base class for Particle Flow calibration algorithms. More...
class  CaloBox
class  CaloEllipse
class  CaloRing
class  CaloWindow
class  CandidateWrapper
 Small wrapper class to store information associated with PFCandidates. More...
class  Deposition
 This class holds an arbitrary energy deposition, specified in terms of angular position, energy, depth (optional) and detector element type. More...
class  DetectorElement
 Represents an energy-measuring region of our detector. More...
class  Erl_mlp
class  Exercises3
class  IO
class  LinearCalibrator
class  ParticleDeposit
class  ParticleFiltrationDecision
 Articulates the decision of the ParticleFilter in RecoParticleFlow/PFAnalyses. More...
class  PFClusterCalibration
class  PFToolsException
 General purpose exception class for use by classes in the pftools namespace. More...
class  SpaceManager
 A tool to associate SpaceVoxels with Calibrator objects. More...
class  SpaceVoxel
 A multi-dimensional volume element to subdivide the detector into different calibration regions. More...
class  TestCaloWindow
class  TreeUtility
 Utility class to create particles and detector elements from a Root file. More...
class  Utils

Typedefs

typedef boost::shared_ptr
< Calibratable
CalibratablePtr
typedef boost::shared_ptr
< Calibrator
CalibratorPtr
typedef boost::shared_ptr
< Deposition
DepositionPtr
typedef boost::shared_ptr
< DetectorElement
DetectorElementPtr
typedef boost::shared_ptr
< ParticleDeposit
ParticleDepositPtr
typedef
ParticleFiltrationDecisionRefVector::iterator 
particleFiltrationDecision_iterator
typedef edm::RefToBase
< pftools::ParticleFiltrationDecision
ParticleFiltrationDecisionBaseRef
typedef std::vector
< pftools::ParticleFiltrationDecision
ParticleFiltrationDecisionCollection
typedef edm::Ref
< ParticleFiltrationDecisionCollection
ParticleFiltrationDecisionRef
typedef edm::RefProd
< ParticleFiltrationDecisionCollection
ParticleFiltrationDecisionRefProd
typedef edm::RefVector
< ParticleFiltrationDecisionCollection
ParticleFiltrationDecisionRefVector
typedef std::pair< double, double > Point
typedef PointVector::const_iterator PointCit
typedef PointVector::iterator PointIt
typedef std::vector< PointPointVector
typedef boost::shared_ptr
< SpaceManager
SpaceManagerPtr
typedef boost::shared_ptr
< SpaceVoxel
SpaceVoxelPtr

Enumerations

enum  CalibrationProvenance {
  UNCALIBRATED = 0, LINEAR = 1, BAYESIAN = 2, LINEARECAL = 3,
  LINEARHCAL = 4, LINEARCORR = -1, NONE = 99
}
enum  CalibrationTarget {
  UNDEFINED = 0, CLUSTER = 1, RECHIT = 2, PFCANDIDATE = 3,
  PFELEMENT = 4, CORR_CLUSTER = -1, PRE_RECHIT = 6, PRE_PFCANDIDATE = 7
}
enum  DetectorElementType {
  ECAL = 0, HCAL = 1, PRESHOWER = 2, OFFSET = 3,
  ECAL2 = 4, HCAL2 = 5
}
enum  Region { NOREGION = 0, BARREL_POS = 1, TRANSITION_POS = 2, ENDCAP_POS = 3 }

Functions

std::ostream & operator<< (std::ostream &s, const Calibratable &calib_)
std::ostream & operator<< (std::ostream &s, const pftools::SpaceVoxel &sv)
std::ostream & operator<< (std::ostream &s, const DetectorElement &de)
std::ostream & operator<< (std::ostream &s, const CaloEllipse &em)
std::ostream & operator<< (std::ostream &stream, const CaloBox &cb)
std::ostream & operator<< (std::ostream &s, const CalibratableElement &ce_)

Variables

const char *const DetElNames [] = { "ECAL", "HCAL", "PRESHOWER", "OFFSET", "ECAL2", "HCAL2" }
const char *const RegionNames [] = { "NOREGION", "BARREL_POS", "TRANSITION_POS", "ENDCAP_POS" }

Detailed Description

General option file parser.

Utility functions.

  IO io("myfile.opt");
  fECALthresh = 0.05;
  io.GetOpt("ECAL", "threshold", fECALthresh);
Author:
Colin Bernet
Date:
January 2002
Author:
Colin Bernet
Date:
January 2006

Typedef Documentation

typedef boost::shared_ptr<Calibratable> pftools::CalibratablePtr

Definition at line 26 of file TreeUtility.h.

typedef boost::shared_ptr<Calibrator> pftools::CalibratorPtr

Definition at line 65 of file Calibrator.h.

typedef boost::shared_ptr<Deposition> pftools::DepositionPtr

Definition at line 77 of file Deposition.h.

typedef boost::shared_ptr<DetectorElement> pftools::DetectorElementPtr

Definition at line 83 of file DetectorElement.h.

typedef boost::shared_ptr<ParticleDeposit> pftools::ParticleDepositPtr

Definition at line 103 of file ParticleDeposit.h.

Definition at line 55 of file ParticleFiltrationDecision.h.

Definition at line 57 of file ParticleFiltrationDecision.h.

Definition at line 46 of file ParticleFiltrationDecision.h.

Definition at line 49 of file ParticleFiltrationDecision.h.

Definition at line 51 of file ParticleFiltrationDecision.h.

Definition at line 53 of file ParticleFiltrationDecision.h.

typedef std::pair<double, double> pftools::Point

Definition at line 18 of file CaloEllipse.h.

typedef PointVector::const_iterator pftools::PointCit

Definition at line 20 of file CaloEllipse.h.

typedef PointVector::iterator pftools::PointIt

Definition at line 21 of file CaloEllipse.h.

typedef std::vector<Point> pftools::PointVector

Definition at line 19 of file CaloEllipse.h.

typedef boost::shared_ptr<SpaceManager> pftools::SpaceManagerPtr

Definition at line 126 of file SpaceManager.h.

typedef boost::shared_ptr<SpaceVoxel> pftools::SpaceVoxelPtr

Definition at line 89 of file SpaceVoxel.h.


Enumeration Type Documentation

Enumerator:
UNCALIBRATED 
LINEAR 
BAYESIAN 
LINEARECAL 
LINEARHCAL 
LINEARCORR 
NONE 

Definition at line 12 of file CalibrationProvenance.h.

                           {
        UNCALIBRATED = 0, LINEAR = 1, BAYESIAN = 2, LINEARECAL = 3, LINEARHCAL=4, LINEARCORR = -1, NONE = 99
};
Enumerator:
UNDEFINED 
CLUSTER 
RECHIT 
PFCANDIDATE 
PFELEMENT 
CORR_CLUSTER 
PRE_RECHIT 
PRE_PFCANDIDATE 

Definition at line 16 of file CalibrationProvenance.h.

                       {
        UNDEFINED = 0, CLUSTER = 1, RECHIT = 2, PFCANDIDATE = 3, PFELEMENT = 4, CORR_CLUSTER = -1,
PRE_RECHIT = 6, PRE_PFCANDIDATE = 7
};
Enumerator:
ECAL 
HCAL 
PRESHOWER 
OFFSET 
ECAL2 
HCAL2 

Definition at line 19 of file DetectorElementType.h.

                         {
        ECAL = 0, HCAL = 1, PRESHOWER = 2, OFFSET = 3, ECAL2 = 4, HCAL2 = 5
};
Enumerator:
NOREGION 
BARREL_POS 
TRANSITION_POS 
ENDCAP_POS 

Definition at line 7 of file Region.h.

            {
        NOREGION = 0, BARREL_POS = 1, TRANSITION_POS = 2, ENDCAP_POS = 3
};

Function Documentation

std::ostream & pftools::operator<< ( std::ostream &  s,
const Calibratable calib_ 
)

Definition at line 6 of file Calibratable.cc.

References trackerHits::c, pftools::Calibratable::cand_energyEcal_, pftools::Calibratable::cand_energyEvent_, pftools::Calibratable::cand_energyHcal_, pftools::Calibratable::cand_energyNeutralEM_, pftools::Calibratable::cand_energyNeutralHad_, pftools::Calibratable::cand_eta_, pftools::Calibratable::cand_phi_, pftools::Calibratable::cands_, pftools::Calibratable::cands_num_, pftools::Calibratable::cluster_energyEcal_, pftools::Calibratable::cluster_energyEvent_, pftools::Calibratable::cluster_energyHcal_, pftools::CandidateWrapper::energy_, pftools::CandidateWrapper::energyEcal_, pftools::CandidateWrapper::energyHcal_, pftools::CandidateWrapper::eta_, pftools::CandidateWrapper::phi_, pftools::Calibratable::rechits_energyEcal_, pftools::Calibratable::rechits_energyEvent_, pftools::Calibratable::rechits_energyHcal_, asciidump::s, pftools::Calibratable::sim_energyEvent_, pftools::Calibratable::sim_etaEcal_, pftools::Calibratable::sim_phiEcal_, pftools::Calibratable::tb_energyEcal_, pftools::Calibratable::tb_energyEvent_, pftools::Calibratable::tb_energyHcal_, pftools::Calibratable::tb_eta_, pftools::Calibratable::tb_phi_, and pftools::CandidateWrapper::type_.

                                                                         {
        s << "Calibratable summary:\n\tsim:\t\t(" << calib_.sim_energyEvent_
                        << "),\t[" << calib_.sim_etaEcal_ << ", " << calib_.sim_phiEcal_
                        << "]\n";
        s << "\ttestbeam:\t(" << calib_.tb_energyEvent_ << ", "
                        << calib_.tb_energyEcal_ << ", " << calib_.tb_energyHcal_ << "), ["
                        << calib_.tb_eta_ << ", " << calib_.tb_phi_ << "]\n";
        s << "\trechits:\t(" << calib_.rechits_energyEvent_ << ", "
                        << calib_.rechits_energyEcal_ << ", " << calib_.rechits_energyHcal_
                        << ")\n";
        s << "\tcluster:\t(" << calib_.cluster_energyEvent_ << ", "
                        << calib_.cluster_energyEcal_ << ", " << calib_.cluster_energyHcal_
                        << ")\n";
        s << "\tcands:\t\t(" << calib_.cand_energyEvent_ << ", "
                        << calib_.cand_energyEcal_ << ", " << calib_.cand_energyHcal_
                        << "), ";
        s << "\t[" << calib_.cand_eta_ << ", " << calib_.cand_phi_ << "], "
                        << calib_.cands_num_ << " of them\n";
        for (std::vector<CandidateWrapper>::const_iterator c =
                        calib_.cands_.begin(); c != calib_.cands_.end(); ++c) {
                const CandidateWrapper& cw = *c;
                s << "\t\t\t\tType: " << cw.type_ << ", (" << cw.energy_ << ", "
                                << cw.energyEcal_ << ", " << cw.energyHcal_ << ") at [ "
                                << cw.eta_ << ", " << cw.phi_ << "]\n";
        }
        s << "\t\tNeutral EM energy: " << calib_.cand_energyNeutralEM_ << "\n";
        s << "\t\tNeutral Had energy: " << calib_.cand_energyNeutralHad_ << "\n";

        return s;
}
std::ostream & pftools::operator<< ( std::ostream &  s,
const pftools::SpaceVoxel sv 
)

Definition at line 113 of file SpaceVoxel.cc.

References pftools::SpaceVoxel::print(), and asciidump::s.

                                                                          {
        sv.print(s);
        return s;
}
std::ostream & pftools::operator<< ( std::ostream &  s,
const DetectorElement de 
)

Definition at line 38 of file DetectorElement.cc.

References DetElNames, pftools::DetectorElement::getCalib(), pftools::DetectorElement::getType(), and asciidump::s.

                                                                        {
        s << "DetectorElement: " << pftools::DetElNames[de.getType()] << ", \tcalib: " << de.getCalib();

        return s;
}
std::ostream & pftools::operator<< ( std::ostream &  s,
const CaloEllipse em 
)

Definition at line 135 of file CaloEllipse.cc.

References pftools::CaloEllipse::getEccentricity(), pftools::CaloEllipse::getMajorMinorAxes(), pftools::CaloEllipse::getPosition(), pftools::CaloEllipse::getTheta(), asciidump::s, and toString().

                                                                           {
        s << "CaloEllipse at position = " << toString(em.getPosition()) << ", theta = "
                        << em.getTheta() << ", major/minor axes = " << toString(
                        em.getMajorMinorAxes()) << ", eccentricity = " << em.getEccentricity() << "\n";

        return s;
}
std::ostream & pftools::operator<< ( std::ostream &  stream,
const CaloBox cb 
)

Definition at line 139 of file CaloBox.cc.

References pftools::CaloBox::centerEta_, pftools::CaloBox::centerPhi_, and pftools::CaloBox::dump().

                                                                     {
        stream << "CaloBox at " << cb.centerEta_ << ", " << cb.centerPhi_ << ":\n";
        cb.dump(stream, 1.0, "\n");
        return stream;
}
std::ostream & pftools::operator<< ( std::ostream &  s,
const CalibratableElement ce_ 
)

Definition at line 37 of file Calibratable.cc.

References pftools::CalibratableElement::energy_, pftools::CalibratableElement::eta_, pftools::CalibratableElement::phi_, and asciidump::s.

                                               {
        s << "CalibratableElement: (energy, eta, phi) = (" << ce.energy_ << ", "
                        << ce.eta_ << ", " << ce.phi_ << ")";

        return s;
}

Variable Documentation

const char* const pftools::DetElNames[] = { "ECAL", "HCAL", "PRESHOWER", "OFFSET", "ECAL2", "HCAL2" }
const char* const pftools::RegionNames[] = { "NOREGION", "BARREL_POS", "TRANSITION_POS", "ENDCAP_POS" }