ACF $AcfVersion:0$
Public Types | Public Member Functions | Protected Member Functions | List of all members
ilog::CTracingConfigurationComp Class Reference

Component for configuring tracing verbosity levels. More...

#include <CTracingConfigurationComp.h>

Inheritance diagram for ilog::CTracingConfigurationComp:
icomp::CComponentBase ilog::ITracingConfiguration iser::ISerializable icomp::IComponent istd::IChangeable istd::IChangeable istd::IPolymorphic istd::IPolymorphic istd::IPolymorphic

Public Types

typedef icomp::CComponentBase BaseClass
 Base class typedef.
 
- Public Types inherited from istd::IChangeable
enum  ChangeFlags {
  CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING ,
  CF_DELEGATED , CF_NO_UNDO
}
 Data model change notification flags. More...
 
enum  SupportedOperations {
  SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 ,
  SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4
}
 Flags for supported operations. More...
 
enum  CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT }
 Control how relationship betweeen objects are interpreted. More...
 
typedef QMultiMap< QByteArray, QVariant > ChangeInfoMap
 

Public Member Functions

 CTracingConfigurationComp ()
 
virtual int GetTracingLevel () const override
 Get the current tracing level.
 
virtual void SetTracingLevel (int tracingLevel) override
 Set the tracing level.
 
virtual bool Serialize (iser::IArchive &archive) override
 Load or store state of this object as a archive stream.
 
- Public Member Functions inherited from icomp::CComponentBase
 CComponentBase ()
 Create component and assign it to specific context.
 
virtual const icomp::IComponentGetParentComponent (bool ownerOnly=false) const override
 Get parent of this component.
 
virtual void * GetInterface (const istd::CClassInfo &interfaceType, const QByteArray &subId="") override
 Get access to specified component interface.
 
virtual IComponentContextSharedPtr GetComponentContext () const override
 Get access to component context describing all application-specified component information loaded from components registry.
 
virtual void SetComponentContext (const IComponentContextSharedPtr &contextPtr, const icomp::IComponent *parentPtr, bool isParentOwner) override
 Set component context of this component.
 
- Public Member Functions inherited from istd::IPolymorphic
virtual ~IPolymorphic ()
 
- Public Member Functions inherited from istd::IChangeable
virtual int GetSupportedOperations () const
 Get set of flags for supported operations.
 
virtual bool CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS)
 Copy this object from another one.
 
virtual bool IsEqual (const IChangeable &object) const
 Compare this object with another object.
 
virtual istd::TUniqueInterfacePtr< istd::IChangeableCloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const
 Make a copy of this object.
 
virtual bool ResetData (CompatibilityMode mode=CM_WITHOUT_REFS)
 Reset data to its default state.
 
virtual void BeginChanges (const ChangeSet &changeSet)
 Starts the change transaction.
 
virtual void EndChanges (const ChangeSet &changeSet)
 Ends the change transaction.
 
virtual void BeginChangeGroup (const ChangeSet &changeSet)
 Starts group of changes.
 
virtual void EndChangeGroup (const ChangeSet &changeSet)
 Ends group of changes.
 
- Public Member Functions inherited from iser::ISerializable
virtual quint32 GetMinimalVersion (int versionId) const
 Get minimal needed version to correct storing of this data.
 

Protected Member Functions

virtual void OnComponentCreated () override
 
- Protected Member Functions inherited from icomp::CComponentBase
bool IsComponentActive () const
 Check if component is active.
 
virtual void OnComponentDestroyed ()
 
virtual const icomp::IRealComponentStaticInfoGetComponentStaticInfo () const =0
 Get access to static info of this component.
 
- Protected Member Functions inherited from istd::IChangeable
virtual void OnBeginChanges ()
 Callback function for begin change event.
 
virtual void OnEndChanges (const ChangeSet &changeSet)
 Callback function for end change event.
 

Additional Inherited Members

- Static Public Member Functions inherited from istd::IChangeable
static const ChangeSetGetNoChanges ()
 Get empty set of changes.
 
static const ChangeSetGetAnyChange ()
 Get anonymous change set.
 
static const ChangeSetGetAllChanges ()
 Get anonymous change set.
 
static const ChangeSetGetDelegatedChanges ()
 Get delegated change set.
 
- Static Protected Member Functions inherited from icomp::CComponentBase
static const icomp::IRealComponentStaticInfoInitStaticInfo (IComponent *componentPtr)
 
static QByteArray GetComponentId (const icomp::IComponentContext *componentContextPtr, const QByteArray &contextId=QByteArray())
 

Detailed Description

Component for configuring tracing verbosity levels.

CTracingConfigurationComp provides a component-based implementation of ITracingConfiguration, allowing runtime control of verbose logging output. It integrates with the component system for serialization and configuration.

This component is typically referenced by TLoggerCompWrap-based components through their "TracingConfiguration" reference, allowing centralized control of verbosity across multiple components.

Features
  • Runtime tracing level control (-1=off, 0=all, N=selective)
  • Serialization support for persistent configuration
  • Change notification when tracing level changes
  • Default level configuration via component attribute
Configuration
Component attributes:
  • DefaulTracingtLevel: Initial tracing level (default: -1 = disabled)
    • -1: Tracing disabled
    • 0: Enable all verbose messages
    • 1+: Enable messages with level <= value

Component interfaces:

Usage Example
// Create tracing configuration
// Configure default level (or via .acc: DefaulTracingtLevel: 1)
tracing->SetTracingLevel(1); // Enable levels 0 and 1
// Components reference this for tracing control
// In .acc for components:
// <Reference Id="TracingConfiguration" Value="GlobalTracing"/>
// Runtime control
tracing->SetTracingLevel(0); // Enable all tracing
tracing->SetTracingLevel(-1); // Disable all tracing
Component for configuring tracing verbosity levels.
Shared ownership smart pointer for interface types.
Component Configuration
<Component Id="GlobalTracing" Class="ilog::CTracingConfigurationComp">
<Attribute Id="DefaulTracingtLevel" Value="1"/>
</Component>
<Component Id="MyComponent" Class="MyComponentClass">
<Reference Id="TracingConfiguration" Value="GlobalTracing"/>
</Component>
Integration with TLoggerCompWrap
Components using TLoggerCompWrap automatically use the tracing configuration:
class MyComp : public ilog::CLoggerComponentBase
{
public:
void Process() {
// Only logged if tracing level >= 0
SendVerboseMessage("Processing started", QString(), 0);
// Only logged if tracing level >= 1
if (IsVerboseEnabled(1)) {
SendVerboseMessage("Detailed step", QString(), 1);
}
}
};
Template wrapper adding comprehensive logging functionality to components.
See also
ilog::ITracingConfiguration, ilog::TLoggerCompWrap

Definition at line 94 of file CTracingConfigurationComp.h.

Member Typedef Documentation

◆ BaseClass

Base class typedef.

Definition at line 101 of file CTracingConfigurationComp.h.

Constructor & Destructor Documentation

◆ CTracingConfigurationComp()

ilog::CTracingConfigurationComp::CTracingConfigurationComp ( )

Member Function Documentation

◆ GetTracingLevel()

virtual int ilog::CTracingConfigurationComp::GetTracingLevel ( ) const
overridevirtual

Get the current tracing level.

Returns the currently configured tracing verbosity level.

Returns
Current tracing level:
  • -1 = tracing disabled
  • 0 = trace all verbose messages
  • N = trace messages with level <= N
Example
int level = tracing->GetTracingLevel();
if (level >= 0) {
qDebug() << "Tracing enabled at level" << level;
}
else {
qDebug() << "Tracing disabled";
}
See also
SetTracingLevel()

Implements ilog::ITracingConfiguration.

◆ OnComponentCreated()

virtual void ilog::CTracingConfigurationComp::OnComponentCreated ( )
overrideprotectedvirtual

Reimplemented from icomp::CComponentBase.

◆ Serialize()

virtual bool ilog::CTracingConfigurationComp::Serialize ( iser::IArchive archive)
overridevirtual

Load or store state of this object as a archive stream.

Type of operation is depending on archive type.

See also
iser::IArchive

Implements iser::ISerializable.

◆ SetTracingLevel()

virtual void ilog::CTracingConfigurationComp::SetTracingLevel ( int  tracingLevel)
overridevirtual

Set the tracing level.

Changes the current tracing verbosity level. This affects which verbose messages will be output by components using TLoggerCompWrap.

Observers are notified of the change through the IChangeable interface.

Parameters
tracingLevelNew tracing level:
  • -1 = disable tracing (default)
  • 0 = enable all verbose messages
  • N = enable messages with level <= N
Example
// Disable all tracing
tracing->SetTracingLevel(-1);
// Enable all tracing (maximum verbosity)
tracing->SetTracingLevel(0);
// Enable selective tracing (levels 0 and 1)
tracing->SetTracingLevel(1);
See also
GetTracingLevel()

Implements ilog::ITracingConfiguration.


The documentation for this class was generated from the following file: