libnmbs 1.0.0
Loading...
Searching...
No Matches
nmbs.h File Reference

Main include header for the libnmbs library. More...

#include <string>
#include <filesystem>
#include "binding.h"
#include "confidentiality_label.h"
#include "binding_information.h"
#include "expected.h"

Go to the source code of this file.

Namespaces

namespace  nmbs
 Lightweight utilities for NATO confidentiality metadata.

Functions

std::string_view nmbs::version () noexcept
 Retrieves the semantic version of the library.
void nmbs::cleanup ()
 Releases globally allocated memory and resets library state.
Expected< std::string > nmbs::write_labels (const std::filesystem::path &path, const std::vector< ConfidentialityLabel > &confidentiality_labels, std::optional< binding::ProfileSupport > binding_support=std::nullopt)
 Writes ADatP-4778 binding information using the optimal binding profile.
Expected< std::optional< binding::BindingInformation > > nmbs::read_binding (const std::filesystem::path &path, std::optional< binding::ProfileSupport > binding_support=std::nullopt)
 Reads and deserializes the ADatP-4778 binding from the specified file.
Expected< std::optional< std::string > > nmbs::read_binding_xml (const std::filesystem::path &path, std::optional< binding::ProfileSupport > binding_support=std::nullopt)
 Reads the raw XML of the ADatP-4778 binding from the specified file.
Expected< void > nmbs::remove_binding (const std::filesystem::path &path, std::optional< binding::ProfileSupport > binding_support=std::nullopt)
 Removes the ADatP-4778 binding from the specified file.

Detailed Description

Main include header for the libnmbs library.

Provides a single import for the entire nmbs namespace.

Author
Luke Ian Turner
Date
2026-06-06