single_image_call.cpp 1.08 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#include "single_image_call.hpp"

#include <QString>

#include "data_controller.hpp"

#include "../util/util.hpp"

namespace cvv
{
namespace impl
{

SingleImageCall::SingleImageCall(cv::InputArray img, impl::CallMetaData data,
                                 QString type, QString description,
                                 QString requestedView)
17 18
    : Call( data,                   std::move(type),
	    std::move(description), std::move(requestedView) ),
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
      img{ img.getMat().clone() }
{
}

const cv::Mat &SingleImageCall::matrixAt(size_t index) const
{
	if (index)
	{
		throw std::out_of_range{ "" };
	}
	return img;
}

void debugSingleImageCall(cv::InputArray img, const CallMetaData &data,
                          const char *description, const char *view,
                          const char *filter)
{
	dataController().addCall(util::make_unique<SingleImageCall>(
	    img, data, filter, description ? QString::fromLocal8Bit(description)
	                                   : QString{ "<no description>" },
	    view ? QString::fromLocal8Bit(view) : QString{}));
}
}
} // namespaces cvv::impl