Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Mille.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file Mille.h
1 #ifndef MILLE_H
2 #define MILLE_H
3 
26 #include <fstream>
27 #include <climits>
28 
50 
51 class Mille
52 {
53  public:
54  Mille(const char *outFileName, bool asBinary = true, bool writeZero = false);
55  ~Mille();
56 
57  void mille(int NLC, const float *derLc, int NGL, const float *derGl,
58  const int *label, float rMeas, float sigma);
59  void special(int nSpecial, const float *floatings, const int *integers);
60  void kill();
61  void end();
62 
63  private:
64  void newSet();
65  bool checkBufferSize(int nLocal, int nGlobal);
66 
67  std::ofstream myOutFile;
68  bool myAsBinary;
69  bool myWriteZero;
70 
71  enum {myBufferSize = 10000};
75  bool myHasSpecial;
76 
77  enum {myMaxLabel = INT_MAX - 1};
78 };
79 #endif