BOSS 7.1.0
BESIII Offline Software System
Loading...
Searching...
No Matches
CandidateList.cc
Go to the documentation of this file.
1#ifndef DCHAIN_CANDIDATELIST_CC
2#define DCHAIN_CANDIDATELIST_CC
3// -*- C++ -*-
4//
5// Package: DChain
6// Module: CandidateList
7//
8// Description: container of subclasses of Candidate, used for iteration
9//
10// Implimentation:
11// <Notes on implimentation>
12//
13// Author: Simon Patton
14// Created: Wed Sep 11 20:56:18 EDT 1996
15// $Id: CandidateList.cc,v 1.1.1.1 2009/03/03 06:06:56 maqm Exp $
16//
17// Revision history
18//
19// $Log: CandidateList.cc,v $
20// Revision 1.1.1.1 2009/03/03 06:06:56 maqm
21// first import of DecayChain
22//
23// Revision 1.1 2006/01/11 20:28:34 cdj
24// massive class renaming, addition of [] for selection and unit tests
25//
26// Revision 1.1.1.1 2000/12/18 22:16:54 cdj
27// imported DChain
28//
29// Revision 1.11 1998/08/21 00:51:56 sjp
30// Modifier to no longer use typedefs
31//
32// Revision 1.10 1998/08/20 20:00:15 sjp
33// Modified to use DChainBoolean
34//
35// Revision 1.9 1998/08/19 20:46:27 sjp
36// Fixed comments and removed report references
37//
38// Revision 1.8 1998/04/17 19:14:54 sjp
39// Modified to use latest type
40//
41// Revision 1.7 1997/08/28 07:00:24 sjp
42// Modified files to handle complete templating
43//
44// Revision 1.6 1997/08/26 04:14:34 sjp
45// Made Candidate handling objects into `CandidateClass' Templates
46//
47// Revision 1.5 1997/08/19 23:03:12 sjp
48// Restructured package to be independent of Rock
49//
50// Revision 1.4 1997/08/15 21:33:33 sjp
51// Updated to use <package>/<file>.h include structure.
52// Updated to use bug flags specified in Experiement.h
53//
54// Revision 1.3 1997/01/21 20:31:32 sjp
55// Changed CPP flags and include because of library reorganization
56//
57// Revision 1.2 1997/01/19 20:28:42 sjp
58// Changed LargeCount to Count
59//
60// Revision 1.1 1996/11/04 17:17:10 sjp
61// New file for new `List' module
62//
63
64// system include files
65//#include <string>
66
67// user include files
72
74
75//
76// constants, enums and typedefs
77//
78namespace dchain {
79//
80// static data member definitions
81//
82
83//
84// constructors and destructor
85//
86
87template < class CandidateClass >
90}
91
92// CandidateList< CandidateClass >::CandidateList( const CandidateList< CandidateClass >& )
93// {
94// }
95
96template < class CandidateClass >
100
101//
102// assignment operators
103//
104// const CandidateList< CandidateClass >& CandidateList< CandidateClass >::operator=( const CandidateList< CandidateClass >& )
105// {
106// }
107
108//
109// member functions
110//
111
112//------ begin ------
113//
114template < class CandidateClass >
116{
117 return ( labeledCandidateList().begin() ) ;
118}
119
120//------ end ------
121//
122template < class CandidateClass >
124{
125 return ( labeledCandidateList().end() ) ;
126}
127
128//
129// const member functions
130//
131
132//------ empty ------
133//
134template < class CandidateClass >
136{
137 return ( labeledCandidateList().empty() ) ;
138}
139
140//------ size ------
141//
142template < class CandidateClass >
144{
145 return ( labeledCandidateList().size() ) ;
146}
147
148//------ begin ------
149//
150template < class CandidateClass >
152{
153// do this casting to make sure const 'begin' function is called
154 return ( static_cast<const dchain::LabeledCandidateList< CandidateClass >*>(&labeledCandidateList())->begin() );
155}
156
157//------ end ------
158//
159template < class CandidateClass >
161{
162// do this casting to make sure const 'end' function is called
163 return ( static_cast<const dchain::LabeledCandidateList< CandidateClass >*>(&labeledCandidateList())->end() );
164}
165
166//
167// static member functions
168//
169}
170
171#endif /* DCHAIN_DCCANDIDATELIST_CC */
virtual iterator begin()
virtual bool empty() const
virtual iterator end()
virtual int size() const