Files
qt6-migration-pipeline/external/rti_connext_dds-7.7.0/include/ndds/reda/reda_log.h
T
torstenandCopilot 342ffd3e5c Update submodule to latest BUILD_RTI fixes
- HandlerMinelayerData: BUILD_RTI Guards für RTI-Abhängigkeiten
- svcTabCommon: Export-Header-Fix via Fallback-Target
- TrainingAreaBase: Stub-Header für BUILD_RTI=OFF
- ddsfts: Include-Pfad und Dependency-Fixes
- BUILD_RTI=OFF Compilation vollständig unterstützt

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M0JNZA586SACX1PRZ2DJAE5S
2026-08-21 19:30:20 +02:00

332 lines
10 KiB
C

/*
* (c) Copyright, Real-Time Innovations, 2002-2026.
* All rights reserved.
* No duplications, whole or partial, manual or electronic, may be made
* without express written permission. Any such copies, or
* revisions thereof, must display this notice unaltered.
* This code contains trade secrets of Real-Time Innovations, Inc.
*/
#ifndef reda_log_h
#define reda_log_h
#include "reda/reda_dll.h"
#include "log/log_common.h"
#ifdef __cplusplus
extern "C" {
#endif
/*e \file
* @brief Data structures on which the entire Waveworks is built
*/
/*e \mainpage
* utility library written in C that implements programming
* patterns that have been optimized for real-time environments.
*
* REDA is composed of sevaral packages handling buffers,
* thread-specific storage, concurent table access. etc. The packages
* and their interdependencies are illustrated below:
*
* \image html REDA_Dependencies.jpg "REDA modules and their dependencies"
*/
/*e \defgroup REDAModule REDA
* \ingroup RTI
* \brief Real-time Efficient Data-structures and Algorithms.
*/
/*e \defgroup REDALogClass REDALog
* \ingroup REDAModule
* \brief integrated logging
*
* NOTE: When a new submodule is added to REDA, it must be given
* a number and entered here. Because of the use of this id
* for logging, there are 16 submodule id's: 0x0000, 0x1000,...
* ..., 0xF000.
* It is suggested we put the modules here in an order that
* respects their dependencies: modules with a lower number
* cannot depend on modules with a higher number.
*/
#define SUBMODULE_REDA_BUFFER (0 << 10)
#define SUBMODULE_REDA_FAST_BUFFER (1 << 10)
#define SUBMODULE_REDA_EPOCH (2 << 10)
#define SUBMODULE_REDA_SEQUENCE_NUMBER (3 << 10)
#define SUBMODULE_REDA_INLINE_LIST (4 << 10)
#define SUBMODULE_REDA_CONCURRENT_QUEUE (5 << 10)
#define SUBMODULE_REDA_HASH (6 << 10)
#define SUBMODULE_REDA_ORDERED_DATA_TYPE (7 << 10)
#define SUBMODULE_REDA_WORKER (8 << 10)
#define SUBMODULE_REDA_SKIPLIST (9 << 10)
#define SUBMODULE_REDA_HASHED_SKIPLIST (10 << 10)
#define SUBMODULE_REDA_TABLE (11 << 10)
#define SUBMODULE_REDA_DATABASE (12 << 10)
#define SUBMODULE_REDA_STRING (13 << 10)
#define SUBMODULE_REDA_DBSHELL (14 << 10)
#define SUBMODULE_REDA_INLINE_MEMORY (15 << 10)
#define SUBMODULE_REDA_GENERIC (16 << 10)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDABuffer
@see REDABuffer
*/
#define REDA_SUBMODULE_MASK_BUFFER (0x0001)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAFastBuffer
@see REDAFastBuffer
*/
#define REDA_SUBMODULE_MASK_FAST_BUFFER (0x0002)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAEpoch
@see REDAEpoch
*/
#define REDA_SUBMODULE_MASK_EPOCH (0x0004)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDASequenceNumber
@see REDASequenceNumber
*/
#define REDA_SUBMODULE_MASK_SEQUENCE_NUMBER (0x0008)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAInlineList
@see REDAInlineList
*/
#define REDA_SUBMODULE_MASK_INLINE_LIST (0x0010)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from
REDAConcurrentQueue
@see REDAConcurrentQueue
*/
#define REDA_SUBMODULE_MASK_CONCURRENT_QUEUE (0x0020)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAHash
@see REDAHash
*/
#define REDA_SUBMODULE_MASK_HASH (0x0040)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from
REDAOrderedDataType
@see REDAOrderedDataType
*/
#define REDA_SUBMODULE_MASK_ORDERED_DATA_TYPE (0x0080)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAWorker,
REDAWorkerManager or REDAExclusiveArea
@see REDAWorker REDAWorkerManager REDAExclusiveArea
*/
#define REDA_SUBMODULE_MASK_WORKER (0x0100)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDASkiplist
@see REDASkiplist
*/
#define REDA_SUBMODULE_MASK_SKIPLIST (0x0200)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAHashedSkiplist
@see REDAHashedSkiplist
*/
#define REDA_SUBMODULE_MASK_HASHED_SKIPLIST (0x0400)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDATable
or REDAWeakReference
@see REDATable REDAWeakReference
*/
#define REDA_SUBMODULE_MASK_TABLE (0x0800)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDADatabase
@see REDADatabase RTIEventActiveDatabase
*/
#define REDA_SUBMODULE_MASK_DATABASE (0x1000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAString
@see REDAString
*/
#define REDA_SUBMODULE_MASK_STRING (0x2000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDADBShell
@see REDADBShell
*/
#define REDA_SUBMODULE_MASK_DBSHELL (0x4000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAUtils
@see REDAUtils
*/
#define REDA_SUBMODULE_MASK_UTILS (0x8000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDABloomFilter
@see REDABloomFilter
*/
#define REDA_SUBMODULE_MASK_BLOOM_FILTER (0x10000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDAHashedSkiplist
@see REDAHashedSkiplist
*/
#define REDA_SUBMODULE_MASK_INLINE_MEMORY (0x20000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from
REDAPluggableMemoryAllocator
@see REDAPluggableMemoryAllocator
*/
#define REDA_SUBMODULE_MASK_PLUGGABLE_MEMORY_ALLOCATOR (0x40000)
/*e \ingroup REDALogClass
\brief Turn off this bit if you don't want log coming from REDASharedPointer
@see REDASharedPointer
*/
#define REDA_SUBMODULE_MASK_SHARED_POINTER (0x80000)
/*e \ingroup REDALogClass
\brief Convenient way to say "log all submodules"
*/
#define REDA_SUBMODULE_MASK_ALL RTI_LOG_SUBMODULE_MASK_ALL
/*e \ingroup REDALogClass
\brief Log message when concurrent queue write failed.
Most likely, the reader forgot to release the zero copy buffer.
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CONCURRENT_QUEUE_START_WRITE_FAILURE;
/*e \ingroup REDALogClass
\brief Log message when failure to take or give exclusive area.
Most likely, the deadlock possibility (not certainly) occured, or
the exclusive area level was breached.
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_WORKER_EXCLUSIVE_AREA_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to get handle to a thread specific
object that is supposed to have been created already.
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_WORKER_GET_OBJECT_FAILURE;
/*e \ingroup REDALogClass
\brief Log message when failed to create a thread specific object
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_WORKER_CREATE_OBJECT_FAILURE;
/*e \ingroup REDALogClass
* @brief Log message when error associating the worker with the Activity
* Context.
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_WORKER_ASSOCIATE_ACTIVITY_CONTEXT_FAILURE_s;
/*e \ingroup REDALogClass
* @brief Log message when error storing the worker in the TSS.
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_WORKER_STORE_TSS_FAILURE_s;
/*e \ingroup REDALogClass
* @brief Log message when error associating the worker with the thread.
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_WORKER_ASSOCIATE_THREAD_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to copy the read write area of a record
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_COPY_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to get a weak reference to a record
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_CREATE_WR_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to go to a record given a key
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_GOTO_KEY_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to go to a record given a weak record
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_GOTO_WR_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to lock a table
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_LOCK_TABLE_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to modify the read write area of a record
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_MODIFY_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to remove a record from a table
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_REMOVE_RECORD_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to remove a table from the database
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_REMOVE_TABLE_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to start a view of table
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_START_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to get key
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_GET_KEY_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to get read only area
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_GET_READ_ONLY_AREA_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to get weak reference
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_CURSOR_GET_WR_FAILURE_s;
/*e \ingroup REDALogClass
\brief Log message when failed to create a table in a database
*/
extern REDADllVariable const struct RTILogMessage
REDA_LOG_DATABASE_CREATE_TABLE_FAILURE_s;
#ifdef __cplusplus
} /* extern "C" */
#endif
#include "reda/reda_log_impl.h"
#endif /* reda_log_h */