ADTF  3.16.2
samplelog_intf.h
Go to the documentation of this file.
1 
7 #pragma once
8 
9 #include <adtfucom3/adtf_ucom3.h>
10 
11 namespace adtf
12 {
13 namespace streaming
14 {
15 namespace ant
16 {
17 
32 {
33  protected:
35  ~ISampleLog() = default;
36  public:
38  ADTF_IID(ISampleLog, "samplelog.ant.streaming.adtf.iid");
39  public:
43  typedef enum : uint8_t
44  {
72 
74  typedef uint32_t tSampleLogEntryEventID;
76  typedef uint64_t tSampleLogEntryCreatorID;
78  typedef int32_t tSampleLogEntryThreadID;
81  typedef uint64_t tSampleLogEntryProcessID;
82 
84  typedef struct
85  {
89  int32_t i32Counter;
91 
95  typedef struct
96  {
109  const void* pAdditionalDataRef;
112  } tSampleLogEntry;
113 
114  #pragma pack(push)
115  #pragma pack(4)
120  typedef struct
121  {
131  #pragma pack(pop)
132 
137  {
138  public:
147  virtual tResult GetIt(const tSampleLogEntry& sLogEntry) = 0;
148  };
149 
157  virtual tResult EnableLogging(const uint8_t& ui8Level) = 0;
158 
163  virtual tResult ClearLog() = 0;
164 
170  virtual tResult SetSampleID(const ISampleLog::tSampleLogSampleID& sSampleID) = 0;
171 
177 
193  virtual tResult AddLogEntry(const ISampleLog::tSampleLogEntry& sLogEntry) = 0;
194 
210  virtual tResult GetLogEntries(ISampleLog::IGetLogEntryCallback& pGetCallback) const = 0;
211 };
212 
213 
214 
215 } //namespace ant
216 } //namespace streaming
217 } // namespace adtf
Copyright © Audi Electronics Venture GmbH.
A common result class usable as return value throughout.
Used class to callback within the the ISampleLog::GetLogEntries.
virtual tResult GetIt(const tSampleLogEntry &sLogEntry)=0
Needs to be implemented to get Entries via ISampleLog::GetLogEntries call.
The ISampleLog interface defines an interface to trace and store Sample data- and timing flow.
virtual tResult GetLogEntries(ISampleLog::IGetLogEntryCallback &pGetCallback) const =0
Returns all current LogEntries to the given pGetCallback implementation.
virtual ISampleLog::tSampleLogSampleID GetSampleID() const =0
Returns a value of the SampleID.
~ISampleLog()=default
not destructable
uint64_t tSampleLogEntryProcessID
The Log Entry Process ID will be unique in current system.
eSampleLogEntryEventID
Enumeration for Info index.
@ MSLEE_ReceiveFinishedEvent
Sample Buffer was received on a Pin (receiving completed).
@ MSLEE_CreateEvent
Sample Buffer was created.
@ MSLEE_ReceiveEvent
Sample Buffer is about to be received on a Pin.
@ MSLEE_LogUserOffset
This is a Info Offset.
@ MSLEE_TransmitReceiveState
Sample Buffer is about to be transmitted via Pin.
@ MSLEE_ReadEvent
Sample Buffer was read (not in use yet).
@ MSLEE_TransmitFinishedEvent
Sample Buffer was transmitted via Pin (transmission completed).
@ MSLEE_SomethingEvent
Something happened Event this event is only for place holder issues.
@ MSLEE_TransmitEvent
Sample Buffer is about to be transmitted via Pin.
@ MSLEE_WriteEvent
Sample Buffer was written or overwritten (not in use yet).
uint32_t tSampleLogEntryEventID
The Log Entry Event ID is defined by eSampleLogEntryEventID.
virtual tResult AddLogEntry(const ISampleLog::tSampleLogEntry &sLogEntry)=0
Adds a Log Entry.
ADTF_IID(ISampleLog, "samplelog.ant.streaming.adtf.iid")
definiton of interface id
virtual tResult EnableLogging(const uint8_t &ui8Level)=0
Enable the LogLevel.
uint64_t tSampleLogEntryCreatorID
The Log Entry Creator ID will be unique in current system.
int32_t tSampleLogEntryThreadID
The Log Entry Thread ID will be unique in current system.
virtual tResult ClearLog()=0
Clears the current Log!
virtual tResult SetSampleID(const ISampleLog::tSampleLogSampleID &sSampleID)=0
Sets the value of the Sample.
Base class for every interface type within the uCOM.
Definition: object_intf.h:31
Namespace for entire ADTF SDK.
tInt64 tTimeStamp
type definition for a time value.
Structure for one SampleLog Entry.
size_t szAdditionalDataSize
additional information buffer size in bytes.
tSampleLogEntryThreadID i32ThreadID
the thread ID where the log was made.
tSampleLogEntryEventID ui32EventID
the event ID
tSampleLogEntryProcessID ui64ProcID
the process ID where the log was made.
tTimeStamp tmEntryTime
the stream time when the log was made.
tSampleLogEntryCreatorID ui64LogCreatorID
the unique ID of the log entry creator (commonly you can receive one by calling IKernelInfoExtended::...
const void * pAdditionalDataRef
additional information buffer reference for the entry depending on ui32EventID.
Sample ID to assure uniqueness of samples in system.
tSampleLogEntryCreatorID ui64LogCreatorID
Sample ID Part One.
Storage structure for the Additional info buffer of an MSLEE_TransmitReceiveState.
tSampleLogEntryEventID ui32EventID
last log event happened on the ui64LogCreatorID.
tSampleLogSampleID sSampleId
sample id last logged on the ui64LogCreatorID.
tSampleLogEntryCreatorID ui64LogCreatorID
Log creator ID of the receive state.