![]() |
Millepede-II
V04-00-00
|
00001 #ifndef MILLE_H 00002 #define MILLE_H 00003 00004 #include <fstream> 00005 00027 00028 class Mille 00029 { 00030 public: 00031 Mille(const char *outFileName, bool asBinary = true, bool writeZero = false); 00032 ~Mille(); 00033 00034 void mille(int NLC, const float *derLc, int NGL, const float *derGl, 00035 const int *label, float rMeas, float sigma); 00036 void special(int nSpecial, const float *floatings, const int *integers); 00037 void kill(); 00038 void end(); 00039 00040 private: 00041 void newSet(); 00042 bool checkBufferSize(int nLocal, int nGlobal); 00043 00044 std::ofstream myOutFile; 00045 bool myAsBinary; 00046 bool myWriteZero; 00047 00048 enum {myBufferSize = 5000}; 00049 int myBufferInt[myBufferSize]; 00050 float myBufferFloat[myBufferSize]; 00051 int myBufferPos; 00052 bool myHasSpecial; 00053 00054 enum {myMaxLabel = (0xFFFFFFFF - (1 << 31))}; 00055 }; 00056 #endif