source: trunk/MagicSoft/Mars/manalysis/MCerPhotPix.cc@ 4904

Last change on this file since 4904 was 4702, checked in by tbretz, 20 years ago
*** empty log message ***
File size: 3.2 KB
Line 
1/* ======================================================================== *\
2!
3! *
4! * This file is part of MARS, the MAGIC Analysis and Reconstruction
5! * Software. It is distributed to you in the hope that it can be a useful
6! * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
7! * It is distributed WITHOUT ANY WARRANTY.
8! *
9! * Permission to use, copy, modify and distribute this software and its
10! * documentation for any purpose is hereby granted without fee,
11! * provided that the above copyright notice appear in all copies and
12! * that both that copyright notice and this permission notice appear
13! * in supporting documentation. It is provided "as is" without express
14! * or implied warranty.
15! *
16!
17!
18! Author(s): Thomas Bretz 12/2000 <mailto:tbretz@astro.uni-wuerzburg.de>
19! Author(s): Harald Kornmayer 1/2001
20!
21! Copyright: MAGIC Software Development, 2000-2004
22!
23!
24\* ======================================================================== */
25
26
27/////////////////////////////////////////////////////////////////////////////
28//
29// MCerPhotPix
30//
31// Storage container for the signal in a pixel in number of photons.
32//
33// NOTE: This container is NOT ment for I/O. Write it to a file on your
34// own risk!
35//
36// fIsSaturated: boolean variable set to kTRUE whenever one or more of
37// the low gain FADC slices of the pixel is in saturation.
38//
39// Version 2:
40// ----------
41// - added fIsSaturated
42//
43// Version 4:
44// ----------
45// - added fIsHGSaturated
46//
47// Version 5:
48// ----------
49// - added fIdxIsland
50//
51////////////////////////////////////////////////////////////////////////////
52#include "MCerPhotPix.h"
53
54#include "MLog.h"
55
56ClassImp(MCerPhotPix);
57
58using namespace std;
59
60// --------------------------------------------------------------------------
61//
62// Default constructor. The pixel is assumed as used and not a core pixel.
63// NT 29/04/2003: A pixel is considered used when fRing > 0.
64//
65MCerPhotPix::MCerPhotPix(Int_t pix, Float_t phot, Float_t errphot) :
66 fPixId(pix), fIsCore(kFALSE), fRing(1), fIdxIsland(-1),
67 fPhot(phot), fErrPhot(errphot),
68 fIsSaturated(kFALSE), fIsHGSaturated(kFALSE)
69{
70}
71
72// --------------------------------------------------------------------------
73//
74// From TObject:
75// Compare abstract method. Must be overridden if a class wants to be able
76// to compare itself with other objects. Must return -1 if this is smaller
77// than obj, 0 if objects are equal and 1 if this is larger than obj.
78//
79// Here:
80// Index numbers are compared
81//
82Int_t MCerPhotPix::Compare(const TObject *o) const
83{
84 const Int_t diff = fPixId - static_cast<const MCerPhotPix*>(o)->fPixId;
85 return diff==0 ? 0 : TMath::Sign(1, diff);
86}
87
88// --------------------------------------------------------------------------
89//
90// Print information to gLog.
91//
92void MCerPhotPix::Print(Option_t *) const
93{
94 gLog << GetDescriptor() <<" Pixel: "<< fPixId;
95 gLog << (fRing>0?" Used ":" Unused ");
96 gLog << (fIsCore?" Core ":" ");
97 gLog << (fIsSaturated?" ":"not") << " saturated ";
98 gLog << "High gain " << (fIsHGSaturated?" ":"not") << " saturated ";
99 gLog << "Nphot= " << fPhot << " Error(Nphot)=" << fErrPhot << endl;
100}
Note: See TracBrowser for help on using the repository browser.