fixed logging function in opencv_stitching

This commit is contained in:
Alexey Spizhevoy 2011-06-01 13:50:41 +00:00
parent 8191b5564f
commit aa3e481458

View File

@ -38,78 +38,78 @@
// or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage.
//
//M*/
#ifndef __OPENCV_STITCHING_UTIL_HPP__
#define __OPENCV_STITCHING_UTIL_HPP__
#include <list>
#include "precomp.hpp"
#define ENABLE_LOG 1
#if ENABLE_LOG
#include <iostream>
#define LOG(msg) std::cout << msg;
#else
#define LOG(msg)
#endif
#define LOGLN(msg) LOG(msg << std::endl)
class DjSets
{
public:
DjSets(int n = 0) { create(n); }
void create(int n);
int find(int elem);
int merge(int set1, int set2);
std::vector<int> parent;
std::vector<int> size;
private:
std::vector<int> rank_;
};
struct GraphEdge
{
GraphEdge(int from, int to, float weight)
: from(from), to(to), weight(weight) {}
bool operator <(const GraphEdge& other) const { return weight < other.weight; }
bool operator >(const GraphEdge& other) const { return weight > other.weight; }
int from, to;
float weight;
};
class Graph
{
public:
Graph(int num_vertices = 0) { create(num_vertices); }
void create(int num_vertices) { edges_.assign(num_vertices, std::list<GraphEdge>()); }
int numVertices() const { return static_cast<int>(edges_.size()); }
void addEdge(int from, int to, float weight);
template <typename B> B forEach(B body) const;
template <typename B> B walkBreadthFirst(int from, B body) const;
private:
std::vector< std::list<GraphEdge> > edges_;
};
//////////////////////////////////////////////////////////////////////////////
// Auxiliary functions
bool overlapRoi(cv::Point tl1, cv::Point tl2, cv::Size sz1, cv::Size sz2, cv::Rect &roi);
cv::Rect resultRoi(const std::vector<cv::Point> &corners, const std::vector<cv::Mat> &images);
cv::Rect resultRoi(const std::vector<cv::Point> &corners, const std::vector<cv::Size> &sizes);
cv::Point resultTl(const std::vector<cv::Point> &corners);
#include "util_inl.hpp"
#endif // __OPENCV_STITCHING_UTIL_HPP__
//M*/
#ifndef __OPENCV_STITCHING_UTIL_HPP__
#define __OPENCV_STITCHING_UTIL_HPP__
#include <list>
#include "precomp.hpp"
#define ENABLE_LOG 1
#if ENABLE_LOG
#include <iostream>
#define LOG(msg) { std::cout << msg; std::cout.flush(); }
#else
#define LOG(msg)
#endif
#define LOGLN(msg) LOG(msg << std::endl)
class DjSets
{
public:
DjSets(int n = 0) { create(n); }
void create(int n);
int find(int elem);
int merge(int set1, int set2);
std::vector<int> parent;
std::vector<int> size;
private:
std::vector<int> rank_;
};
struct GraphEdge
{
GraphEdge(int from, int to, float weight)
: from(from), to(to), weight(weight) {}
bool operator <(const GraphEdge& other) const { return weight < other.weight; }
bool operator >(const GraphEdge& other) const { return weight > other.weight; }
int from, to;
float weight;
};
class Graph
{
public:
Graph(int num_vertices = 0) { create(num_vertices); }
void create(int num_vertices) { edges_.assign(num_vertices, std::list<GraphEdge>()); }
int numVertices() const { return static_cast<int>(edges_.size()); }
void addEdge(int from, int to, float weight);
template <typename B> B forEach(B body) const;
template <typename B> B walkBreadthFirst(int from, B body) const;
private:
std::vector< std::list<GraphEdge> > edges_;
};
//////////////////////////////////////////////////////////////////////////////
// Auxiliary functions
bool overlapRoi(cv::Point tl1, cv::Point tl2, cv::Size sz1, cv::Size sz2, cv::Rect &roi);
cv::Rect resultRoi(const std::vector<cv::Point> &corners, const std::vector<cv::Mat> &images);
cv::Rect resultRoi(const std::vector<cv::Point> &corners, const std::vector<cv::Size> &sizes);
cv::Point resultTl(const std::vector<cv::Point> &corners);
#include "util_inl.hpp"
#endif // __OPENCV_STITCHING_UTIL_HPP__