IRSOL
C++ code implementing socket server for interacting with Baumer camera.
discovery.hpp
Go to the documentation of this file.
1
8#pragma once
9
11
12#include <map>
13#include <vector>
14
15namespace irsol {
16namespace camera {
17namespace internal {
18
25{
26 UNSET = 0,
27 NOT_AVAILABLE = (1u << 0),
28 AVAILABLE = (1u << 1),
29 READABLE = (1u << 2),
30 WRITABLE = (1u << 3)
31};
32
97
108std::map<FeaturePermissions, std::vector<NeoAPI::Feature*>> extractCameraFeatures(NeoAPI::Cam& cam);
109
110} // namespace internal
111
123std::string discoverCameraFeatures(Interface& cam);
124
125} // namespace camera
126} // namespace irsol
High-level wrapper around NeoAPI camera control for the irsol library.
FeaturePermissionValue
Enumeration for feature permission bit flags.
Definition discovery.hpp:25
@ NOT_AVAILABLE
Feature is not available.
Definition discovery.hpp:27
@ AVAILABLE
Feature is available.
Definition discovery.hpp:28
@ UNSET
Permission state not set.
Definition discovery.hpp:26
@ READABLE
Feature is readable.
Definition discovery.hpp:29
@ WRITABLE
Feature is writable.
Definition discovery.hpp:30
std::map< FeaturePermissions, std::vector< NeoAPI::Feature * > > extractCameraFeatures(NeoAPI::Cam &cam)
Extracts and groups camera features by their permissions.
Definition discovery.cpp:15
std::string discoverCameraFeatures(Interface &cam)
Discovers all camera features and their permissions.
Definition discovery.cpp:47
Encapsulates the permissions of a camera feature.
Definition discovery.hpp:40
bool isAvailable() const
Checks if the feature is available.
Definition discovery.hpp:61
FeaturePermissionValue value
Combined permission flags.
Definition discovery.hpp:41
bool isReadable() const
Checks if the feature is readable.
Definition discovery.hpp:70
bool isWritable() const
Checks if the feature is writable.
Definition discovery.hpp:79
bool operator<(const FeaturePermissions &other) const
Comparison operator for ordering FeaturePermissions.
Definition discovery.hpp:92
FeaturePermissions(bool isAvailable, bool isReadable, bool isWritable)
Constructs FeaturePermissions from boolean flags.
Definition discovery.hpp:50