Millepede-II V04-16-03
Mille.h
Go to the documentation of this file.
1#ifndef MILLE_H
2#define MILLE_H
3
26#include <fstream>
27
50class Mille
51{
52 public:
53 Mille(const char *outFileName, bool asBinary = true, bool writeZero = false);
54 ~Mille();
55
56 void mille(int NLC, const float *derLc, int NGL, const float *derGl,
57 const int *label, float rMeas, float sigma);
58 void special(int nSpecial, const float *floatings, const int *integers);
59 void kill();
60 void end();
61
62 private:
63 void newSet();
64 bool checkBufferSize(int nLocal, int nGlobal);
65
66 std::ofstream myOutFile;
70 enum {myBufferSize = 5000};
76 enum {myMaxLabel = (0xFFFFFFFF - (1 << 31))};
77};
78#endif
Class to write C binary file.
Definition: Mille.h:51
void end()
Write buffer (set of derivatives with same local parameters) to file.
Definition: Mille.cc:169
int myBufferInt[myBufferSize]
to collect labels etc.
Definition: Mille.h:71
bool myAsBinary
if false output as text
Definition: Mille.h:67
bool checkBufferSize(int nLocal, int nGlobal)
Enough space for next nLocal + nGlobal derivatives incl. measurement?
Definition: Mille.cc:214
void special(int nSpecial, const float *floatings, const int *integers)
Add special data to buffer.
Definition: Mille.cc:127
@ myBufferSize
Definition: Mille.h:70
~Mille()
Closes file.
Definition: Mille.cc:62
std::ofstream myOutFile
C-binary for output.
Definition: Mille.h:66
bool myHasSpecial
if true, special(..) already called for this record
Definition: Mille.h:74
void kill()
Reset buffers, i.e. kill derivatives accumulated for current set.
Definition: Mille.cc:162
float myBufferFloat[myBufferSize]
to collect derivatives etc.
Definition: Mille.h:72
@ myMaxLabel
Definition: Mille.h:76
int myBufferPos
position in buffer
Definition: Mille.h:73
void mille(int NLC, const float *derLc, int NGL, const float *derGl, const int *label, float rMeas, float sigma)
Add measurement to buffer.
Definition: Mille.cc:78
bool myWriteZero
if true also write out derivatives/labels ==0
Definition: Mille.h:68
Mille(const char *outFileName, bool asBinary=true, bool writeZero=false)
author : Gero Flucke, University Hamburg, 2006 date : October 2006
Definition: Mille.cc:45
void newSet()
Initialize for new set of locals, e.g. new track.
Definition: Mille.cc:199
real(mps), dimension(nplan) sigma
measurement sigma (hit)
Definition: mptest1.f90:65