mirror of
https://github.com/opencv/opencv.git
synced 2025-07-24 14:06:27 +08:00
core: apply CV_OVERRIDE/CV_FINAL
This commit is contained in:
parent
0587f92d96
commit
9111538bfb
@ -124,7 +124,7 @@ public:
|
||||
/*!
|
||||
\return the error description and the context as a text string.
|
||||
*/
|
||||
virtual const char *what() const throw();
|
||||
virtual const char *what() const throw() CV_OVERRIDE;
|
||||
void formatMessage();
|
||||
|
||||
String msg; ///< the formatted error message
|
||||
|
@ -165,6 +165,8 @@ template <typename T>
|
||||
T* allocSingleton(size_t count) { return static_cast<T*>(fastMalloc(sizeof(T) * count)); }
|
||||
}
|
||||
|
||||
#if 1 // TODO: Remove in OpenCV 4.x
|
||||
|
||||
// property implementation macros
|
||||
|
||||
#define CV_IMPL_PROPERTY_RO(type, name, member) \
|
||||
@ -187,6 +189,8 @@ T* allocSingleton(size_t count) { return static_cast<T*>(fastMalloc(sizeof(T) *
|
||||
#define CV_WRAP_SAME_PROPERTY(type, name, internal_obj) CV_WRAP_PROPERTY(type, name, name, internal_obj)
|
||||
#define CV_WRAP_SAME_PROPERTY_S(type, name, internal_obj) CV_WRAP_PROPERTY_S(type, name, name, internal_obj)
|
||||
|
||||
#endif
|
||||
|
||||
/****************************************************************************************\
|
||||
* Structures and macros for integration with IPP *
|
||||
\****************************************************************************************/
|
||||
|
@ -89,12 +89,12 @@ private:
|
||||
};
|
||||
|
||||
template<typename Y, typename D>
|
||||
struct PtrOwnerImpl : PtrOwner
|
||||
struct PtrOwnerImpl CV_FINAL : PtrOwner
|
||||
{
|
||||
PtrOwnerImpl(Y* p, D d) : owned(p), deleter(d)
|
||||
{}
|
||||
|
||||
void deleteSelf()
|
||||
void deleteSelf() CV_OVERRIDE
|
||||
{
|
||||
deleter(owned);
|
||||
delete this;
|
||||
|
@ -524,7 +524,7 @@ public:
|
||||
m_functor(functor)
|
||||
{ }
|
||||
|
||||
virtual void operator() (const cv::Range& range) const
|
||||
virtual void operator() (const cv::Range& range) const CV_OVERRIDE
|
||||
{
|
||||
m_functor(range);
|
||||
}
|
||||
@ -558,7 +558,8 @@ void Mat::forEach_impl(const Functor& operation) {
|
||||
virtual ~PixelOperationWrapper(){}
|
||||
// ! Overloaded virtual operator
|
||||
// convert range call to row call.
|
||||
virtual void operator()(const Range &range) const {
|
||||
virtual void operator()(const Range &range) const CV_OVERRIDE
|
||||
{
|
||||
const int DIMS = mat->dims;
|
||||
const int COLS = mat->size[DIMS - 1];
|
||||
if (DIMS <= 2) {
|
||||
@ -711,8 +712,8 @@ public:
|
||||
inline void cleanup() { TLSDataContainer::cleanup(); }
|
||||
|
||||
private:
|
||||
virtual void* createDataInstance() const {return new T;} // Wrapper to allocate data by template
|
||||
virtual void deleteDataInstance(void* pData) const {delete (T*)pData;} // Wrapper to release data by template
|
||||
virtual void* createDataInstance() const CV_OVERRIDE {return new T;} // Wrapper to allocate data by template
|
||||
virtual void deleteDataInstance(void* pData) const CV_OVERRIDE {delete (T*)pData;} // Wrapper to release data by template
|
||||
|
||||
// Disable TLS copy operations
|
||||
TLSData(TLSData &) {}
|
||||
|
@ -176,7 +176,7 @@ struct BatchDistInvoker : public ParallelLoopBody
|
||||
func = _func;
|
||||
}
|
||||
|
||||
void operator()(const Range& range) const
|
||||
void operator()(const Range& range) const CV_OVERRIDE
|
||||
{
|
||||
AutoBuffer<int> buf(src2->rows);
|
||||
int* bufptr = buf;
|
||||
|
@ -17,10 +17,10 @@ public:
|
||||
DummyBufferPoolController() { }
|
||||
virtual ~DummyBufferPoolController() { }
|
||||
|
||||
virtual size_t getReservedSize() const { return (size_t)-1; }
|
||||
virtual size_t getMaxReservedSize() const { return (size_t)-1; }
|
||||
virtual void setMaxReservedSize(size_t size) { (void)size; }
|
||||
virtual void freeAllReservedBuffers() { }
|
||||
virtual size_t getReservedSize() const CV_OVERRIDE { return (size_t)-1; }
|
||||
virtual size_t getMaxReservedSize() const CV_OVERRIDE { return (size_t)-1; }
|
||||
virtual void setMaxReservedSize(size_t size) CV_OVERRIDE { (void)size; }
|
||||
virtual void freeAllReservedBuffers() CV_OVERRIDE { }
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
@ -68,15 +68,15 @@ namespace cv
|
||||
|
||||
#define SEC_METHOD_ITERATIONS 4
|
||||
#define INITIAL_SEC_METHOD_SIGMA 0.1
|
||||
class ConjGradSolverImpl : public ConjGradSolver
|
||||
class ConjGradSolverImpl CV_FINAL : public ConjGradSolver
|
||||
{
|
||||
public:
|
||||
Ptr<Function> getFunction() const;
|
||||
void setFunction(const Ptr<Function>& f);
|
||||
TermCriteria getTermCriteria() const;
|
||||
Ptr<Function> getFunction() const CV_OVERRIDE;
|
||||
void setFunction(const Ptr<Function>& f) CV_OVERRIDE;
|
||||
TermCriteria getTermCriteria() const CV_OVERRIDE;
|
||||
ConjGradSolverImpl();
|
||||
void setTermCriteria(const TermCriteria& termcrit);
|
||||
double minimize(InputOutputArray x);
|
||||
void setTermCriteria(const TermCriteria& termcrit) CV_OVERRIDE;
|
||||
double minimize(InputOutputArray x) CV_OVERRIDE;
|
||||
protected:
|
||||
Ptr<MinProblemSolver::Function> _Function;
|
||||
TermCriteria _termcrit;
|
||||
|
@ -140,7 +140,7 @@ multiple lines in three dimensions as not all lines intersect in three dimension
|
||||
namespace cv
|
||||
{
|
||||
|
||||
class DownhillSolverImpl : public DownhillSolver
|
||||
class DownhillSolverImpl CV_FINAL : public DownhillSolver
|
||||
{
|
||||
public:
|
||||
DownhillSolverImpl()
|
||||
@ -149,8 +149,8 @@ public:
|
||||
_step=Mat_<double>();
|
||||
}
|
||||
|
||||
void getInitStep(OutputArray step) const { _step.copyTo(step); }
|
||||
void setInitStep(InputArray step)
|
||||
void getInitStep(OutputArray step) const CV_OVERRIDE { _step.copyTo(step); }
|
||||
void setInitStep(InputArray step) CV_OVERRIDE
|
||||
{
|
||||
// set dimensionality and make a deep copy of step
|
||||
Mat m = step.getMat();
|
||||
@ -161,13 +161,13 @@ public:
|
||||
transpose(m, _step);
|
||||
}
|
||||
|
||||
Ptr<MinProblemSolver::Function> getFunction() const { return _Function; }
|
||||
Ptr<MinProblemSolver::Function> getFunction() const CV_OVERRIDE { return _Function; }
|
||||
|
||||
void setFunction(const Ptr<Function>& f) { _Function=f; }
|
||||
void setFunction(const Ptr<Function>& f) CV_OVERRIDE { _Function=f; }
|
||||
|
||||
TermCriteria getTermCriteria() const { return _termcrit; }
|
||||
TermCriteria getTermCriteria() const CV_OVERRIDE { return _termcrit; }
|
||||
|
||||
void setTermCriteria( const TermCriteria& termcrit )
|
||||
void setTermCriteria( const TermCriteria& termcrit ) CV_OVERRIDE
|
||||
{
|
||||
CV_Assert( termcrit.type == (TermCriteria::MAX_ITER + TermCriteria::EPS) &&
|
||||
termcrit.epsilon > 0 &&
|
||||
@ -175,7 +175,7 @@ public:
|
||||
_termcrit=termcrit;
|
||||
}
|
||||
|
||||
double minimize( InputOutputArray x_ )
|
||||
double minimize( InputOutputArray x_ ) CV_OVERRIDE
|
||||
{
|
||||
dprintf(("hi from minimize\n"));
|
||||
CV_Assert( !_Function.empty() );
|
||||
|
@ -1562,7 +1562,7 @@ public:
|
||||
*ok = true;
|
||||
}
|
||||
|
||||
virtual void operator()(const Range& range) const
|
||||
virtual void operator()(const Range& range) const CV_OVERRIDE
|
||||
{
|
||||
IppStatus status;
|
||||
Ipp8u* pBuffer = 0;
|
||||
@ -1643,7 +1643,7 @@ public:
|
||||
*ok = true;
|
||||
}
|
||||
|
||||
virtual void operator()(const Range& range) const
|
||||
virtual void operator()(const Range& range) const CV_OVERRIDE
|
||||
{
|
||||
IppStatus status;
|
||||
Ipp8u* pBuffer = 0;
|
||||
@ -2607,7 +2607,7 @@ inline DftDims determineDims(int rows, int cols, bool isRowWise, bool isContinuo
|
||||
return InvalidDim;
|
||||
}
|
||||
|
||||
class OcvDftImpl : public hal::DFT2D
|
||||
class OcvDftImpl CV_FINAL : public hal::DFT2D
|
||||
{
|
||||
protected:
|
||||
Ptr<hal::DFT1D> contextA;
|
||||
@ -2779,7 +2779,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
void apply(const uchar * src, size_t src_step, uchar * dst, size_t dst_step)
|
||||
void apply(const uchar * src, size_t src_step, uchar * dst, size_t dst_step) CV_OVERRIDE
|
||||
{
|
||||
#if defined USE_IPP_DFT
|
||||
if (useIpp)
|
||||
@ -3039,7 +3039,7 @@ protected:
|
||||
}
|
||||
};
|
||||
|
||||
class OcvDftBasicImpl : public hal::DFT1D
|
||||
class OcvDftBasicImpl CV_FINAL : public hal::DFT1D
|
||||
{
|
||||
public:
|
||||
OcvDftOptions opt;
|
||||
@ -3194,7 +3194,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
void apply(const uchar *src, uchar *dst)
|
||||
void apply(const uchar *src, uchar *dst) CV_OVERRIDE
|
||||
{
|
||||
opt.dft_func(opt, src, dst);
|
||||
}
|
||||
@ -3214,7 +3214,7 @@ struct ReplacementDFT1D : public hal::DFT1D
|
||||
isInitialized = (res == CV_HAL_ERROR_OK);
|
||||
return isInitialized;
|
||||
}
|
||||
void apply(const uchar *src, uchar *dst)
|
||||
void apply(const uchar *src, uchar *dst) CV_OVERRIDE
|
||||
{
|
||||
if (isInitialized)
|
||||
{
|
||||
@ -3244,7 +3244,7 @@ struct ReplacementDFT2D : public hal::DFT2D
|
||||
isInitialized = (res == CV_HAL_ERROR_OK);
|
||||
return isInitialized;
|
||||
}
|
||||
void apply(const uchar *src, size_t src_step, uchar *dst, size_t dst_step)
|
||||
void apply(const uchar *src, size_t src_step, uchar *dst, size_t dst_step) CV_OVERRIDE
|
||||
{
|
||||
if (isInitialized)
|
||||
{
|
||||
@ -3809,7 +3809,7 @@ public:
|
||||
*ok = true;
|
||||
}
|
||||
|
||||
virtual void operator()(const Range& range) const
|
||||
virtual void operator()(const Range& range) const CV_OVERRIDE
|
||||
{
|
||||
if(*ok == false)
|
||||
return;
|
||||
@ -4048,7 +4048,7 @@ static bool ippi_DCT_32f(const uchar * src, size_t src_step, uchar * dst, size_t
|
||||
|
||||
namespace cv {
|
||||
|
||||
class OcvDctImpl : public hal::DCT2D
|
||||
class OcvDctImpl CV_FINAL : public hal::DCT2D
|
||||
{
|
||||
public:
|
||||
OcvDftOptions opt;
|
||||
@ -4100,7 +4100,7 @@ public:
|
||||
end_stage = 1;
|
||||
}
|
||||
}
|
||||
void apply(const uchar *src, size_t src_step, uchar *dst, size_t dst_step)
|
||||
void apply(const uchar *src, size_t src_step, uchar *dst, size_t dst_step) CV_OVERRIDE
|
||||
{
|
||||
CV_IPP_RUN(IPP_VERSION_X100 >= 700 && depth == CV_32F, ippi_DCT_32f(src, src_step, dst, dst_step, width, height, isInverse, isRowTransform))
|
||||
|
||||
@ -4196,7 +4196,7 @@ struct ReplacementDCT2D : public hal::DCT2D
|
||||
isInitialized = (res == CV_HAL_ERROR_OK);
|
||||
return isInitialized;
|
||||
}
|
||||
void apply(const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step)
|
||||
void apply(const uchar *src_data, size_t src_step, uchar *dst_data, size_t dst_step) CV_OVERRIDE
|
||||
{
|
||||
if (isInitialized)
|
||||
{
|
||||
|
@ -65,7 +65,7 @@ public:
|
||||
tdist2(tdist2_), data(data_), dist(dist_), ci(ci_)
|
||||
{ }
|
||||
|
||||
void operator()( const cv::Range& range ) const
|
||||
void operator()( const cv::Range& range ) const CV_OVERRIDE
|
||||
{
|
||||
CV_TRACE_FUNCTION();
|
||||
const int begin = range.start;
|
||||
@ -171,7 +171,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
void operator()( const Range& range ) const
|
||||
void operator()(const Range& range) const CV_OVERRIDE
|
||||
{
|
||||
CV_TRACE_FUNCTION();
|
||||
const int begin = range.start;
|
||||
|
@ -328,7 +328,7 @@ public:
|
||||
*ok = (func != NULL);
|
||||
}
|
||||
|
||||
void operator()( const cv::Range& range ) const
|
||||
void operator()( const cv::Range& range ) const CV_OVERRIDE
|
||||
{
|
||||
CV_DbgAssert(*ok);
|
||||
|
||||
|
@ -123,11 +123,11 @@ BufferPoolController* MatAllocator::getBufferPoolController(const char* id) cons
|
||||
return &dummy;
|
||||
}
|
||||
|
||||
class StdMatAllocator : public MatAllocator
|
||||
class StdMatAllocator CV_FINAL : public MatAllocator
|
||||
{
|
||||
public:
|
||||
UMatData* allocate(int dims, const int* sizes, int type,
|
||||
void* data0, size_t* step, int /*flags*/, UMatUsageFlags /*usageFlags*/) const
|
||||
void* data0, size_t* step, int /*flags*/, UMatUsageFlags /*usageFlags*/) const CV_OVERRIDE
|
||||
{
|
||||
size_t total = CV_ELEM_SIZE(type);
|
||||
for( int i = dims-1; i >= 0; i-- )
|
||||
@ -154,13 +154,13 @@ public:
|
||||
return u;
|
||||
}
|
||||
|
||||
bool allocate(UMatData* u, int /*accessFlags*/, UMatUsageFlags /*usageFlags*/) const
|
||||
bool allocate(UMatData* u, int /*accessFlags*/, UMatUsageFlags /*usageFlags*/) const CV_OVERRIDE
|
||||
{
|
||||
if(!u) return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void deallocate(UMatData* u) const
|
||||
void deallocate(UMatData* u) const CV_OVERRIDE
|
||||
{
|
||||
if(!u)
|
||||
return;
|
||||
|
@ -14,53 +14,53 @@
|
||||
namespace cv
|
||||
{
|
||||
|
||||
class MatOp_Identity : public MatOp
|
||||
class MatOp_Identity CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_Identity() {}
|
||||
virtual ~MatOp_Identity() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, const Mat& m);
|
||||
};
|
||||
|
||||
static MatOp_Identity g_MatOp_Identity;
|
||||
|
||||
class MatOp_AddEx : public MatOp
|
||||
class MatOp_AddEx CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_AddEx() {}
|
||||
virtual ~MatOp_AddEx() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
void add(const MatExpr& e1, const Scalar& s, MatExpr& res) const;
|
||||
void subtract(const Scalar& s, const MatExpr& expr, MatExpr& res) const;
|
||||
void multiply(const MatExpr& e1, double s, MatExpr& res) const;
|
||||
void divide(double s, const MatExpr& e, MatExpr& res) const;
|
||||
void add(const MatExpr& e1, const Scalar& s, MatExpr& res) const CV_OVERRIDE;
|
||||
void subtract(const Scalar& s, const MatExpr& expr, MatExpr& res) const CV_OVERRIDE;
|
||||
void multiply(const MatExpr& e1, double s, MatExpr& res) const CV_OVERRIDE;
|
||||
void divide(double s, const MatExpr& e, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
void transpose(const MatExpr& e1, MatExpr& res) const;
|
||||
void abs(const MatExpr& expr, MatExpr& res) const;
|
||||
void transpose(const MatExpr& e1, MatExpr& res) const CV_OVERRIDE;
|
||||
void abs(const MatExpr& expr, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, const Mat& a, const Mat& b, double alpha, double beta, const Scalar& s=Scalar());
|
||||
};
|
||||
|
||||
static MatOp_AddEx g_MatOp_AddEx;
|
||||
|
||||
class MatOp_Bin : public MatOp
|
||||
class MatOp_Bin CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_Bin() {}
|
||||
virtual ~MatOp_Bin() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
void multiply(const MatExpr& e1, double s, MatExpr& res) const;
|
||||
void divide(double s, const MatExpr& e, MatExpr& res) const;
|
||||
void multiply(const MatExpr& e1, double s, MatExpr& res) const CV_OVERRIDE;
|
||||
void divide(double s, const MatExpr& e, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, char op, const Mat& a, const Mat& b, double scale=1);
|
||||
static void makeExpr(MatExpr& res, char op, const Mat& a, const Scalar& s);
|
||||
@ -68,14 +68,14 @@ public:
|
||||
|
||||
static MatOp_Bin g_MatOp_Bin;
|
||||
|
||||
class MatOp_Cmp : public MatOp
|
||||
class MatOp_Cmp CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_Cmp() {}
|
||||
virtual ~MatOp_Cmp() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return true; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, int cmpop, const Mat& a, const Mat& b);
|
||||
static void makeExpr(MatExpr& res, int cmpop, const Mat& a, double alpha);
|
||||
@ -83,20 +83,20 @@ public:
|
||||
|
||||
static MatOp_Cmp g_MatOp_Cmp;
|
||||
|
||||
class MatOp_GEMM : public MatOp
|
||||
class MatOp_GEMM CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_GEMM() {}
|
||||
virtual ~MatOp_GEMM() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
void add(const MatExpr& e1, const MatExpr& e2, MatExpr& res) const;
|
||||
void subtract(const MatExpr& e1, const MatExpr& e2, MatExpr& res) const;
|
||||
void multiply(const MatExpr& e, double s, MatExpr& res) const;
|
||||
void add(const MatExpr& e1, const MatExpr& e2, MatExpr& res) const CV_OVERRIDE;
|
||||
void subtract(const MatExpr& e1, const MatExpr& e2, MatExpr& res) const CV_OVERRIDE;
|
||||
void multiply(const MatExpr& e, double s, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
void transpose(const MatExpr& expr, MatExpr& res) const;
|
||||
void transpose(const MatExpr& expr, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, int flags, const Mat& a, const Mat& b,
|
||||
double alpha=1, const Mat& c=Mat(), double beta=1);
|
||||
@ -104,63 +104,63 @@ public:
|
||||
|
||||
static MatOp_GEMM g_MatOp_GEMM;
|
||||
|
||||
class MatOp_Invert : public MatOp
|
||||
class MatOp_Invert CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_Invert() {}
|
||||
virtual ~MatOp_Invert() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
void matmul(const MatExpr& expr1, const MatExpr& expr2, MatExpr& res) const;
|
||||
void matmul(const MatExpr& expr1, const MatExpr& expr2, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, int method, const Mat& m);
|
||||
};
|
||||
|
||||
static MatOp_Invert g_MatOp_Invert;
|
||||
|
||||
class MatOp_T : public MatOp
|
||||
class MatOp_T CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_T() {}
|
||||
virtual ~MatOp_T() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
void multiply(const MatExpr& e1, double s, MatExpr& res) const;
|
||||
void transpose(const MatExpr& expr, MatExpr& res) const;
|
||||
void multiply(const MatExpr& e1, double s, MatExpr& res) const CV_OVERRIDE;
|
||||
void transpose(const MatExpr& expr, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, const Mat& a, double alpha=1);
|
||||
};
|
||||
|
||||
static MatOp_T g_MatOp_T;
|
||||
|
||||
class MatOp_Solve : public MatOp
|
||||
class MatOp_Solve CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_Solve() {}
|
||||
virtual ~MatOp_Solve() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, int method, const Mat& a, const Mat& b);
|
||||
};
|
||||
|
||||
static MatOp_Solve g_MatOp_Solve;
|
||||
|
||||
class MatOp_Initializer : public MatOp
|
||||
class MatOp_Initializer CV_FINAL : public MatOp
|
||||
{
|
||||
public:
|
||||
MatOp_Initializer() {}
|
||||
virtual ~MatOp_Initializer() {}
|
||||
|
||||
bool elementWise(const MatExpr& /*expr*/) const { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const;
|
||||
bool elementWise(const MatExpr& /*expr*/) const CV_OVERRIDE { return false; }
|
||||
void assign(const MatExpr& expr, Mat& m, int type=-1) const CV_OVERRIDE;
|
||||
|
||||
void multiply(const MatExpr& e, double s, MatExpr& res) const;
|
||||
void multiply(const MatExpr& e, double s, MatExpr& res) const CV_OVERRIDE;
|
||||
|
||||
static void makeExpr(MatExpr& res, int method, Size sz, int type, double alpha=1);
|
||||
static void makeExpr(MatExpr& res, int method, int ndims, const int* sizes, int type, double alpha=1);
|
||||
|
@ -4178,7 +4178,7 @@ public:
|
||||
CV_Assert(reservedEntries_.empty());
|
||||
}
|
||||
public:
|
||||
virtual T allocate(size_t size)
|
||||
virtual T allocate(size_t size) CV_OVERRIDE
|
||||
{
|
||||
AutoLock locker(mutex_);
|
||||
BufferEntry entry;
|
||||
@ -4193,7 +4193,7 @@ public:
|
||||
}
|
||||
return entry.clBuffer_;
|
||||
}
|
||||
virtual void release(T buffer)
|
||||
virtual void release(T buffer) CV_OVERRIDE
|
||||
{
|
||||
AutoLock locker(mutex_);
|
||||
BufferEntry entry;
|
||||
@ -4210,9 +4210,9 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
virtual size_t getReservedSize() const { return currentReservedSize; }
|
||||
virtual size_t getMaxReservedSize() const { return maxReservedSize; }
|
||||
virtual void setMaxReservedSize(size_t size)
|
||||
virtual size_t getReservedSize() const CV_OVERRIDE { return currentReservedSize; }
|
||||
virtual size_t getMaxReservedSize() const CV_OVERRIDE { return maxReservedSize; }
|
||||
virtual void setMaxReservedSize(size_t size) CV_OVERRIDE
|
||||
{
|
||||
AutoLock locker(mutex_);
|
||||
size_t oldMaxReservedSize = maxReservedSize;
|
||||
@ -4236,7 +4236,7 @@ public:
|
||||
_checkSizeOfReservedEntries();
|
||||
}
|
||||
}
|
||||
virtual void freeAllReservedBuffers()
|
||||
virtual void freeAllReservedBuffers() CV_OVERRIDE
|
||||
{
|
||||
AutoLock locker(mutex_);
|
||||
typename std::list<BufferEntry>::const_iterator i = reservedEntries_.begin();
|
||||
@ -4257,7 +4257,7 @@ struct CLBufferEntry
|
||||
CLBufferEntry() : clBuffer_((cl_mem)NULL), capacity_(0) { }
|
||||
};
|
||||
|
||||
class OpenCLBufferPoolImpl : public OpenCLBufferPoolBaseImpl<OpenCLBufferPoolImpl, CLBufferEntry, cl_mem>
|
||||
class OpenCLBufferPoolImpl CV_FINAL : public OpenCLBufferPoolBaseImpl<OpenCLBufferPoolImpl, CLBufferEntry, cl_mem>
|
||||
{
|
||||
public:
|
||||
typedef struct CLBufferEntry BufferEntry;
|
||||
@ -4303,7 +4303,7 @@ struct CLSVMBufferEntry
|
||||
size_t capacity_;
|
||||
CLSVMBufferEntry() : clBuffer_(NULL), capacity_(0) { }
|
||||
};
|
||||
class OpenCLSVMBufferPoolImpl : public OpenCLBufferPoolBaseImpl<OpenCLSVMBufferPoolImpl, CLSVMBufferEntry, void*>
|
||||
class OpenCLSVMBufferPoolImpl CV_FINAL : public OpenCLBufferPoolBaseImpl<OpenCLSVMBufferPoolImpl, CLSVMBufferEntry, void*>
|
||||
{
|
||||
public:
|
||||
typedef struct CLSVMBufferEntry BufferEntry;
|
||||
@ -4465,7 +4465,7 @@ private:
|
||||
#define CV_OPENCL_DATA_PTR_ALIGNMENT 16
|
||||
#endif
|
||||
|
||||
class OpenCLAllocator : public MatAllocator
|
||||
class OpenCLAllocator CV_FINAL : public MatAllocator
|
||||
{
|
||||
mutable OpenCLBufferPoolImpl bufferPool;
|
||||
mutable OpenCLBufferPoolImpl bufferPoolHostPtr;
|
||||
@ -4525,7 +4525,7 @@ public:
|
||||
}
|
||||
|
||||
UMatData* allocate(int dims, const int* sizes, int type,
|
||||
void* data, size_t* step, int flags, UMatUsageFlags usageFlags) const
|
||||
void* data, size_t* step, int flags, UMatUsageFlags usageFlags) const CV_OVERRIDE
|
||||
{
|
||||
if(!useOpenCL())
|
||||
return defaultAllocate(dims, sizes, type, data, step, flags, usageFlags);
|
||||
@ -4589,7 +4589,7 @@ public:
|
||||
return u;
|
||||
}
|
||||
|
||||
bool allocate(UMatData* u, int accessFlags, UMatUsageFlags usageFlags) const
|
||||
bool allocate(UMatData* u, int accessFlags, UMatUsageFlags usageFlags) const CV_OVERRIDE
|
||||
{
|
||||
if(!u)
|
||||
return false;
|
||||
@ -4721,7 +4721,7 @@ public:
|
||||
}
|
||||
}*/
|
||||
|
||||
void deallocate(UMatData* u) const
|
||||
void deallocate(UMatData* u) const CV_OVERRIDE
|
||||
{
|
||||
if(!u)
|
||||
return;
|
||||
@ -4905,7 +4905,7 @@ public:
|
||||
}
|
||||
|
||||
// synchronized call (external UMatDataAutoLock, see UMat::getMat)
|
||||
void map(UMatData* u, int accessFlags) const
|
||||
void map(UMatData* u, int accessFlags) const CV_OVERRIDE
|
||||
{
|
||||
CV_Assert(u && u->handle);
|
||||
|
||||
@ -4988,7 +4988,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
void unmap(UMatData* u) const
|
||||
void unmap(UMatData* u) const CV_OVERRIDE
|
||||
{
|
||||
if(!u)
|
||||
return;
|
||||
@ -5133,7 +5133,7 @@ public:
|
||||
|
||||
void download(UMatData* u, void* dstptr, int dims, const size_t sz[],
|
||||
const size_t srcofs[], const size_t srcstep[],
|
||||
const size_t dststep[]) const
|
||||
const size_t dststep[]) const CV_OVERRIDE
|
||||
{
|
||||
if(!u)
|
||||
return;
|
||||
@ -5256,7 +5256,7 @@ public:
|
||||
|
||||
void upload(UMatData* u, const void* srcptr, int dims, const size_t sz[],
|
||||
const size_t dstofs[], const size_t dststep[],
|
||||
const size_t srcstep[]) const
|
||||
const size_t srcstep[]) const CV_OVERRIDE
|
||||
{
|
||||
if(!u)
|
||||
return;
|
||||
@ -5408,7 +5408,7 @@ public:
|
||||
|
||||
void copy(UMatData* src, UMatData* dst, int dims, const size_t sz[],
|
||||
const size_t srcofs[], const size_t srcstep[],
|
||||
const size_t dstofs[], const size_t dststep[], bool _sync) const
|
||||
const size_t dstofs[], const size_t dststep[], bool _sync) const CV_OVERRIDE
|
||||
{
|
||||
if(!src || !dst)
|
||||
return;
|
||||
@ -5596,7 +5596,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
BufferPoolController* getBufferPoolController(const char* id) const {
|
||||
BufferPoolController* getBufferPoolController(const char* id) const CV_OVERRIDE {
|
||||
#ifdef HAVE_OPENCL_SVM
|
||||
if ((svm::checkForceSVMUmatUsage() && (id == NULL || strcmp(id, "OCL") == 0)) || (id != NULL && strcmp(id, "SVM") == 0))
|
||||
{
|
||||
|
@ -45,7 +45,7 @@
|
||||
|
||||
namespace cv
|
||||
{
|
||||
class FormattedImpl : public Formatted
|
||||
class FormattedImpl CV_FINAL : public Formatted
|
||||
{
|
||||
enum { STATE_PROLOGUE, STATE_EPILOGUE, STATE_INTERLUDE,
|
||||
STATE_ROW_OPEN, STATE_ROW_CLOSE, STATE_CN_OPEN, STATE_CN_CLOSE, STATE_VALUE, STATE_FINISHED,
|
||||
@ -119,12 +119,12 @@ namespace cv
|
||||
}
|
||||
}
|
||||
|
||||
void reset()
|
||||
void reset() CV_OVERRIDE
|
||||
{
|
||||
state = STATE_PROLOGUE;
|
||||
}
|
||||
|
||||
const char* next()
|
||||
const char* next() CV_OVERRIDE
|
||||
{
|
||||
switch(state)
|
||||
{
|
||||
@ -258,17 +258,17 @@ namespace cv
|
||||
public:
|
||||
FormatterBase() : prec32f(8), prec64f(16), multiline(true) {}
|
||||
|
||||
void set32fPrecision(int p)
|
||||
void set32fPrecision(int p) CV_OVERRIDE
|
||||
{
|
||||
prec32f = p;
|
||||
}
|
||||
|
||||
void set64fPrecision(int p)
|
||||
void set64fPrecision(int p) CV_OVERRIDE
|
||||
{
|
||||
prec64f = p;
|
||||
}
|
||||
|
||||
void setMultiline(bool ml)
|
||||
void setMultiline(bool ml) CV_OVERRIDE
|
||||
{
|
||||
multiline = ml;
|
||||
}
|
||||
@ -279,11 +279,11 @@ namespace cv
|
||||
int multiline;
|
||||
};
|
||||
|
||||
class DefaultFormatter : public FormatterBase
|
||||
class DefaultFormatter CV_FINAL : public FormatterBase
|
||||
{
|
||||
public:
|
||||
|
||||
Ptr<Formatted> format(const Mat& mtx) const
|
||||
Ptr<Formatted> format(const Mat& mtx) const CV_OVERRIDE
|
||||
{
|
||||
char braces[5] = {'\0', '\0', ';', '\0', '\0'};
|
||||
return makePtr<FormattedImpl>("[", "]", mtx, &*braces,
|
||||
@ -291,11 +291,11 @@ namespace cv
|
||||
}
|
||||
};
|
||||
|
||||
class MatlabFormatter : public FormatterBase
|
||||
class MatlabFormatter CV_FINAL : public FormatterBase
|
||||
{
|
||||
public:
|
||||
|
||||
Ptr<Formatted> format(const Mat& mtx) const
|
||||
Ptr<Formatted> format(const Mat& mtx) const CV_OVERRIDE
|
||||
{
|
||||
char braces[5] = {'\0', '\0', ';', '\0', '\0'};
|
||||
return makePtr<FormattedImpl>("", "", mtx, &*braces,
|
||||
@ -303,11 +303,11 @@ namespace cv
|
||||
}
|
||||
};
|
||||
|
||||
class PythonFormatter : public FormatterBase
|
||||
class PythonFormatter CV_FINAL : public FormatterBase
|
||||
{
|
||||
public:
|
||||
|
||||
Ptr<Formatted> format(const Mat& mtx) const
|
||||
Ptr<Formatted> format(const Mat& mtx) const CV_OVERRIDE
|
||||
{
|
||||
char braces[5] = {'[', ']', ',', '[', ']'};
|
||||
if (mtx.cols == 1)
|
||||
@ -317,11 +317,11 @@ namespace cv
|
||||
}
|
||||
};
|
||||
|
||||
class NumpyFormatter : public FormatterBase
|
||||
class NumpyFormatter CV_FINAL : public FormatterBase
|
||||
{
|
||||
public:
|
||||
|
||||
Ptr<Formatted> format(const Mat& mtx) const
|
||||
Ptr<Formatted> format(const Mat& mtx) const CV_OVERRIDE
|
||||
{
|
||||
static const char* numpyTypes[] =
|
||||
{
|
||||
@ -336,11 +336,11 @@ namespace cv
|
||||
}
|
||||
};
|
||||
|
||||
class CSVFormatter : public FormatterBase
|
||||
class CSVFormatter CV_FINAL : public FormatterBase
|
||||
{
|
||||
public:
|
||||
|
||||
Ptr<Formatted> format(const Mat& mtx) const
|
||||
Ptr<Formatted> format(const Mat& mtx) const CV_OVERRIDE
|
||||
{
|
||||
char braces[5] = {'\0', '\0', '\0', '\0', '\0'};
|
||||
return makePtr<FormattedImpl>(String(),
|
||||
@ -349,11 +349,11 @@ namespace cv
|
||||
}
|
||||
};
|
||||
|
||||
class CFormatter : public FormatterBase
|
||||
class CFormatter CV_FINAL : public FormatterBase
|
||||
{
|
||||
public:
|
||||
|
||||
Ptr<Formatted> format(const Mat& mtx) const
|
||||
Ptr<Formatted> format(const Mat& mtx) const CV_OVERRIDE
|
||||
{
|
||||
char braces[5] = {'\0', '\0', ',', '\0', '\0'};
|
||||
return makePtr<FormattedImpl>("{", "}", mtx, &*braces,
|
||||
|
@ -238,7 +238,7 @@ namespace
|
||||
~ParallelLoopBodyWrapper()
|
||||
{
|
||||
}
|
||||
void operator()(const cv::Range& sr) const
|
||||
void operator()(const cv::Range& sr) const CV_OVERRIDE
|
||||
{
|
||||
#ifdef OPENCV_TRACE
|
||||
// TODO CV_TRACE_NS::details::setCurrentRegion(rootRegion);
|
||||
|
@ -726,7 +726,7 @@ void TraceManagerThreadLocal::dumpStack(std::ostream& out, bool onlyFunctions) c
|
||||
out << ss.str();
|
||||
}
|
||||
|
||||
class AsyncTraceStorage : public TraceStorage
|
||||
class AsyncTraceStorage CV_FINAL : public TraceStorage
|
||||
{
|
||||
mutable std::ofstream out;
|
||||
public:
|
||||
@ -744,7 +744,7 @@ public:
|
||||
out.close();
|
||||
}
|
||||
|
||||
bool put(const TraceMessage& msg) const
|
||||
bool put(const TraceMessage& msg) const CV_OVERRIDE
|
||||
{
|
||||
if (msg.hasError)
|
||||
return false;
|
||||
@ -754,7 +754,7 @@ public:
|
||||
}
|
||||
};
|
||||
|
||||
class SyncTraceStorage : public TraceStorage
|
||||
class SyncTraceStorage CV_FINAL : public TraceStorage
|
||||
{
|
||||
mutable std::ofstream out;
|
||||
mutable cv::Mutex mutex;
|
||||
@ -774,7 +774,7 @@ public:
|
||||
out.close();
|
||||
}
|
||||
|
||||
bool put(const TraceMessage& msg) const
|
||||
bool put(const TraceMessage& msg) const CV_OVERRIDE
|
||||
{
|
||||
if (msg.hasError)
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user