source: trunk/Mars/mbase/MParameters.cc@ 18525

Last change on this file since 18525 was 9268, checked in by tbretz, 16 years ago
*** empty log message ***
File size: 4.3 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 03/2003 <mailto:tbretz@astro.uni-wuerzburg.de>
19!
20! Copyright: MAGIC Software Development, 2000-2005
21!
22!
23\* ======================================================================== */
24
25/////////////////////////////////////////////////////////////////////////////
26//
27// MParameterD, MParameterDerr, MParameterI
28//
29// Storage Container for doubles and ints
30//
31// This classes can be used for intermidiate variables which we don't want
32// to have in a special container.
33//
34//
35// MParameterDerr - Version 2:
36// - inherits from MParemeterD now, where fVal comes from
37//
38/////////////////////////////////////////////////////////////////////////////
39#include "MParameters.h"
40
41#include <fstream>
42
43#include "MLog.h"
44#include "MLogManip.h"
45
46ClassImp(MParameterD);
47ClassImp(MParameterI);
48ClassImp(MParameterDerr);
49//ClassImp(MParameter);
50
51using namespace std;
52
53// --------------------------------------------------------------------------
54//
55// Default constructor.
56//
57MParameterD::MParameterD(const char *name, const char *title)
58{
59 fName = name ? name : "MParameterD";
60 fTitle = title ? title : "Storgare container for general parameters (double)";
61}
62
63// --------------------------------------------------------------------------
64//
65// Default constructor.
66//
67MParameterDerr::MParameterDerr(const char *name, const char *title)
68{
69 fName = name ? name : "MParameterDerr";
70 fTitle = title ? title : "Storgare container for general parameters (double) and its error";
71}
72
73// --------------------------------------------------------------------------
74//
75// Default constructor.
76//
77MParameterI::MParameterI(const char *name, const char *title)
78{
79 fName = name ? name : "MParameterI";
80 fTitle = title ? title : "Storgare container for general parameters (integer)";
81}
82
83// --------------------------------------------------------------------------
84//
85// Print value of container.
86//
87void MParameterD::Print(Option_t *) const
88{
89 *fLog << all << GetDescriptor() << ": Val=" << fVal << endl;
90}
91
92// --------------------------------------------------------------------------
93//
94// Print value and error of container.
95//
96void MParameterDerr::Print(Option_t *) const
97{
98 *fLog << all << GetDescriptor() << ": Val=" << GetVal() << " Err=" << fErr << endl;
99}
100
101// --------------------------------------------------------------------------
102//
103// Print value of container.
104//
105void MParameterI::Print(Option_t *) const
106{
107 *fLog << all << GetDescriptor() << ": Val=" << fVal << endl;
108}
109
110// --------------------------------------------------------------------------
111//
112// MParameterD.Val: 55.7
113//
114Int_t MParameterD::ReadEnv(const TEnv &env, TString prefix, Bool_t print)
115{
116 Bool_t rc = kFALSE;
117 if (IsEnvDefined(env, prefix, "Val", print))
118 {
119 rc = kTRUE;
120 fVal = GetEnvValue(env, prefix, "Val", fVal);
121 }
122 return rc;
123}
124
125// --------------------------------------------------------------------------
126//
127// MParameterD.Val: 55.7
128// MParameterD.Err: 12.3
129//
130Int_t MParameterDerr::ReadEnv(const TEnv &env, TString prefix, Bool_t print)
131{
132 Int_t rc = MParameterD::ReadEnv(env, prefix, print);
133 if (rc==kERROR)
134 return kERROR;
135
136 if (IsEnvDefined(env, prefix, "Err", print))
137 {
138 rc = kTRUE;
139 fErr = GetEnvValue(env, prefix, "Err", fErr);
140 }
141 return rc;
142}
143
144// --------------------------------------------------------------------------
145//
146// MParameterD.Val: 42
147//
148Int_t MParameterI::ReadEnv(const TEnv &env, TString prefix, Bool_t print)
149{
150 Bool_t rc = kFALSE;
151 if (IsEnvDefined(env, prefix, "Val", print))
152 {
153 rc = kTRUE;
154 fVal = GetEnvValue(env, prefix, "Val", fVal);
155 }
156 return rc;
157}
Note: See TracBrowser for help on using the repository browser.