AJA NTV2 SDK  18.0.0.2717
NTV2 SDK 18.0.0.2717
dxmperf.h File Reference
#include "perfstruct.h"
#include "perflog.h"
Include dependency graph for dxmperf.h:

Go to the source code of this file.

Macros

#define DXMPERF_VIDEOREND   0x00000001
 
#define DXMPERF_AUDIOGLITCH   0x00000002
 
#define AUDIOBREAK_BIT   0x00000010
 
#define DXMPERF_AUDIORECV   0x00000020
 
#define DXMPERF_AUDIOSLAVE   0x00000040
 
#define DXMPERF_AUDIOBREAK   0x00000080
 
#define PERFLOG_CTOR(name, iface)
 
#define PERFLOG_DTOR(name, iface)
 
#define PERFLOG_DELIVER(name, source, dest, sample, pmt)
 
#define PERFLOG_RECEIVE(name, source, dest, sample, pmt)
 
#define PERFLOG_RUN(name, iface, time, oldstate)
 
#define PERFLOG_PAUSE(name, iface, oldstate)
 
#define PERFLOG_STOP(name, iface, oldstate)
 
#define PERFLOG_JOINGRAPH(name, iface, graph)
 
#define PERFLOG_GETBUFFER(allocator, sample)
 
#define PERFLOG_RELBUFFER(allocator, sample)
 
#define PERFLOG_CONNECT(connector, connectee, status, pmt)
 
#define PERFLOG_RXCONNECT(connector, connectee, status, pmt)
 
#define PERFLOG_DISCONNECT(disconnector, disconnectee, status)
 
#define PERFLOG_GETTIME(clock, time)
 
#define PERFLOG_AUDIOREND(clocktime, sampletime, psample, bytetime, cbytes)
 
#define PERFLOG_AUDIORECV(StreamTime, SampleStart, SampleStop, Discontinuity, Duration)
 
#define PERFLOG_AUDIOSLAVE(MasterClock, SlaveClock, ErrorAccum, LastHighErrorSeen, LastLowErrorSeen)
 
#define PERFLOG_AUDIOADDBREAK(IterNextWrite, OffsetNextWrite, IterWrite, OffsetWrite)
 
#define PERFLOG_VIDEOREND(sampletime, clocktime, psample)
 
#define PERFLOG_AUDIOGLITCH(instance, glitchtype, currenttime, previoustime)
 
#define PERFLOG_FRAMEDROP(sampletime, clocktime, psample, renderer)
 
#define PERFLOG_AUDIOBREAK(nextwrite, writepos, msecs)
 

Functions

ULONGLONG _RDTSC (void)
 
VOID PERFLOG_STREAMTRACE (ULONG Level, ULONG Id, ULONGLONG DShowClock, ULONGLONG Data1, ULONGLONG Data2, ULONGLONG Data3, ULONGLONG Data4)
 

Macro Definition Documentation

◆ AUDIOBREAK_BIT

#define AUDIOBREAK_BIT   0x00000010

Definition at line 53 of file dxmperf.h.

◆ DXMPERF_AUDIOBREAK

#define DXMPERF_AUDIOBREAK   0x00000080

Definition at line 56 of file dxmperf.h.

◆ DXMPERF_AUDIOGLITCH

#define DXMPERF_AUDIOGLITCH   0x00000002

Definition at line 49 of file dxmperf.h.

◆ DXMPERF_AUDIORECV

#define DXMPERF_AUDIORECV   0x00000020

Definition at line 54 of file dxmperf.h.

◆ DXMPERF_AUDIOSLAVE

#define DXMPERF_AUDIOSLAVE   0x00000040

Definition at line 55 of file dxmperf.h.

◆ DXMPERF_VIDEOREND

#define DXMPERF_VIDEOREND   0x00000001

Definition at line 48 of file dxmperf.h.

◆ PERFLOG_AUDIOADDBREAK

#define PERFLOG_AUDIOADDBREAK (   IterNextWrite,
  OffsetNextWrite,
  IterWrite,
  OffsetWrite 
)
Value:
PERFINFO_WMI_AUDIOADDBREAK perfData; \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_AUDIOADDBREAK; \
perfData.data.iterNextWrite = IterNextWrite; \
perfData.data.offsetNextWrite = OffsetNextWrite; \
perfData.data.iterWrite = IterWrite; \
perfData.data.offsetWrite = OffsetWrite; \
PerflogTraceEvent((PEVENT_TRACE_HEADER) &perfData); \
}

Definition at line 106 of file dxmperf.h.

◆ PERFLOG_AUDIOBREAK

#define PERFLOG_AUDIOBREAK (   nextwrite,
  writepos,
  msecs 
)
Value:
PERFINFO_WMI_AUDIOBREAK perfData; \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_AUDIOBREAK; \
perfData.data.cycleCounter = _RDTSC(); \
perfData.data.dshowClock = (writepos); \
perfData.data.sampleTime = (nextwrite); \
perfData.data.sampleDuration = (msecs); \
PerflogTraceEvent ((PEVENT_TRACE_HEADER) &perfData); \
} \

Definition at line 168 of file dxmperf.h.

◆ PERFLOG_AUDIOGLITCH

#define PERFLOG_AUDIOGLITCH (   instance,
  glitchtype,
  currenttime,
  previoustime 
)
Value:
PERFINFO_WMI_AUDIOGLITCH perfData; \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_DSOUNDGLITCH; \
perfData.data.cycleCounter = _RDTSC(); \
perfData.data.glitchType = (glitchtype); \
perfData.data.sampleTime = (currenttime); \
perfData.data.previousTime = (previoustime); \
perfData.data.instanceId = (instance); \
PerflogTraceEvent ((PEVENT_TRACE_HEADER) &perfData); \
}

Definition at line 133 of file dxmperf.h.

◆ PERFLOG_AUDIORECV

#define PERFLOG_AUDIORECV (   StreamTime,
  SampleStart,
  SampleStop,
  Discontinuity,
  Duration 
)
Value:
PERFINFO_WMI_AUDIORECV perfData; \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_AUDIORECV; \
perfData.data.streamTime = StreamTime; \
perfData.data.sampleStart = SampleStart; \
perfData.data.sampleStop = SampleStop; \
perfData.data.discontinuity = Discontinuity; \
perfData.data.hwduration = Duration; \
PerflogTraceEvent((PEVENT_TRACE_HEADER) &perfData); \
}

Definition at line 76 of file dxmperf.h.

◆ PERFLOG_AUDIOREND

#define PERFLOG_AUDIOREND (   clocktime,
  sampletime,
  psample,
  bytetime,
  cbytes 
)
Value:
/*{ \
PERFINFO_WMI_AVREND perfData; \
if (NULL != g_pTraceEvent) { \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_AUDIOREND; \
perfData.data.cycleCounter = _RDTSC(); \
perfData.data.dshowClock = (clocktime); \
perfData.data.sampleTime = (sampletime); \
if (g_perfMasks[AUDIOREND_INDEX] & AUDIOREND_BIT) \
(*g_pTraceEvent)( g_traceHandle, (PEVENT_TRACE_HEADER) &perfData ); \
} \
}*/

Definition at line 74 of file dxmperf.h.

◆ PERFLOG_AUDIOSLAVE

#define PERFLOG_AUDIOSLAVE (   MasterClock,
  SlaveClock,
  ErrorAccum,
  LastHighErrorSeen,
  LastLowErrorSeen 
)
Value:
PERFINFO_WMI_AUDIOSLAVE perfData; \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_AUDIOSLAVE; \
perfData.data.masterClock = MasterClock; \
perfData.data.slaveClock = SlaveClock; \
perfData.data.errorAccum = ErrorAccum; \
perfData.data.lastHighErrorSeen = LastHighErrorSeen;\
perfData.data.lastLowErrorSeen = LastLowErrorSeen; \
PerflogTraceEvent((PEVENT_TRACE_HEADER) &perfData); \
}

Definition at line 91 of file dxmperf.h.

◆ PERFLOG_CONNECT

#define PERFLOG_CONNECT (   connector,
  connectee,
  status,
  pmt 
)

Definition at line 68 of file dxmperf.h.

◆ PERFLOG_CTOR

#define PERFLOG_CTOR (   name,
  iface 
)

Definition at line 58 of file dxmperf.h.

◆ PERFLOG_DELIVER

#define PERFLOG_DELIVER (   name,
  source,
  dest,
  sample,
  pmt 
)

Definition at line 60 of file dxmperf.h.

◆ PERFLOG_DISCONNECT

#define PERFLOG_DISCONNECT (   disconnector,
  disconnectee,
  status 
)

Definition at line 70 of file dxmperf.h.

◆ PERFLOG_DTOR

#define PERFLOG_DTOR (   name,
  iface 
)

Definition at line 59 of file dxmperf.h.

◆ PERFLOG_FRAMEDROP

#define PERFLOG_FRAMEDROP (   sampletime,
  clocktime,
  psample,
  renderer 
)
Value:
/*{ \
PERFINFO_WMI_FRAMEDROP perfData; \
if (NULL != g_pTraceEvent) { \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_FRAMEDROP; \
perfData.data.cycleCounter = _RDTSC(); \
perfData.data.dshowClock = (clocktime); \
perfData.data.frameTime = (sampletime); \
if (g_perfMasks[FRAMEDROP_INDEX] & FRAMEDROP_BIT) \
(*g_pTraceEvent)( g_traceHandle, (PEVENT_TRACE_HEADER) &perfData ); \
} \
}*/

Definition at line 148 of file dxmperf.h.

◆ PERFLOG_GETBUFFER

#define PERFLOG_GETBUFFER (   allocator,
  sample 
)

Definition at line 66 of file dxmperf.h.

◆ PERFLOG_GETTIME

#define PERFLOG_GETTIME (   clock,
  time 
)
Value:
/*{ \
PERFINFO_WMI_GETTIME perfData; \
if (NULL != g_pTraceEvent) { \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_GETTIME; \
perfData.data.cycleCounter = _RDTSC(); \
perfData.data.dshowClock = (ULONGLONG) (time); \
if (g_perfMasks[GETTIME_INDEX] & GETTIME_BIT) \
(*g_pTraceEvent)( g_traceHandle, (PEVENT_TRACE_HEADER) &perfData ); \
} \
}*/

Definition at line 72 of file dxmperf.h.

◆ PERFLOG_JOINGRAPH

#define PERFLOG_JOINGRAPH (   name,
  iface,
  graph 
)

Definition at line 65 of file dxmperf.h.

◆ PERFLOG_PAUSE

#define PERFLOG_PAUSE (   name,
  iface,
  oldstate 
)

Definition at line 63 of file dxmperf.h.

◆ PERFLOG_RECEIVE

#define PERFLOG_RECEIVE (   name,
  source,
  dest,
  sample,
  pmt 
)

Definition at line 61 of file dxmperf.h.

◆ PERFLOG_RELBUFFER

#define PERFLOG_RELBUFFER (   allocator,
  sample 
)

Definition at line 67 of file dxmperf.h.

◆ PERFLOG_RUN

#define PERFLOG_RUN (   name,
  iface,
  time,
  oldstate 
)

Definition at line 62 of file dxmperf.h.

◆ PERFLOG_RXCONNECT

#define PERFLOG_RXCONNECT (   connector,
  connectee,
  status,
  pmt 
)

Definition at line 69 of file dxmperf.h.

◆ PERFLOG_STOP

#define PERFLOG_STOP (   name,
  iface,
  oldstate 
)

Definition at line 64 of file dxmperf.h.

◆ PERFLOG_VIDEOREND

#define PERFLOG_VIDEOREND (   sampletime,
  clocktime,
  psample 
)
Value:
PERFINFO_WMI_AVREND perfData; \
memset( &perfData, 0, sizeof( perfData ) ); \
perfData.header.Size = sizeof( perfData ); \
perfData.header.Flags = WNODE_FLAG_TRACED_GUID; \
perfData.header.Guid = GUID_VIDEOREND; \
perfData.data.cycleCounter = _RDTSC(); \
perfData.data.dshowClock = (clocktime); \
perfData.data.sampleTime = (sampletime); \
PerflogTraceEvent ((PEVENT_TRACE_HEADER) &perfData); \
}

Definition at line 120 of file dxmperf.h.

Function Documentation

◆ _RDTSC()

ULONGLONG _RDTSC ( void  )
inline

Definition at line 22 of file dxmperf.h.

◆ PERFLOG_STREAMTRACE()

VOID PERFLOG_STREAMTRACE ( ULONG  Level,
ULONG  Id,
ULONGLONG  DShowClock,
ULONGLONG  Data1,
ULONGLONG  Data2,
ULONGLONG  Data3,
ULONGLONG  Data4 
)
inline

Definition at line 184 of file dxmperf.h.

DXMPERF_VIDEOREND
#define DXMPERF_VIDEOREND
Definition: dxmperf.h:48
AUDIOBREAK_BIT
#define AUDIOBREAK_BIT
Definition: dxmperf.h:53
_RDTSC
ULONGLONG _RDTSC(void)
Definition: dxmperf.h:22
DXMPERF_AUDIORECV
#define DXMPERF_AUDIORECV
Definition: dxmperf.h:54
DXMPERF_AUDIOGLITCH
#define DXMPERF_AUDIOGLITCH
Definition: dxmperf.h:49
DXMPERF_AUDIOBREAK
#define DXMPERF_AUDIOBREAK
Definition: dxmperf.h:56
DXMPERF_AUDIOSLAVE
#define DXMPERF_AUDIOSLAVE
Definition: dxmperf.h:55
PerflogEnableFlags
ULONG PerflogEnableFlags
Definition: perflog.cpp:105