SLAC PEP-II
BABAR
SLAC<->RAL
Babar logo
HEPIC E,S & H Databases PDG HEP preprints
Organization Detector Computing Physics Documentation
Personnel Glossary Sitemap Search Hypernews
Unwrap page!
Comp. Search
Who's who?
Meetings
FAQ Homepage
Archive
Environment
Administration
New User Info.
Web Info/Tools
Monitoring
Training
Tools & Utils
Programming
C++ Standard
SRT, AFS, CVS
QA and QC
Remedy
Histogramming
Operations
PromptReco
Simulation Production
Online SW
Dataflow
Detector Control
Evt Processing
Run Control
Calibration
Databases
Offline
Workbook
Coding Standards
Simulation
Reconstruction
Prompt Reco.
BaBar Grid
Data Distribution
Beta & BetaTools
Kanga & Root
Analysis Tools
RooFit Toolkit
Data Management
Data Quality
Event display
Event Browser
Code releases
Databases
Check this page for HTML 4.01 Transitional compliance with the
W3C Validator
(More checks...)
#include "DchPidTrkDataK.hh"

DchPidTrkDataK


class description - source file - inheritance tree (.pdf)

class DchPidTrkDataK : public DchPidInfoI

Inheritance Chart:
TObject
KanPersistable
KanPersistentRefOwner
<-
KanObj
KanClassI
<-
DchPidInfoI
<-
DchPidTrkDataK
    private:
DchPidTrkDataK(const DchPidTrkDataK&) void buildEmbedded() const void loadFromEmbedded() DchPidTrkDataK& operator=(const DchPidTrkDataK&) protected:
virtual DchPidInfo* buildTransient(KanEventReader& eR) virtual void loadFrom(const DchPidInfo*, KanEventWriter&) virtual void resetHook(Dna::Scope scope = Dna::Event) public:
DchPidTrkDataK() virtual ~DchPidTrkDataK() virtual UChar_t algorithmId() const virtual Double_t dedx(PdtPid::PidType = PdtPid::pion) const virtual Double_t dedxErr(PdtPid::PidType = PdtPid::pion) const virtual Double_t momentum(PdtPid::PidType = PdtPid::pion) const virtual UChar_t nHypos() const virtual UInt_t nSamples(PdtPid::PidType = PdtPid::pion) const virtual void setTrkRecoTrkI(const TrkRecoTrkI* trk) virtual const TrkRecoTrkI* trkRecoTrkI() const

Data Members

    private:
Bool_t _built ! True if the transient caches have been built DchPidTrkData _trkdata ! set transiently from the following data members Char_t _nhypos # hypos stored for this object (always 1) Char_t _alg algorithm key Char_t _algoId 'strategy' DchPidHypoData _hypodata ! set transiently from the following data members Char_t _hypo which fit hypo Char_t _samples the number of samples UShort_t _Dedx packed De/dx value UShort_t _Err packed Error UShort_t _Momentum packed entrance Momentum const TrkRecoTrkI* _trk ! provided from outside

Class Description

      This is the persistent class for DchPidInfo objects.

      The DchPidInfoI interface requires the following access functions:

        UChar_t nHypos() const
        UChar_t algorithmId() const
        Double_t dedx(PdtPid::PidType=PdtPid::pion) const
        Double_t dedxErr(PdtPid::PidType=PdtPid::pion) const
        Double_t momentum(PdtPid::PidType=PdtPid::pion) const
        UInt_t nSamples(PdtPid::PidType=PdtPid::pion) const

      Additionally, this interface requires two functions which are used in
      transient-persistent-transient conversion:

        void setTrkRecoTrkI(const TrkRecoTrkI*);  // Cache the associated track
        const TrkRecoTrkI*  trkRecoTrkI() const;  // Return the associated track

      These functions are called when rebuilding the PidSummary objects.

      Persistent Location:
         Aod::"Pid_DchPids"

      Persistent Size: 11 bytes uncompressed

      The Packing looks like this:

         Char_t _nhypos;   // # hypos stored for this object (always 1)
         Char_t _alg;      // algorithm key
         Char_t _algoId;   // 'strategy'

         Char_t _hypo;          // which fit hypo  (uses Pdt::Pid enum)
         Char_t  _samples;      // the number of samples
         UShort_t _Dedx;        // De/Dx value packed exponentially (16:5) from 0.- 15000.
         UShort_t _Err;         // De/Dx error packed exponentially (16:5) form 0.- 2000.
         UShort_t _Momentum;    // Dch entrance Momentum packed flat from 0. - 10.

     The packing is handled by DchPid/DchPidTrkData.hh(cc) and DchPid/DchPidHypoData.hh(cc)


DchPidTrkDataK() : _built(kFALSE), _nhypos(0),_alg(0),_algoId(0), _hypo(0),_samples(0),_Dedx(0),_Err(0), _Momentum(0), _trk(0)

~DchPidTrkDataK()

UChar_t algorithmId() const
 return the Key to the algorithm
 I suspect that there is only one algorithm and that this is way
 over-designed.

Double_t dedx(PdtPid::PidType) const
 return the de/dx value.
 Note that the all PID hypothesis have the same de/dx value.

Double_t dedxErr(PdtPid::PidType) const
 return the error on the de/dx value.
 Note that the all PID hypothesis have the same value.

Double_t momentum(PdtPid::PidType) const
 return the momentum @ the entrance of the DCH.
 Note that the all PID hypothesis have the same value.

UInt_t nSamples(PdtPid::PidType) const
 return the number of samples used to calculate the de/dx
 Note that the all PID hypothesis have the same value.

void loadFrom ( const DchPidInfo* dchpid, KanEventWriter& eW )
 fill the persistent data from a transient object

DchPidInfo* buildTransient( KanEventReader& eR )
 build a transient object from the persistent data

void resetHook(Dna::Scope scope)
 reset the transient cache

void loadFromEmbedded()
 fill the persistent data from the transient cache

buildEmbedded() const
 build a transient cache from the persistent data



Inline Functions


                   UChar_t nHypos() const
                      void setTrkRecoTrkI(const TrkRecoTrkI* trk)
        const TrkRecoTrkI* trkRecoTrkI() const
            DchPidTrkDataK DchPidTrkDataK(const DchPidTrkDataK&)
           DchPidTrkDataK& operator=(const DchPidTrkDataK&)


Author: L. Wilden
Last update: DchPidTrkDataK.cc,v 1.17 2004/08/06 06:23:53 bartoldu Exp $
Copyright 2002 TU Dresden


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.