FlowEngine 8.011
Photogrammetry Software Development Kit
Loading...
Searching...
No Matches
CameraGroupManagerInterface.h
Go to the documentation of this file.
1/*
2 *
3 * C@@o ____ _____ __ _
4 * oC8@@@@@@@o |___ \| __ \ / _| |
5 * o@@@@@@@@@@@@O __) | | | | |_| | _____ __
6 * O@O 8@@@@@@@@@O |__ <| | | | _| |/ _ \ \ /\ / /
7 * o@@@@@@@O OOOOOCo ___) | |__| | | | | (_) \ V V /
8 * C@@@@@@@@@@@@Oo |____/|_____/|_| |_|\___/ \_/\_/
9 * o8@@@@@@@@@@@@@@@@8OOCCCC
10 * oO@@@@@@@@@@@@@@@@@@@o 3Dflow s.r.l. - www.3dflow.net
11 * oO8@@@@@@@@@@@@o Copyright 2024
12 * oO88@@@@@@@@8OCo All Rights Reserved
13 * O@@@@@@@@@@@@@@@@@@@@@@@@@8OCCoooooooCCo
14 * @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O
15 * @@@Oo oO8@@@@@@@@@@@@@@@@8
16 *
17 */
18
19#ifndef FLOWENGINECAMERAGROUPMANAGERINTERFACE_H
20#define FLOWENGINECAMERAGROUPMANAGERINTERFACE_H
21
22#include "CommonDef.h"
23
24namespace FlowEngine
25{
26 class CameraInterface;
27
38 {
39 public:
40
42 FLE_DLL virtual ~CameraGroupManagerInterface() = default;
43
44 public:
45
50 FLE_DLL virtual Index addGroup( Buffer< CameraInterface * > cameras ) = 0;
51
57 FLE_DLL virtual Result setReferenceGroup( Index group ) = 0;
58
68 FLE_DLL virtual Result setDistanceRelation( Index group,
69 double value,
70 double accuracy = 0 ) = 0;
71
76 FLE_DLL virtual Result setTranslationRelation( Index group,
78 ConstBuffer< double > accuracy = { } ) = 0;
79
89 FLE_DLL virtual Result setRotationRelation( Index group,
91 ConstBuffer< double > accuracy = { } ) = 0;
92
93 public:
94
96 FLE_DLL virtual Index getNumberOfGroups() const = 0;
97 };
98
102
106}
107
108#endif
#define FLOWENGINE_FACTORY
Definition: CommonDef.h:32
Class to setup camera relationships.
Definition: CameraGroupManagerInterface.h:38
virtual FLE_DLL Result setDistanceRelation(Index group, double value, double accuracy=0)=0
virtual FLE_DLL Index getNumberOfGroups() const =0
Returns the number of groups in the manager.
virtual FLE_DLL Result setReferenceGroup(Index group)=0
virtual FLE_DLL Result setTranslationRelation(Index group, ConstBuffer< double > value, ConstBuffer< double > accuracy={ })=0
virtual FLE_DLL ~CameraGroupManagerInterface()=default
Default virtual destructor.
virtual FLE_DLL Result setRotationRelation(Index group, ConstBuffer< double > value, ConstBuffer< double > accuracy={ })=0
virtual FLE_DLL Index addGroup(Buffer< CameraInterface * > cameras)=0
Definition: BoundingBoxInterface.cpp:26
std::ptrdiff_t Index
Index type.
Definition: CommonDef.h:100
FLE_DLL void DestroyCameraGroupManager(CameraGroupManagerInterface *cameraGroupManager)
Definition: CameraGroupManagerInterface.cpp:30
FLE_DLL CameraGroupManagerInterface * CreateCameraGroupManager()
Definition: CameraGroupManagerInterface.cpp:25
Result
Enumerates possible results generated by FlowEngine.
Definition: CommonDef.h:45
Holds a (mutable) non_owning pointer and a size Used to marshal memory buffers as arguments in a safe...
Definition: CommonDef.h:118
Holds a (non mutable) non_owning pointer and a count Used to marshal memory buffers as arguments in a...
Definition: CommonDef.h:191