1 #ifndef GCP_GRABBER_FRAMEGRABBER_H
2 #define GCP_GRABBER_FRAMEGRABBER_H
18 #include <linux/types.h>
19 #include <linux/videodev.h>
22 #include <linux/videodev2.h>
52 void queryProperties();
53 void printProperties();
56 void printCapabilities();
63 void setChannel(
int channel = defaultChannel_);
68 int height = defaultHeight_);
70 void getImage(std::vector<char> &theImage);
72 void queryImageBuffer();
73 void printImageBuffer();
78 void setDepth(
int depth=defaultPixelDepth_);
79 void setBrightness(
unsigned short brightness = defaultBrightness_);
80 void setContrast(
unsigned short contrast = defaultContrast_);
86 static std::string defaultDevFileName_;
87 static const unsigned short defaultWidth_ = 768;
88 static const unsigned short defaultHeight_ = 480;
89 static const int defaultPixelDepth_ = 8;
90 static const unsigned short defaultBrightness_ = 32768;
91 static const unsigned short defaultContrast_ = 27648;
92 static const unsigned short defaultChannel_ = 1;
98 std::vector<void*> captureBuffers_;
102 std::string devFileName_;
106 struct video_capability vc_;
107 struct video_channel cp_;
108 struct video_picture vp_;
109 struct video_window vw_;
110 struct video_mbuf vm_;
111 struct video_mmap vb_;
115 void openFrameGrabber(std::string devFileName);
116 void initialize(Standard stand);
117 unsigned getStandard(FrameGrabber::Standard stand);
119 void setWindow(
unsigned short width = defaultWidth_,
120 unsigned short height = defaultHeight_);
126 void initializeCaptureBuffer();
127 void* createMmapBuffer(
unsigned& bufLen);
128 void createMmapBuffers(std::vector<void*>& buffers,
unsigned& bufLen);
129 void unmapCaptureBuffer();
136 unsigned syncFrame();
143 void ioctlThrow(
int request,
void* argp, std::string message);
144 void waitForDevice();
151 #endif // End #ifndef GCP_GRABBER_FRAMEGRABBER_H
void queryWindow()
Definition: FrameGrabber.cc:531
int queryChannel()
Definition: FrameGrabber.cc:565
void setBrightness(unsigned short brightness=defaultBrightness_)
Definition: FrameGrabber.cc:674
void createCaptureBuffer()
Definition: FrameGrabber.cc:237
void setChannel(int channel=defaultChannel_)
Definition: FrameGrabber.cc:201
FrameGrabber()
Definition: frameshit.cc:44
void setStandard(Standard stand)
Definition: FrameGrabber.cc:179
virtual ~FrameGrabber()
Definition: FrameGrabber.cc:44
void setImageSize(int width=defaultWidth_, int height=defaultHeight_)
Definition: FrameGrabber.cc:440
void queryCapabilities()
Definition: FrameGrabber.cc:452
void setContrast(unsigned short contrast=defaultContrast_)
Definition: FrameGrabber.cc:700
void setDeviceFileName(std::string devFileName)
Definition: FrameGrabber.cc:57
void queryPicture()
Definition: FrameGrabber.cc:506
Definition: FrameGrabber.h:30