5 #ifndef OPENCV_UTILS_INSTR_HPP
6 #define OPENCV_UTILS_INSTR_HPP
8 #include <opencv2/core/utility.hpp>
9 #include <opencv2/core/utils/tls.hpp>
16 #ifdef CV_COLLECT_IMPL_DATA
26 #define CV_IMPL_PLAIN 0x01
27 #define CV_IMPL_OCL 0x02
28 #define CV_IMPL_IPP 0x04
29 #define CV_IMPL_MT 0x10
32 #define CV_IMPL_ADD(impl) \
33 if(cv::useCollection()) \
35 cv::addImpl(impl, CV_Func); \
43 #if !defined OPENCV_ABI_CHECK
Definition: utility.hpp:1075
TLS data accumulator with gathering methods.
Definition: tls.hpp:89
Definition: instrumentation.hpp:70
cv::String m_funName
Definition: instrumentation.hpp:77
const char * m_fileName
Definition: instrumentation.hpp:80
volatile int m_counter
Definition: instrumentation.hpp:86
bool m_alwaysExpand
Definition: instrumentation.hpp:83
double getMeanMs() const
Definition: instrumentation.hpp:93
NodeData(const char *funName=0, const char *fileName=NULL, int lineNum=0, void *retAddress=NULL, bool alwaysExpand=false, cv::instr::TYPE instrType=TYPE_GENERAL, cv::instr::IMPL implType=IMPL_PLAIN)
cv::instr::IMPL m_implType
Definition: instrumentation.hpp:79
bool m_funError
Definition: instrumentation.hpp:84
volatile uint64 m_ticksTotal
Definition: instrumentation.hpp:87
TLSDataAccumulator< NodeDataTls > m_tls
Definition: instrumentation.hpp:88
double getTotalMs() const
Definition: instrumentation.hpp:92
void * m_retAddress
Definition: instrumentation.hpp:82
int m_lineNum
Definition: instrumentation.hpp:81
cv::instr::TYPE m_instrType
Definition: instrumentation.hpp:78
int m_threads
Definition: instrumentation.hpp:89
NodeData & operator=(const NodeData &)
InputArrayOfArrays Size InputOutputArray InputOutputArray OutputArrayOfArrays OutputArrayOfArrays OutputArray OutputArray OutputArray int flags
Definition: calib3d.hpp:1617
CvCmpFunc func
Definition: core_c.h:1712
uint64_t uint64
Definition: interface.h:62
#define CV_EXPORTS
Definition: cvdef.h:435
CV_EXPORTS_W double getTickFrequency()
Returns the number of ticks per second.
FLAGS
Definition: instrumentation.hpp:109
@ FLAGS_EXPAND_SAME_NAMES
Definition: instrumentation.hpp:112
@ FLAGS_MAPPING
Definition: instrumentation.hpp:111
@ FLAGS_NONE
Definition: instrumentation.hpp:110
CV_EXPORTS void setFlags(FLAGS modeFlags)
bool operator==(const NodeData &lhs, const NodeData &rhs)
IMPL
Definition: instrumentation.hpp:54
@ IMPL_OPENCL
Definition: instrumentation.hpp:57
@ IMPL_IPP
Definition: instrumentation.hpp:56
@ IMPL_PLAIN
Definition: instrumentation.hpp:55
CV_EXPORTS void resetTrace()
CV_EXPORTS bool useInstrumentation()
TYPE
Definition: instrumentation.hpp:46
@ TYPE_MARKER
Definition: instrumentation.hpp:48
@ TYPE_GENERAL
Definition: instrumentation.hpp:47
@ TYPE_WRAPPER
Definition: instrumentation.hpp:49
@ TYPE_FUN
Definition: instrumentation.hpp:50
CV_EXPORTS void setUseInstrumentation(bool flag)
CV_EXPORTS FLAGS getFlags()
Node< NodeData > InstrNode
Definition: instrumentation.hpp:97
CV_EXPORTS InstrNode * getTrace()
"black box" representation of the file storage associated with a file on disk.
Definition: calib3d.hpp:441
Definition: instrumentation.hpp:61
NodeDataTls()
Definition: instrumentation.hpp:62
uint64 m_ticksTotal
Definition: instrumentation.hpp:66