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 Main header for libe3 - E3AP Protocol Library
4 *
5 * Include this header to get access to all public libe3 APIs.
6 *
7 * SPDX-FileCopyrightText: Copyright (c) 2026 Northeastern University
8 * SPDX-License-Identifier: Apache-2.0
9 */
10
11#ifndef LIBE3_HPP
12#define LIBE3_HPP
13
14// Version information (generated from VERSION file)
15#include "libe3/version.hpp"
16
17// Core types
18#include "libe3/types.hpp"
19
20// Main facade (the only class RAN vendors need to use)
21#include "libe3/e3_agent.hpp"
22
23// Service Model interface (for implementing custom SMs)
25
26// Logging (optional - for custom log integration)
27#include "libe3/logger.hpp"
28
29namespace libe3 {
30
31/**
32 * @brief Get libe3 version string
33 */
34inline const char* version() noexcept {
35 return LIBE3_VERSION_STRING;
36}
37
38/**
39 * @brief Get libe3 version as components
40 */
41inline void version(int& major, int& minor, int& patch) noexcept {
42 major = LIBE3_VERSION_MAJOR;
43 minor = LIBE3_VERSION_MINOR;
44 patch = LIBE3_VERSION_PATCH;
45}
46
47} // namespace libe3
48
49#endif // 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.