libe3 0.2.5
C++ library for E3AP RAN vendor integration
Loading...
Searching...
No Matches
libe3.hpp
Go to the documentation of this file.
1/**
2 * @file libe3.hpp
3 * @brief libe3 umbrella header - includes all public headers
4 *
5 * Include this single header to get access to all libe3 functionality.
6 *
7 * SPDX-FileCopyrightText: Copyright (c) 2026 Northeastern University
8 * SPDX-License-Identifier: Apache-2.0
9 */
10
11#ifndef LIBE3_LIBE3_HPP
12#define LIBE3_LIBE3_HPP
13
14// Version information (generated from VERSION file)
15#include <libe3/version.hpp>
16
17// Core types
18#include "types.hpp"
19
20// Logging utilities
21#include "logger.hpp"
22
23// Main facade
24#include "e3_agent.hpp"
25
26// Service Model interface for custom SMs
27#include "sm_interface.hpp"
28
29namespace libe3 {
30
31/**
32 * @brief Get library version string
33 */
34inline const char* version() noexcept {
35 return LIBE3_VERSION_STRING;
36}
37
38/**
39 * @brief Get library version as integers
40 *
41 * @param[out] major Major version number
42 * @param[out] minor Minor version number
43 * @param[out] patch Patch version number
44 */
45inline void version(int& major, int& minor, int& patch) noexcept {
46 major = LIBE3_VERSION_MAJOR;
47 minor = LIBE3_VERSION_MINOR;
48 patch = LIBE3_VERSION_PATCH;
49}
50
51} // namespace libe3
52
53#endif // LIBE3_LIBE3_HPP
E3Agent - Main façade class for RAN vendors.
Logging facility for libe3.
const char * version() noexcept
Get libe3 version string.
Definition libe3.hpp:34
Service Model Interface - Extension point for RAN vendors.
E3AP Protocol Types - Vendor-neutral type definitions.