#include <iostream>
#include <QApplication>
#include <QQuickView>
#include <QQmlContext>
#include <QIcon>
#include <cvb/ui/image_view_item.hpp>
#include <cvb/device_factory.hpp>
#include <cvb/image.hpp>
#include <cvb/async/single_stream_handler.hpp>
int main(int argc, char* argv[])
{
try
{
QApplication app(argc, argv);
Cvb::UI::ImageViewItem::Register();
QQuickView view;
view.setResizeMode(QQuickView::SizeRootObjectToView);
view.setIcon(QIcon(":/qttutorial.png"));
auto context = view.rootContext();
Cvb::UI::ImageController imageController;
context->setContextProperty("mainImage", &imageController);
view.setSource(QUrl::fromLocalFile("../main.qml"));
imageController.Refresh(device->DeviceImage(), Cvb::UI::AutoRefresh::On);
auto stream = device->Stream();
view.resize(640, 480);
view.show();
return app.exec();
}
catch (const std::exception& error)
{
std::cout << error.what() << std::endl;
}
}
static std::shared_ptr< T > Open(const String &provider, AcquisitionStack acquisitionStack=AcquisitionStack::PreferVin)
static std::unique_ptr< SingleStreamHandler > Create(const Driver::StreamPtr &stream)