3 #include "../global.hpp" 5 #include "value_node.hpp" 8 #include "_detail/iconfigurable_category_node.hpp" 22 ,
public Private::IConfigurableCategoryNode
40 CExports::GEVSRV handle =
nullptr;
41 handle = CExports::CreateGSCategoryNodeTyped(name.data(), static_cast<CExports::TGSNamespace>(nameSpace));
43 HandleGuard<Node> guard(handle);
44 return std::make_shared<CategoryNode>(std::move(guard));
80 auto bufferSize = NativeCall<size_t>([&](
size_t &size) {
81 return CExports::GSNGetInfoAsStringTyped(
82 Handle(), CExports::TGSNodeInfo::GSNI_Alias, reinterpret_cast<Char *>(0), size);
85 bufferSize +=
sizeof(
Char);
88 return CExports::GSNGetInfoAsStringTyped(
89 Handle(), CExports::TGSNodeInfo::GSNI_Alias, buffer.data(), bufferSize);
String ToString() const override
Gets the value of the alias node, if any is present. Empty string otherwise.
Definition: category_node.hpp:78
Base class for all nodes that have a value.
Definition: value_node.hpp:27
Cvb::GenApi::CacheMode CacheMode() const noexcept override
Nothing to cache here.
Definition: category_node.hpp:105
static String ParseName(const String &name)
Gets the name part of the given node name .
Definition: decl_node.hpp:606
Node that logically groups other nodes.
Definition: category_node.hpp:19
static CategoryNodePtr Create(const String &name)
Creates a new CategoryNode with the given name .
Definition: category_node.hpp:60
static GevServer::Namespace ParseNamespace(const String &name)
Gets the Namespace from the given name .
Definition: decl_node.hpp:584
Namespace
The possible name spaces a node can be in.
Definition: gevserver.hpp:147
void FromString(const String &value) override
Not supported.
Definition: category_node.hpp:67
Only read operations are validated.
Root namespace for the Image Manager interface.
Definition: version.hpp:11
Node is a string node (no reg).
char Char
Character type for wide characters or unicode characters.
Definition: string.hpp:59
static CategoryNodePtr Create(const String &name, const GevServer::Namespace &nameSpace)
Creates a new CategoryNode with the given name and nameSpace .
Definition: category_node.hpp:38
bool IsStreamable() const override
Categories are never streamable.
Definition: category_node.hpp:118
std::chrono::duration< Rep, Period > PollingTime() const noexcept
Nothing to poll.
Definition: category_node.hpp:112
GenApi::AccessMode AccessMode() const noexcept override
Categories are always read only.
Definition: category_node.hpp:99
std::vector< NodePtr > Nodes() const
Gets the nodes categorized by this node.
Definition: category_node.hpp:130
void SetIsStreamable(const std::int64_t &) override
Sets whether this node should be used when the camera settings are stored.
Definition: category_node.hpp:120
void * Handle() const noexcept
Classic API node handle.
Definition: decl_node.hpp:101
CacheMode
Defines how the value is cached.
Definition: genapi.hpp:219
AccessMode
Access possibility of the node.
Definition: genapi.hpp:184