HEVC Test Model (HM)  HM-16.3
Classes | Namespaces | Macros | Functions | Variables
Debug.h File Reference

Defines types and objects for environment-variable-based debugging and feature control. More...

#include <iostream>
#include <iomanip>
#include <string>
#include <list>
#include <stdlib.h>
#include <sstream>
#include <TLibCommon/CommonDef.h>
Include dependency graph for Debug.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  EnvVar
 

Namespaces

 DebugOptionList
 

Macros

#define PRINT_CONSTANT(NAME, NAME_WIDTH, VALUE_WIDTH)   std::cout << std::setw(NAME_WIDTH) << #NAME << " = " << std::setw(VALUE_WIDTH) << NAME << std::endl;
 

Functions

Void printMacroSettings ()
 
Void printSBACCoeffData (const UInt lastX, const UInt lastY, const UInt width, const UInt height, const UInt chan, const UInt absPart, const UInt scanIdx, const TCoeff *const pCoeff, const Bool finalEncode=true)
 
Void printCbfArray (class TComDataCU *pcCU)
 
UInt getDecimalWidth (const Double value)
 
UInt getZScanIndex (const UInt x, const UInt y)
 
template<typename ValueType >
Void writeValueToStream (const ValueType &value, std::ostream &stream, const UInt outputWidth)
 
template<>
Void writeValueToStream< Char > (const Char &value, std::ostream &stream, const UInt outputWidth)
 
template<>
Void writeValueToStream< UChar > (const UChar &value, std::ostream &stream, const UInt outputWidth)
 
template<typename ValueType >
Void printBlock (const ValueType *const source, const UInt width, const UInt height, const UInt stride, const UInt outputValueWidth=0, const Bool onlyPrintEdges=false, const Bool printInZScan=false, const Int shiftLeftBy=0, const Bool printAverage=false, std::ostream &stream=std::cout)
 
template<typename T >
Void printBlockToStream (std::ostream &ss, const Char *pLinePrefix, const T *blkSrc, const UInt width, const UInt height, const UInt stride, const UInt subBlockWidth=0, const UInt subBlockHeight=0, const UInt defWidth=3)
 
Void printBlockToStream (std::ostream &ss, const Char *pLinePrefix, TComYuv &src, const UInt numSubBlocksAcross=1, const UInt numSubBlocksUp=1, const UInt defWidth=3)
 
std::string splitOnSettings (const std::string &input)
 
std::string lineWrap (const std::string &input, const UInt maximumLineLength)
 
std::string indentNewLines (const std::string &input, const UInt indentBy)
 

Variables

EnvVar DebugOptionList::DebugSBAC
 
EnvVar DebugOptionList::DebugRQT
 
EnvVar DebugOptionList::DebugPred
 
EnvVar DebugOptionList::ForceLumaMode
 
EnvVar DebugOptionList::ForceChromaMode
 
Bool g_bFinalEncode
 
UInt g_debugCounter
 
Bool g_printDebug
 
Voidg_debugAddr
 

Detailed Description

Defines types and objects for environment-variable-based debugging and feature control.

Definition in file Debug.h.

Macro Definition Documentation

#define PRINT_CONSTANT (   NAME,
  NAME_WIDTH,
  VALUE_WIDTH 
)    std::cout << std::setw(NAME_WIDTH) << #NAME << " = " << std::setw(VALUE_WIDTH) << NAME << std::endl;

Definition at line 58 of file Debug.h.

Function Documentation

UInt getDecimalWidth ( const Double  value)

Definition at line 255 of file Debug.cpp.

UInt getZScanIndex ( const UInt  x,
const UInt  y 
)

Definition at line 261 of file Debug.cpp.

std::string indentNewLines ( const std::string &  input,
const UInt  indentBy 
)

Definition at line 401 of file Debug.cpp.

std::string lineWrap ( const std::string &  input,
const UInt  maximumLineLength 
)

Definition at line 325 of file Debug.cpp.

template<typename ValueType >
Void printBlock ( const ValueType *const  source,
const UInt  width,
const UInt  height,
const UInt  stride,
const UInt  outputValueWidth = 0,
const Bool  onlyPrintEdges = false,
const Bool  printInZScan = false,
const Int  shiftLeftBy = 0,
const Bool  printAverage = false,
std::ostream &  stream = std::cout 
)

Definition at line 161 of file Debug.h.

template<typename T >
Void printBlockToStream ( std::ostream &  ss,
const Char pLinePrefix,
const T *  blkSrc,
const UInt  width,
const UInt  height,
const UInt  stride,
const UInt  subBlockWidth = 0,
const UInt  subBlockHeight = 0,
const UInt  defWidth = 3 
)

Definition at line 237 of file Debug.h.

Void printBlockToStream ( std::ostream &  ss,
const Char pLinePrefix,
TComYuv src,
const UInt  numSubBlocksAcross = 1,
const UInt  numSubBlocksUp = 1,
const UInt  defWidth = 3 
)

Definition at line 424 of file Debug.cpp.

Void printCbfArray ( class TComDataCU pcCU)

Definition at line 237 of file Debug.cpp.

Void printMacroSettings ( )

Definition at line 167 of file Debug.cpp.

Void printSBACCoeffData ( const UInt  lastX,
const UInt  lastY,
const UInt  width,
const UInt  height,
const UInt  chan,
const UInt  absPart,
const UInt  scanIdx,
const TCoeff *const  pCoeff,
const Bool  finalEncode = true 
)

Definition at line 207 of file Debug.cpp.

std::string splitOnSettings ( const std::string &  input)

Definition at line 286 of file Debug.cpp.

template<typename ValueType >
Void writeValueToStream ( const ValueType &  value,
std::ostream &  stream,
const UInt  outputWidth 
)
inline

Definition at line 156 of file Debug.h.

template<>
Void writeValueToStream< Char > ( const Char value,
std::ostream &  stream,
const UInt  outputWidth 
)
inline

Definition at line 157 of file Debug.h.

template<>
Void writeValueToStream< UChar > ( const UChar value,
std::ostream &  stream,
const UInt  outputWidth 
)
inline

Definition at line 158 of file Debug.h.

Variable Documentation

Bool g_bFinalEncode
Void* g_debugAddr

Definition at line 195 of file Debug.cpp.

UInt g_debugCounter

Definition at line 193 of file Debug.cpp.

Bool g_printDebug

Definition at line 194 of file Debug.cpp.