FEDRA emulsion software from the OPERA Collaboration
AcqOdyssey_ONL.h
Go to the documentation of this file.
1 #ifndef ROOT_AcqOdyssey
2 #define ROOT_AcqOdyssey
4 // //
5 // AcqOdyssey //
6 // //
7 // Interface to MATROX ODYSSEY framegrabber //
8 // //
10 //#endif
11 
12 #include <stdio.h>
13 #include <stdlib.h>
14 #include <string.h>
15 #include <time.h>
16 #include <conio.h>
17 
18 
19 
20 #include "TObject.h"
21 #ifndef __CINT__
22 #include "Mil.h"
23 # include "imapi.h"
24 //#include "mconvol.h"
25 #endif
26 
27 #include "EdbImage.h"
28 
29 
30 
31 /* Max Number of buffers in the sequence. */
32 #define MAX_NB_GRAB 50
33 typedef long MIL_ID;
34 
35 
36 //______________________________________________________________________________
37 class AcqOdyssey : public TObject {
38 
39 private:
51  int SizeX,SizeY; //Image size, aquired from digitizer settings
52 // ONL variables
53  long System;
54  long Device;
55  long Camera;
56  long Digitizer;
57  long Control;
58  long BufferN;
59  long ConvImage;
60  long Kernel;
61  long BGImage;
62  long Buffer[MAX_NB_GRAB];
64  long ShiftList;
66  long ControlBuf;
67  long GrabOSB;
68  long CopyOSB;
69  char bNorm;
70 
71 
72 
73  public:
74 
75 
77  virtual ~AcqOdyssey();
78  bool Initialize(char * DCF, int N);
79  void FreeResources();
80  void SetFIRFKernel(char *Kern, int W, int H);
81  void SetFIRFNorm(int Norm);
82  void GrabImages(int N);
83  void GrabImagesONL(int N);
84  void ShowImage(int N);
85  void ShowBGImage();
86  void GetImage(int N, char* buf);
88  void PutImage(int N, char* buf);
89  void CopyImageToBG(int N);
90  void PutBGImage(short* buf);
91  void ShowImages(int N1, int N2, int TimeInterval, int Times);
92  void TracksFromNImages(int N, float TX, float TY, int Dest);
94  void FindClusters(int N);
95 
96  bool BGImageValid;
97  bool SubtractBG;
98  bool ApplyFIRF;
99  char Threshold;
100 
101  ClassDef(AcqOdyssey,1)
102 };
103 
104 
105 
106 #endif /* ROOT_AcqOdyssey */
long MIL_ID
Definition: AcqOdyssey.h:45
long MIL_ID
Definition: AcqOdyssey_ONL.h:33
#define MAX_NB_GRAB
Definition: AcqOdyssey_ONL.h:32
Definition: AcqOdyssey.h:49
long ConvImage
Definition: AcqOdyssey.h:79
void CopyImageToBG(int N)
long Digitizer
Definition: AcqOdyssey.h:75
int SizeX
Definition: AcqOdyssey.h:168
long Camera
Definition: AcqOdyssey.h:74
long ShiftList
Definition: AcqOdyssey.h:93
void SetFIRFNorm(int Norm)
long GrabOSB
Definition: AcqOdyssey.h:96
void GetImage(int N, char *buf)
void PutBGImage(short *buf)
long ShiftBuffer[MAX_NB_GRAB]
Definition: AcqOdyssey.h:92
long FindClusters(int N, TClonesArray *Clusters=NULL, int Side=0)
Definition: AcqOdyssey.cxx:991
void FreeResources()
void ShowBGImage()
MIL_ID MilDisplay
Definition: AcqOdyssey.h:55
void TracksFromNImages(int N, int DX, int DY, float TX, float TY, int Dest)
Definition: AcqOdyssey.cxx:727
MIL_ID MilSystem
Definition: AcqOdyssey.h:53
MIL_ID MilKernel
Definition: AcqOdyssey_ONL.h:50
MIL_ID MilImageN
Definition: AcqOdyssey.h:59
virtual ~AcqOdyssey()
EdbImage * GetEdbImage(int N)
long CopyOSB
Definition: AcqOdyssey.h:97
void SetFIRFKernel(char *Kern, int W, int H)
MIL_ID MilImageDisp
Definition: AcqOdyssey.h:65
MIL_ID MilConvImage
Definition: AcqOdyssey.h:62
int GrabImagesONL(int N, float *Zs=NULL, double Timeout=0)
Definition: AcqOdyssey.cxx:472
bool ApplyFIRF
Definition: AcqOdyssey.h:172
bool SubtractBG
Definition: AcqOdyssey.h:171
long BufferN
Definition: AcqOdyssey.h:77
void ShowImages(int N1, int N2, int TimeInterval, int Times)
long SeqThread
Definition: AcqOdyssey.h:94
long Buffer[MAX_NB_GRAB]
Definition: AcqOdyssey.h:85
long Device
Definition: AcqOdyssey.h:73
void ShowImage(int N)
long ControlBuf
Definition: AcqOdyssey.h:95
long BGImage
Definition: AcqOdyssey.h:83
long Thread
Definition: AcqOdyssey.h:94
MIL_ID MilConvImage1
Definition: AcqOdyssey_ONL.h:48
MIL_ID MilImage[MAX_NB_GRAB]
Definition: AcqOdyssey.h:58
long Kernel
Definition: AcqOdyssey.h:82
MIL_ID MilDigitizer
Definition: AcqOdyssey.h:54
int SizeY
Definition: AcqOdyssey.h:168
MIL_ID MilApplication
Definition: AcqOdyssey.h:52
void PutImage(int N, char *buf)
char bNorm
Definition: AcqOdyssey.h:99
bool BGImageValid
Definition: AcqOdyssey.h:169
MIL_ID MilBGImage
Definition: AcqOdyssey.h:60
void GrabImages(int N)
Definition: AcqOdyssey_ONL.cxx:211
long Control
Definition: AcqOdyssey.h:76
long System
Definition: AcqOdyssey.h:72
char Threshold
Definition: AcqOdyssey_ONL.h:99
bool Initialize(char *DCF, int N)
bool IsGrabComplete()
long GrabThread
Definition: AcqOdyssey.h:94
Definition: EdbImage.h:23
struct @9 H
int Norm
int Norm=3;
Definition: hwinit.C:21
Double_t TY
Definition: tlg2pattern.C:79
Double_t TX
Definition: tlg2pattern.C:79
Int_t W
Definition: testBGReduction_By_ANN.C:15