source: JEM-EUSO/esaf_cc_at_lal/packages/common/root/src/EChipTrackTrigger.cc @ 114

Last change on this file since 114 was 114, checked in by moretto, 11 years ago

actual version of ESAF at CCin2p3

File size: 2.7 KB
Line 
1// $Id: EChipTrackTrigger.cc 1488 2005-02-15 13:51:18Z pesce $
2// Author: R.Pesce   2005/02/15
3
4/*****************************************************************************
5 * ESAF: Euso Simulation and Analysis Framework                              *
6 *                                                                           *
7 *  Id: EChipTrackTrigger                                                           *
8 *  Package: <packagename>                                                   *
9 *  Coordinator: <coordinator>                                               *
10 *                                                                           *
11 *****************************************************************************/
12
13//_____________________________________________________________________________
14//
15// EChipTrackTrigger
16//
17// <extensive class description>
18//
19//   Config file parameters
20//   ======================
21//
22//   <parameter name>: <parameter description>
23//   -Valid options: <available options>
24//
25
26#include "EChipTrackTrigger.hh"
27#include "EChipTrackSegment.hh"
28
29ClassImp(EChipTrackTrigger)
30
31TClonesArray* EChipTrackTrigger::fgTracks = NULL;
32EChipTrackTrigger* EChipTrackTrigger::fgCurrent = NULL;
33
34//_____________________________________________________________________________
35EChipTrackTrigger::EChipTrackTrigger() : TObject() {
36    //
37    // Constructor
38    //
39    if ( fgTracks == 0 )
40        fgTracks = new TClonesArray("EChipTrackSegment",20000);
41    fTracks = fgTracks;
42   
43    fCopy = kFALSE;
44    fNumTracks = 0;
45}
46
47//_____________________________________________________________________________
48EChipTrackTrigger::~EChipTrackTrigger() {
49    //
50    // Destructor
51    //
52    Clear();
53
54    if ( IsCopy() ) ClearCopy();
55    if ( GetCurrent() == this ) SetCurrent( 0 ); 
56}
57
58//_____________________________________________________________________________
59EChipTrackTrigger::EChipTrackTrigger(const EChipTrackTrigger& other) : TObject() {
60    //
61    // Copy ctor
62    //
63    other.Copy( *this );
64}
65
66//_____________________________________________________________________________
67void EChipTrackTrigger::Copy( TObject& other) const {
68    //
69    // Copy method
70    //
71    EChipTrackTrigger& trg = ( EChipTrackTrigger&) other;
72
73    trg.fNumTracks = fNumTracks;
74    trg.fTracks = (TClonesArray*)fTracks->Clone();
75}
76
77//_____________________________________________________________________________
78void EChipTrackTrigger::Clear( Option_t* opt ) {
79    //
80    // Clear this obj
81    //
82    if ( fTracks ) fTracks->Delete();
83
84    fNumTracks = 0;
85}
86   
87//______________________________________________________________________________
88void EChipTrackTrigger::ClearCopy() {
89  // delete TClonesArray in case of copied events
90  delete fTracks; 
91  fTracks = 0;
92}
93
94
Note: See TracBrowser for help on using the repository browser.