NCFS-Pack
A generic (astro)particle physics analysis framework
 
Loading...
Searching...
No Matches
IceF2k.h
Go to the documentation of this file.
1#ifndef IceF2k_h
2#define IceF2k_h
3
4// Copyright(c) 2003, IceCube Experiment at the South Pole, All rights reserved.
5// See cxx source for full Copyright notice.
6
7#include "TFile.h"
8#include "TTree.h"
9#include "TString.h"
10#include "TObjString.h"
11#include "TObjArray.h"
12#include "TDatabasePDG.h"
13
14#include "NcJob.h"
15#include "NcObjMatrix.h"
16
17#include "IceAOM.h"
18#include "IceEvent.h"
19
20#include "rdmc.h"
21
23
24class IceF2k : public NcJob
25{
26 public :
27 IceF2k(const char* name="IceF2k",const char* title=""); // Constructor
28 virtual ~IceF2k(); // Destructor
29 void SetMaxEvents(Int_t n); // Set maximum number of events to be processed
30 void SetPrintFreq(Int_t f); // Set printfrequency to provide info every f events
31 void SetSplitLevel(Int_t split); // Set split level for the produced ROOT data file
32 void SetBufferSize(Int_t bsize); // Set buffersize for the produced ROO data file
33 void SetInputFile(TString name); // Set name of F2K input file (obsolete)
34 void AddInputFile(TString name); // Add name of F2K input file to the list
35 void SetOutputFile(TFile* ofile); // Set output file for the ROOT data structures
36 void SetOutputFile(TString name); // Create output file for the ROOT data structures
37 void SetMcToffset(Float_t toffset); // Set user defined time offset for MC data
38 void SelectMcTracks(Int_t mode); // User selection of MC tracks to be stored
39 void SetCompressedTWR(Int_t mode); // Set compressed mode for TWR input data
40 TFile* GetOutputFile(); // Provide pointer to the ROOT output file
41 TDatabasePDG* GetPDG(); // Provide pointer to the PDG database
42 NcObjMatrix* GetOMdbase(); // Provide pointer to the OM geometry, calib. etc... database
43 NcDevice* GetFitdefs(); // Provide pointer to the Fit definition parameters
44 NcDevice* GetTrigdefs(); // Provide pointer to the Fit definition parameters
45 virtual void Exec(Option_t* opt); // Perform the format conversion
46
47 protected :
48 Int_t fSplit; // The split level of the produced ROOT data file
49 Int_t fBsize; // The buffersize of the produced ROOT data file
50 Int_t fMaxevt; // The maximum number of events to be processed
51 Int_t fPrintfreq; // The event info printing frequency
52 TObjArray* fInfiles; // Names of all the F2K input files
53 TFile* fOutfile; // The ROOT output file
54
55 TDatabasePDG* fPdg; // Database with PDG information
56 NcObjMatrix* fOmdb; // Database of all OM devices with their geometry, calib. etc... data
57 NcDevice* fFitdefs; // Fit definitions as indicated in the header of the F2000 input file
58 NcDevice* fTrigdefs; // Trigger definitions as indicated in the header of the F2000 input file
59 Float_t fToffset; // Trigger time offset which might have been introduced during filtering
60 Float_t fMctoffset; // Trigger time offset which might have been introduced during MC generation
61 Int_t fMctracks; // MC tracks selection flag
62 Int_t fCompTWR; // TWR compressed input flag
63
64 void FillOMdbase(); // Fill geometry and calib. parameters of all devices
65 void SetFitdefs(); // Set the fit definitions as used in the F2000 input file
66 void SetTrigdefs(); // Set the trigger definitions as used in the F2000 input file
67 void PutMcTracks(); // Put the MC tracks from the F2000 file into the IcePack structure
68 void PutRecoTracks(); // Put the reconstructed tracks from the F2000 file into the IcePack structure
69 void PutHits(); // Put the hits and waveforms from the F2000 file into the IcePack structure
70 void PutTrigger(); // Put the trigger information from the F2000 file into the IcePack structure
71
72 mcfile* fInput;
73 Array fHeader;
74 mevt fEvent;
75
76 ClassDef(IceF2k,9) // Job for conversion of F2K data into IceEvent physics event structures.
77};
78#endif
void SelectMcTracks(Int_t mode)
Definition IceF2k.cxx:280
Int_t fMaxevt
Definition IceF2k.h:50
Int_t fSplit
Definition IceF2k.h:48
void SetMcToffset(Float_t toffset)
Definition IceF2k.cxx:267
NcObjMatrix * GetOMdbase()
Definition IceF2k.cxx:405
Int_t fPrintfreq
Definition IceF2k.h:51
NcDevice * GetFitdefs()
Definition IceF2k.cxx:416
void PutRecoTracks()
Definition IceF2k.cxx:1077
TFile * GetOutputFile()
Definition IceF2k.cxx:383
IceF2k(const char *name="IceF2k", const char *title="")
Definition IceF2k.cxx:153
void AddInputFile(TString name)
Definition IceF2k.cxx:340
NcDevice * GetTrigdefs()
Definition IceF2k.cxx:427
mcfile * fInput
! Structure holding the input file characteristics
Definition IceF2k.h:72
virtual ~IceF2k()
Definition IceF2k.cxx:179
void FillOMdbase()
Definition IceF2k.cxx:650
void SetInputFile(TString name)
Definition IceF2k.cxx:316
TFile * fOutfile
Definition IceF2k.h:53
void SetOutputFile(TFile *ofile)
Definition IceF2k.cxx:359
NcDevice * fFitdefs
Definition IceF2k.h:57
Int_t fCompTWR
Definition IceF2k.h:62
void SetMaxEvents(Int_t n)
Definition IceF2k.cxx:218
void PutHits()
Definition IceF2k.cxx:1187
Array fHeader
! Structure holding the file header info
Definition IceF2k.h:73
void PutMcTracks()
Definition IceF2k.cxx:952
TDatabasePDG * GetPDG()
Definition IceF2k.cxx:394
void SetFitdefs()
Definition IceF2k.cxx:786
void SetTrigdefs()
Definition IceF2k.cxx:869
virtual void Exec(Option_t *opt)
Definition IceF2k.cxx:438
TDatabasePDG * fPdg
Definition IceF2k.h:55
NcObjMatrix * fOmdb
Definition IceF2k.h:56
void SetBufferSize(Int_t bsize)
Definition IceF2k.cxx:255
Float_t fToffset
Definition IceF2k.h:59
Float_t fMctoffset
Definition IceF2k.h:60
TObjArray * fInfiles
Definition IceF2k.h:52
void PutTrigger()
Definition IceF2k.cxx:1392
NcDevice * fTrigdefs
Definition IceF2k.h:58
Int_t fMctracks
Definition IceF2k.h:61
void SetSplitLevel(Int_t split)
Definition IceF2k.cxx:243
mevt fEvent
! Structure holding the actual event data (hits, tracks, etc...)
Definition IceF2k.h:74
Int_t fBsize
Definition IceF2k.h:49
void SetPrintFreq(Int_t f)
Definition IceF2k.cxx:231
void SetCompressedTWR(Int_t mode)
Definition IceF2k.cxx:299
Signal (Hit) handling of a generic device.
Definition NcDevice.h:14
NcJob(const char *name="NcJob", const char *title="")
Definition NcJob.cxx:139
Handling of a matrix structure of objects.
Definition NcObjMatrix.h:13