zbar-windows/examples/processor.cpp
Mauro Carvalho Chehab cd5b63e5b5 Update to the very latest version of zbar
zbar was using a 2010 snapshot of its hg tree.
Take a new snapshot to get zbar's improvements.

[Imported from Fedora 26 tree]
2017-03-25 23:04:38 -03:00

46 lines
1.0 KiB
C++

#include <iostream>
#include <zbar.h>
using namespace std;
using namespace zbar;
class MyHandler : public Image::Handler
{
void image_callback (Image &image)
{
for(SymbolIterator symbol = image.symbol_begin();
symbol != image.symbol_end();
++symbol)
cout << "decoded " << symbol->get_type_name() << " symbol "
<< "\"" << symbol->get_data() << "\"" << endl;
}
};
int main (int argc, char **argv)
{
// create and initialize a Processor
const char *device = "/dev/video0";
if(argc > 1)
device = argv[1];
Processor proc(true, device);
// configure the Processor
proc.set_config(ZBAR_NONE, ZBAR_CFG_ENABLE, 1);
// setup a callback
MyHandler my_handler;
proc.set_handler(my_handler);
// enable the preview window
proc.set_visible();
proc.set_active();
try {
// keep scanning until user provides key/mouse input
proc.user_wait();
}
catch(ClosedError &e) {
}
return(0);
}