NDEVR
API Documentation
RasterCameraView.h
1#pragma once
2#include "DesignWidgets/Headers/PhysicalCameraView.h"
3#include "Base/Headers/Vector.hpp"
4#include "Base/Headers/Bounds.hpp"
5namespace NDEVR
6{
13 {
14 public:
20 RasterCameraView(const DynamicPointer<Camera>& camera, QWidget* parent = nullptr);
21 virtual ~RasterCameraView();
25 virtual bool setCameraSource(const StringView& connection_id) override;
27 virtual void refreshInstance() override;
30 virtual void setRecordingState(RecordingState recording_state) override;
33 virtual QImage grabFramebuffer() override;
36 virtual void setCameraRotation(Angle<fltp08> rotation) override;
39 virtual void setCameraZoom(fltp08 zoom) override;
42 virtual Angle<fltp08> cameraRotation() override;
43 protected:
47 bool startRecord(const File& file) override;
51 bool finishRecord(File file) override;
55 virtual bool takeImage(const File& file) override;
58 virtual void invertScreenColors(bool invert) override;
60 void cleanup() override;
61 private:
62 RasterCameraRenderer* m_renderer;
63 Time m_start_record_time;
64 File m_video_record_file;
65 };
66}
Stores an angle in an optimized internal format with support for efficient trigonometric operations.
Definition Angle.h:83
Provides a modifiable pointer that has shared ownership of a dynamically allocated object.
Definition Pointer.hpp:356
Logic for reading or writing to a file as well as navigating filesystems or other common file operati...
Definition File.h:53
virtual ConstPointer< Camera > camera() const override
Returns a read-only pointer to the Camera.
PhysicalCameraView()
Default constructor for subclass use only.
An OpenGL window that renders raster camera video frames with rotation, zoom, and infrared support.
virtual void refreshInstance() override
Refresh the camera display instance.
bool startRecord(const File &file) override
Begin recording video to a file.
virtual void setRecordingState(RecordingState recording_state) override
Set the recording state (idle, recording, etc.).
void cleanup() override
Clean up OpenGL and renderer resources.
virtual bool takeImage(const File &file) override
Capture a single image to a file.
virtual void setCameraZoom(fltp08 zoom) override
Set the zoom level of the camera view.
RasterCameraView(const DynamicPointer< Camera > &camera, QWidget *parent=nullptr)
Construct with a camera design object.
virtual void setCameraRotation(Angle< fltp08 > rotation) override
Set the display rotation of the camera view.
bool finishRecord(File file) override
Finish and finalize the video recording.
RasterCameraView()
Default constructor.
virtual Angle< fltp08 > cameraRotation() override
Get the current camera rotation angle.
virtual void invertScreenColors(bool invert) override
Invert the display colors (e.g.
virtual bool setCameraSource(const StringView &connection_id) override
Connect to a camera feed by its connection identifier.
virtual QImage grabFramebuffer() override
Capture the current framebuffer as a QImage.
The core String View class for the NDEVR API.
Definition StringView.h:58
Represents a timestamp with utilities for manipulation and conversion.
Definition Time.h:62
The primary namespace for the NDEVR SDK.
double fltp08
Defines an alias representing an 8 byte floating-point number.
@ file
The source file path associated with this object.