areaDetector  3-5-0
EPICS areaDetector framework
softwareGrabber.h
Go to the documentation of this file.
1 // AncDemoRotationExpDlg.h : header file
2 //
3 
4 #ifndef _softwareGrabber_H
5 #define _softwareGrabber_H
6 
7 #include "grabberInterface.h"
8 
10  // Construction
11  public:
13 
14  int getGrabberType();
15 
16  void GetSignalStatus();
17 
18  bool CreateObjects();
19  bool DestroyObjects();
21 
22  bool initialize(int size_x, int size_y);
23  // use to override the image size in the ccf file.
24  bool initialize(int size_x, int size_y, bool is_force_size);
25  void setConfigFileName(char *name);
26  // set CC pins on the card.
27  void setPin(char *pinstr, int val);
28  void snap();
29  void grab();
30  void freeze();
31  void abort();
32  bool isFrameAvailable(void);
33  bool getFrame(void *mem_ptr);
34  bool getFrame(void *mem_ptr, unsigned int *softwareGrabber_timestamp);
35  bool getFrame(void *copy_memory, unsigned int *coreco_timestamp, int nbytes);
36 
37  bool isMissedFrame(void);
38  void clearMissedFrames(void);
39  long getTotalMissedFrames(void);
40  long getRecentMissedFrames(void);
41  void setNumBuffers(int b);
42  void makeView(void);
43  void setCamController(void *cc);
44  int getWidth(void);
45  int getHeight(void);
46 
47  void setDoubleWidth(int isdw);
48 
49  // clears any images left in buffer memory by resetting all counters to 0
50  void resetBufferCount(void);
51 
52  int getNumFreeBuffers(void);
53  int getNumBuffers(void);
54  // inc missed frames counter
55  void incMissedFrames(void);
56 
57  private:
58  int m_size_x, m_size_y;
59  int m_grab;
60  int m_timestamp;
61  enum { imgpixels = 6000000, nimages = 5 };
62 
63  unsigned short *images[nimages];
64 
65  int imgcnt;
66 };
67 
68 #endif
long getTotalMissedFrames(void)
Definition: softwareGrabber.cpp:130
Virtual class to represent any vendor frame grabber.
Definition: grabberInterface.h:13
void abort()
Definition: softwareGrabber.cpp:85
int getNumFreeBuffers(void)
Definition: softwareGrabber.cpp:149
name
Definition: makeDbAndEdl.py:232
Definition: softwareGrabber.h:9
bool initialize(int size_x, int size_y)
Definition: softwareGrabber.cpp:37
void setCamController(void *cc)
Definition: softwareGrabber.cpp:138
bool DestroyObjects()
Definition: softwareGrabber.cpp:33
int getHeight(void)
Definition: softwareGrabber.cpp:142
void setConfigFileName(char *name)
Definition: softwareGrabber.cpp:74
void setNumBuffers(int b)
Definition: softwareGrabber.cpp:134
bool CreateObjects()
Definition: softwareGrabber.cpp:31
void GetSignalStatus()
Definition: softwareGrabber.cpp:29
void snap()
Definition: softwareGrabber.cpp:79
void freeze()
Definition: softwareGrabber.cpp:83
bool DestroyObjectsNoDelete()
Definition: softwareGrabber.cpp:35
long getRecentMissedFrames(void)
Definition: softwareGrabber.cpp:132
void incMissedFrames(void)
Definition: softwareGrabber.cpp:154
bool getFrame(void *mem_ptr)
Definition: softwareGrabber.cpp:89
int getWidth(void)
Definition: softwareGrabber.cpp:140
void setDoubleWidth(int isdw)
Definition: softwareGrabber.cpp:144
void clearMissedFrames(void)
Definition: softwareGrabber.cpp:128
bool isMissedFrame(void)
Definition: softwareGrabber.cpp:126
void makeView(void)
Definition: softwareGrabber.cpp:136
void grab()
Definition: softwareGrabber.cpp:81
int getGrabberType()
Definition: softwareGrabber.cpp:27
int getNumBuffers(void)
Definition: softwareGrabber.cpp:151
bool isFrameAvailable(void)
Definition: softwareGrabber.cpp:87
void resetBufferCount(void)
Definition: softwareGrabber.cpp:147
softwareGrabber()
Virtual grabber.
Definition: softwareGrabber.cpp:16
void setPin(char *pinstr, int val)
Definition: softwareGrabber.cpp:77