Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
core.h 748 B
#pragma once

#include "VmbCPP/SharedPointerDefines.h"
#include "qglobal.h"
#include <QObject>
#include <VmbCPP/Interface.h>

namespace VmbCPP {
	class VmbSystem;
}
using VmbCPP::CameraPtr;

class Core : public QObject
{
	Q_OBJECT

	public:
		Core();
		~Core();

	public slots:
		void printVersion();
		void printHelp();

		void listCams();
		void openCam();
		void selectCam(const int &);

		void start_recording();

	signals:
		void print(const QString &);
		void printList(QStringList);
		void err(const QString&,const int& errCode=0);

	private:
		void initCams();
		void getCamInfo( const CameraPtr & );
		CameraPtr cam();

		bool apiStarted;
		VmbCPP::VmbSystem& sys;
		VmbCPP::CameraPtrVector cameras;
		ulong camIdx;
		CameraPtr curCam;
};