StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StSsdPackage.hh
1 // $Id: StSsdPackage.hh,v 1.1 2006/10/16 16:43:29 bouchet Exp $
2 //
3 // $Log: StSsdPackage.hh,v $
4 // Revision 1.1 2006/10/16 16:43:29 bouchet
5 // StSsdUtil regroups now methods for the classes StSsdStrip, StSsdCluster and StSsdPoint
6 //
7 // Revision 1.2 2005/03/18 14:21:44 lmartin
8 // missing CVS header added
9 //
10 
11 #ifndef STSSDPACKAGE_HH
12 #define STSSDPACKAGE_HH
13 #include "Rtypes.h"
14 class StSsdCluster;
16 
18 {
19  public:
20  StSsdPackage(Int_t rNPackage, StSsdClusterControl *control);
21  StSsdPackage(Int_t rNPackage, Int_t rNMatched);
22  StSsdPackage(const StSsdPackage & originalPackage);
23  ~StSsdPackage();
24 
25  StSsdPackage& operator=(const StSsdPackage originalPackage);
26 
27  StSsdCluster* next(StSsdCluster *ptr);
28  StSsdCluster* prev(StSsdCluster *ptr);
29  StSsdCluster* first();
30  StSsdCluster* last();
31 
32  Int_t getNPackage();
33  StSsdCluster* getMatched(Int_t numMatched);
34  char* getKind();
35  StSsdPackage* getPrevPackage();
36  StSsdPackage* getNextPackage();
37 
38  void purgePackage();
39  void takeMatcheds(StSsdPackage *ptr);
40 
41  void setNPackage(Int_t rNPackage);
42  void setKind(char *rKind);
43  void setPrevPackage(StSsdPackage *rPrevPackage);
44  void setNextPackage(StSsdPackage *rNextPackage);
45 
46  Int_t addNewMatched(StSsdCluster *ptr, Int_t maxMatcheds);
47  Int_t addKindPackage(Int_t numMatched, Int_t rSide, Int_t maxMatcheds);
48  Int_t removeMatched(StSsdCluster *ptr);
49  void exchangeTwoMatcheds(StSsdCluster *ptr1, StSsdCluster *ptr2);
50  void sortMatched();
51  void renumMatched();
52  Int_t getSize();
53  Int_t isSorted();
54 
55  private:
56  Int_t mListLengthM;
57  StSsdCluster *mFirstMatched;
58  StSsdCluster *mLastMatched;
59 
60  Int_t mNPackage;
61  StSsdCluster* *mMatcheds;
62  char* mKind;
63  StSsdPackage *mPrevPackage;
64  StSsdPackage *mNextPackage;
65 };
66 #endif