StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StTofSlatCollection.h
1 /****************************************************************
2  * $Id: StTofSlatCollection.h,v 1.2 2015/07/28 22:55:44 smirnovd Exp $
3  *****************************************************************
4  * Author: Wei-Ming Zhang, April 2001
5  * Description: Local TOF slats collection
6  *
7  *****************************************************************
8  * $Log: StTofSlatCollection.h,v $
9  * Revision 1.2 2015/07/28 22:55:44 smirnovd
10  * Added cstddef C++ header defining size_t type
11  *
12  * Revision 1.1 2003/08/08 00:18:26 geurts
13  * moved from StTofMaker to StTofUtil
14  *
15  *
16  ****************************************************************/
17 #ifndef ST_TOF_SLAT_COLLECTION_H
18 #define ST_TOF_SLAT_COLLECTION_H
19 
20 #include <cstddef>
21 #include <vector>
22 #ifndef ST_NO_NAMESPACES
23 using std::vector;
24 using std::copy;
25 #endif
26 
27 class StTofSlat;
28 
29 #ifndef ST_NO_DEF_TEMPLATE_ARGS
30 typedef vector<StTofSlat*> slatVector;
31 #else
32 typedef vector<StTofSlat*, allocator<StTofSlat*> > slatVector;
33 #endif
34 
36 public:
38  virtual ~StTofSlatCollection();
39 
40  bool push_back(StTofSlat* slat);
41  size_t size() const;
42  StTofSlat* front() const;
43  StTofSlat* back() const;
44  StTofSlat* getSlat(size_t index) const;
45  void clear();
46 
47  private:
48  slatVector mSlatVector;
49 };
50 #endif