Switch to negative values of logical output units to obtain binary output
[u/mrichter/AliRoot.git] / TFluka / TFlukaScoringOption.h
CommitLineData
f0d336ab 1#ifndef TFLUKASCORINGOPTION
2#define TFLUKASCORINGOPTION
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9///////////////////////////////////////////////////////////////////////////////
10// //
11// //
f450e9d0 12// Class to store FLUKA specific scoring options //
f0d336ab 13// //
f450e9d0 14// //
15// Authors: Andreas Morsch <andreas.morsch@cern.ch> //
16// Barbara Dalena <Barbara.Dalena@ba.infn.it> //
17// //
f0d336ab 18///////////////////////////////////////////////////////////////////////////////
19
20
21#include <TNamed.h>
f450e9d0 22class TFlukaMCGeometry;
f0d336ab 23
24
25class TFlukaScoringOption : public TNamed
26{
27public:
f450e9d0 28 // Constructors
f0d336ab 29 TFlukaScoringOption();
f450e9d0 30 TFlukaScoringOption(const char* name, const char* sdum, Int_t nopfl, char* outfile, Float_t* what);
31 TFlukaScoringOption(const char* name, const char* sdum, Int_t nopfl, char* outfile, Float_t* what,
4aba9d66 32 const char* det1, const char* det2, const char* det3);
f450e9d0 33 // Getters
4aba9d66 34 Float_t What(Int_t indi) const {return fWhat[indi - 1];}
35 Int_t Par() const {return fNopfl;}
36 char* GetFileName() const {return fOutFile;}
37 Float_t GetLun() const {return fLun;}
f450e9d0 38 const char* GetRegName(Int_t ndet);
4aba9d66 39 void SetPar(Int_t val) {fNopfl = val;}
40 void SetFileName(char* outfile) {fOutFile = outfile;}
41 void SetLun(Float_t lun) {fLun = lun;}
42
f450e9d0 43//
4aba9d66 44 void WriteFlukaInputCards();
45 void WriteOpenFlukaFile();
46 Int_t GetRegionByName(const char* detname);
47
f450e9d0 48 static void SetStaticInfo(FILE* file, TFlukaMCGeometry* geom)
4aba9d66 49 {fgFile = file; fgGeom = geom;}
50
f0d336ab 51 protected:
f450e9d0 52 Int_t fNopfl; // Number of paramters
53 Float_t fWhat[12]; // WHAT()
54 const char* fName[3]; // Region Name
55 char* fOutFile; // Output file
56 Float_t fLun; // Logical Unit Number for Fluka output
57
58 // Static
59 static FILE* fgFile; // Output file
60 static TFlukaMCGeometry* fgGeom; // Pointer to geometry
4aba9d66 61
62 private:
63 // Copy constructor and operator= declared but not implemented (-Weff++ flag)
64 TFlukaScoringOption(const TFlukaScoringOption&);
65 TFlukaScoringOption& operator=(const TFlukaScoringOption&);
66
f0d336ab 67 ClassDef(TFlukaScoringOption, 1) // Fluka Scoring Option
68};
69
70#endif
71