CGEM BOSS 6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
DCIndexedLabeledDecays.h
Go to the documentation of this file.
1#ifndef DCHAIN_INDEXEDLABELEDDECAYS_H
2#define DCHAIN_INDEXEDLABELEDDECAYS_H
3// -*- C++ -*-
4//
5// Package: DChain
6// Module: IndexedLabeledDecays
7//
8// Description: Interface used by Stone iterators
9//
10// Usage:
11// <usage>
12//
13// Author: Simon Patton
14// Created: Fri Sep 13 17:58:11 EDT 1996
15// $Id: DCIndexedLabeledDecays.h,v 1.1.1.1 2009/03/03 06:06:56 maqm Exp $
16//
17// Revision history
18//
19// $Log: DCIndexedLabeledDecays.h,v $
20// Revision 1.1.1.1 2009/03/03 06:06:56 maqm
21// first import of DecayChain
22//
23// Revision 1.2 2006/01/11 20:28:25 cdj
24// massive class renaming, addition of [] for selection and unit tests
25//
26// Revision 1.1.1.1 2000/12/18 22:16:53 cdj
27// imported DChain
28//
29// Revision 1.1 1998/08/28 05:17:28 sjp
30// New class for iterator access
31//
32
33// system include files
34
35// user include files
36#include "DecayChain/List/LabeledCandidateList.h" // superclass
37
38namespace dchain {
39
40// forward declarations
41template < class DecayClass > class LabeledDecay ;
42template < class DecayClass > class MuteWholeItr ;
43template < class DecayClass > class WholeItr ;
44template < class DecayClass > class PartialItr ;
45
46template < class DecayClass , class CandidateClass >
47class IndexedLabeledDecays : public LabeledCandidateList< CandidateClass >
48{
49 // friend classses and functions
50 friend class MuteWholeItr< DecayClass > ;
51 friend class WholeItr< DecayClass > ;
52 friend class PartialItr< DecayClass > ;
53
54 public:
55 // constants, enums and typedefs
56
57 // Constructors and destructor
59 virtual ~IndexedLabeledDecays() ;
60
61 // member functions
62
63 // const member functions
64
65 // static member functions
66
67 protected:
68 // protected member functions
69 virtual LabeledDecay< DecayClass >& labeledDecayClass( const int aIndex ) = 0 ;
70
71 // protected const member functions
72 virtual const LabeledDecay< DecayClass >& labeledDecayClass( const int aIndex ) const = 0 ;
73
74 private:
75 // Constructors and destructor
77
78 // assignment operator(s)
79 const IndexedLabeledDecays& operator=( const IndexedLabeledDecays< DecayClass , CandidateClass>& ) ; // stop default
80
81 // private member functions
82
83 // private const member functions
84
85 // data members
86
87 // static data members
88
89} ;
90
91}
92
93// inline function definitions
94
95// function definitions
96//#include "DecayChain/List/Template/IndexedLabeledDecays.cc"
97
98#endif // DCHAIN_INDEXEDLABELEDDECAYS_H
99
virtual const LabeledDecay< DecayClass > & labeledDecayClass(const int aIndex) const =0
virtual LabeledDecay< DecayClass > & labeledDecayClass(const int aIndex)=0