- namespace Acl
- namespace AclLog
A namespace for logging utilities. - namespace ControlDataCommon
- namespace AclLog
- namespace fmt
- namespace spdlog
This is the multi-page printable view of this section. Click here to print.
Namespaces
- 1: Acl
- 2: Acl::AclLog
- 3: Acl::ControlDataCommon
- 4: fmt
- 5: spdlog
1 - Acl
Acl Namespace Reference
Namespaces
| Name |
|---|
| Acl::AclLog A namespace for logging utilities. |
| Acl::ControlDataCommon |
Classes
| Name | |
|---|---|
| class | Acl::ControlDataAddress A class representing an address within the control protocol. The address consists of an internal list of UUIDs, which all represent a component that needs to be passed to reach the final address. An address might end with a wildcard, which is represented by the omni UUID (i.e. all digits set to 0xF) and will then match all addresses with the same UUID sequence in the start. |
| class | Acl::ControlDataSender A ControlDataSender can send control signals to one or more receivers using a network connection. A single ControlDataSender can connect to multiple receivers, all identified by a UUID. The class is controlled using an ISystemControllerInterface; this interface is responsible for setting up connections to receivers. The ControlDataSender can send asynchronous requests to (all) the receivers and get a response back. Each response is identified with a request ID as well as the UUID of the responding receiver. The ControlDataSender can also receive status messages from the receivers. |
| class | Acl::ISystemControllerInterface An ISystemControllerInterface is the interface between a component and the System controller controlling the component. The interface allows for two-way communication between the component and the system controller by means of sending requests and getting responses. Classes deriving from the ISystemControllerInterface should provide the component side implementation of the communication with the system controller. This interface can be inherited and implemented by developers to connect to custom system controllers, or to directly control a component programmatically, without the need for connecting to a remote server. |
| class | Acl::SystemControllerConnection An implementation of the ISystemControllerInterface for a System controller residing in a remote server. The connection to the server uses a Websocket. |
| class | Acl::UUID A class holding a UUID, stored as a sequence of bytes. This class only supports version 4 variant 1 of the UUID standard. |
Functions
| Name | |
|---|---|
| std::ostream & | operator«(std::ostream & stream, const ControlDataAddress & address) Print this ControlDataAddress to an output stream, UUIDs separated with ‘:’. |
| std::ostream & | operator«(std::ostream & stream, const UUID & uuid) Print this UUID to an output stream. |
Functions Documentation
function operator«
std::ostream & operator<<(
std::ostream & stream,
const ControlDataAddress & address
)
Print this ControlDataAddress to an output stream, UUIDs separated with ‘:’.
Parameters:
- stream The stream to print to
- address The address to print
Return: Reference to the output stream
function operator«
std::ostream & operator<<(
std::ostream & stream,
const UUID & uuid
)
Print this UUID to an output stream.
Parameters:
- stream The stream to print to
Return: Reference to the output stream
2 - Acl::AclLog
Acl::AclLog Namespace Reference A namespace for logging utilities.
Classes
| Name | |
|---|---|
| class | Acl::AclLog::ThreadNameFormatterFlag |
| class | Acl::AclLog::FileLocationFormatterFlag A custom flag formatter which logs the source file location between a par of “[]”, in case the location is provided with the log call. |
Types
| Name | |
|---|---|
| enum class | Level { kTrace, kDebug, kInfo, kWarning, kError, kCritical, kOff} Log levels. |
Functions
| Name | |
|---|---|
| void | init(const std::string & name) Initialize logging. |
| void | initControlMessagesLog(const std::string & name) Init the Rendering Engine control messages log. |
| void | setLevel(Level level) Set global logging level. |
| void | logControlMessage(const std::string & origin, const std::string & controlMessage) Write to the control messages log. |
| AclLog::Level | getLogLevel() Internal helper function for getting the setting for the log level. |
| size_t | getMaxFileSize() Internal helper function for getting the setting for the maximum size for a log file. |
| size_t | getMaxLogRotations() Internal helper function for getting the setting for the maximum number of rotated log files. |
| std::filesystem::path | getLogFileFullPath(const std::string & name) Internal helper function for constructing the full path name for the log file. |
| std::string | getThreadName() |
Types Documentation
enum Level
| Enumerator | Value | Description |
|---|---|---|
| kTrace | ||
| kDebug | ||
| kInfo | ||
| kWarning | ||
| kError | ||
| kCritical | ||
| kOff |
Log levels.
Functions Documentation
function init
void init(
const std::string & name
)
Initialize logging.
Parameters:
- name The name of the component (used for log prefix and filename)
By default two sinks are created. The first sink writes messages to the console. The second sink attempts to create a log file in the path set by the environment variable ACL_LOG_PATH (’/tmp’ if unset). The name of the log file is ’name-
function initControlMessagesLog
void initControlMessagesLog(
const std::string & name
)
Init the Rendering Engine control messages log.
Parameters:
- name The name of the Rendering Engine (used for filename)
function setLevel
void setLevel(
Level level
)
Set global logging level.
Parameters:
- level Logging level to set
function logControlMessage
void logControlMessage(
const std::string & origin,
const std::string & controlMessage
)
Write to the control messages log.
Parameters:
- origin The origin of the message to log, usually the UUID of the control panel sending the message
- controlMessage The controlMessage to log
function getLogLevel
AclLog::Level getLogLevel()
Internal helper function for getting the setting for the log level.
Return: The wanted log level fetched from an environment variable if set, or else a default value
function getMaxFileSize
size_t getMaxFileSize()
Internal helper function for getting the setting for the maximum size for a log file.
Return: The wanted maximum size of the log file fetched from an environment variable if set, or else a default value
function getMaxLogRotations
size_t getMaxLogRotations()
Internal helper function for getting the setting for the maximum number of rotated log files.
Return: The wanted number of log files to rotate fetched from an environment variable if set, or else a default value
function getLogFileFullPath
std::filesystem::path getLogFileFullPath(
const std::string & name
)
Internal helper function for constructing the full path name for the log file.
Parameters:
- name The name of the component
Return: The full path to the log file
function getThreadName
inline std::string getThreadName()
3 - Acl::ControlDataCommon
Acl::ControlDataCommon Namespace Reference
Classes
| Name | |
|---|---|
| struct | Acl::ControlDataCommon::Response A response from a ControlDataReceiver to a request. The UUID tells which receiver the response is sent from. |
| struct | Acl::ControlDataCommon::StatusMessage A status message from a ControlDataReceiver. The UUID tells which receiver the message is sent from. |
| struct | Acl::ControlDataCommon::ConnectionEvent A connection related event. |
Types
| Name | |
|---|---|
| enum class uint8_t | EventType { kDisconnect, kConnect} Enum with all supported event types. |
Types Documentation
enum EventType
| Enumerator | Value | Description |
|---|---|---|
| kDisconnect | ||
| kConnect | A node has disconnected. A node has connected |
Enum with all supported event types.
4 - fmt
fmt Namespace Reference
Classes
5 - spdlog
spdlog Namespace Reference