Subversion Repositories f9daq

Rev

Blame | Last modification | View Log | RSS feed

  1. #ifndef _H3D_H_
  2. #define _H3D_H_
  3.  
  4. /* 2d histogramming */
  5. #define H3D_ID 0x12
  6. #pragma pack(4)
  7. typedef struct
  8. {
  9. unsigned int id,len;
  10. unsigned int nx;
  11. unsigned int ny;
  12. unsigned int nz;
  13. int nentries;
  14. unsigned int size;     
  15. double min;
  16. double max;
  17. double minx;
  18. double miny;
  19. double minz;
  20. double stepx;
  21. double stepy;
  22. double stepz;
  23. char name[20];
  24. char title[100];
  25. char titlex[40];
  26. char titley[40];
  27. char titlez[40];
  28. double *data;
  29. }H3D;
  30. #pragma pack()
  31.  
  32.  
  33.  
  34.  
  35. double H3DGetYBinCenter(int h3d,int ybin);
  36. double H3DGetYBinCenter(int h3d,int xbin);
  37.  
  38. int H3DClear(int h3d);
  39. int H3DPrint(int h3d);
  40. int H3DExist(int h3d);
  41. int H3DCalculateBin(int h3d, int axis, double value);
  42. int H3DGetBin(int h3d,int x, int y, int z);
  43. int H3DFill(int h3d,double x, double y, double z, double val);
  44. int H3DFillBin(int h3d,int x, int y, int z, double val);
  45. double H3DGetBinContent(int h3d,int atx, int aty, int atz);
  46. int H3DInit(int h3d,char *name, char *title,int nx, double minx, double stepx, int ny, double miny, double stepy,int nz, double minz, double stepz);
  47. int H3DWrite(int h3d,const char *fname,const char*opt);
  48. int H3DWrite2File(int h3d,FILE *fp);
  49. int H3DSetTitle(int h3d,char *title);
  50. int H3DSetTitleX(int h3d,char *title);
  51. int H3DSetTitleY(int h3d,char *title);
  52. int H3DSetTitleZ(int h3d,char *title);
  53. int H3DSetName(int h3d,char *title);
  54.  
  55. int H3DGetNbinsY(int h);
  56. int H3DGetNbinsX(int h);
  57. int H3DGetNbinsZ(int h);
  58.  
  59. double H3DGetMinX(int h);
  60. double H3DGetMinY(int h);
  61. double H3DGetMinZ(int h);
  62.  
  63.  
  64. double H3DGetStepX(int h);
  65. double H3DGetStepY(int h);
  66. double H3DGetStepZ(int h);
  67.  
  68. double H3DGetMin(int h);
  69. double H3DGetMax(int h);
  70. double * H3DGetSliceXYData(int h, int slice);
  71. double * H3DGetData(int h);  
  72.  
  73. #endif
  74.