\hypertarget{classcore_1_1ObjectDataBox}{}\section{core\+:\+:Object\+Data\+Box Class Reference}
\label{classcore_1_1ObjectDataBox}\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}


{\ttfamily \#include $<$Object\+Data\+Box.\+h$>$}

Inheritance diagram for core\+:\+:Object\+Data\+Box\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classcore_1_1ObjectDataBox}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classcore_1_1ObjectDataBox_a4e331870ed012d9bc44bc769aee86362}{Object\+Data\+Box} (size\+\_\+t frame\+\_\+index, cv\+::\+Point2d center, cv\+::\+Point2d size)
\item 
cv\+::\+Point2d \hyperlink{classcore_1_1ObjectDataBox_a76e9f48dfb685d16de868a129c1f3918}{Get\+Size} () const
\item 
virtual double \hyperlink{classcore_1_1ObjectDataBox_a163c57338778f957ce514611c509558a}{Compare\+To} (Object\+Data\+Ptr obj) const override
\item 
virtual bool \hyperlink{classcore_1_1ObjectDataBox_a04f4b780b79491270e4838f7504c1917}{Is\+Within\+Constraints} (Object\+Data\+Ptr obj, std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&constraints) const override
\item 
virtual Object\+Data\+Ptr \hyperlink{classcore_1_1ObjectDataBox_ab2816bceb771dd7442e6c29193dfe267}{Interpolate} (Object\+Data\+Ptr obj, double fraction) const override
\item 
virtual void \hyperlink{classcore_1_1ObjectDataBox_ab29bacb20c258ba572d0372469ec5523}{Visualize} (cv\+::\+Mat \&image, cv\+::\+Scalar \&color) const override
\item 
virtual std\+::string \hyperlink{classcore_1_1ObjectDataBox_a0af10953ccecb7089a3a2841ec7419b9}{To\+String} (char delimiter) const override
\end{DoxyCompactItemize}


\subsection{Detailed Description}
Class for storing an object detection with an bounding box. 

\subsection{Constructor \& Destructor Documentation}
\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!Object\+Data\+Box@{Object\+Data\+Box}}
\index{Object\+Data\+Box@{Object\+Data\+Box}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{Object\+Data\+Box(size\+\_\+t frame\+\_\+index, cv\+::\+Point2d center, cv\+::\+Point2d size)}{ObjectDataBox(size\_t frame\_index, cv::Point2d center, cv::Point2d size)}}]{\setlength{\rightskip}{0pt plus 5cm}core\+::\+Object\+Data\+Box\+::\+Object\+Data\+Box (
\begin{DoxyParamCaption}
\item[{size\+\_\+t}]{frame\+\_\+index, }
\item[{cv\+::\+Point2d}]{center, }
\item[{cv\+::\+Point2d}]{size}
\end{DoxyParamCaption}
)}\hypertarget{classcore_1_1ObjectDataBox_a4e331870ed012d9bc44bc769aee86362}{}\label{classcore_1_1ObjectDataBox_a4e331870ed012d9bc44bc769aee86362}
Creates a new detection with an bounding box of the given size.


\begin{DoxyParams}{Parameters}
{\em frame\+\_\+index} & The frame index of the detection \\
\hline
{\em center} & The center of the bounding box \\
\hline
{\em size} & The size of the bounding box \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!Compare\+To@{Compare\+To}}
\index{Compare\+To@{Compare\+To}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{Compare\+To(\+Object\+Data\+Ptr obj) const override}{CompareTo(ObjectDataPtr obj) const override}}]{\setlength{\rightskip}{0pt plus 5cm}double core\+::\+Object\+Data\+Box\+::\+Compare\+To (
\begin{DoxyParamCaption}
\item[{Object\+Data\+Ptr}]{obj}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataBox_a163c57338778f957ce514611c509558a}{}\label{classcore_1_1ObjectDataBox_a163c57338778f957ce514611c509558a}
Compares this object with the given object. 
\begin{DoxyParams}{Parameters}
{\em obj} & A pointer to the object to compare this object to \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A double value indicating the comparison result 
\end{DoxyReturn}


Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a68d56bd5f26a41830a87ae32eabf9126}{core\+::\+Object\+Data2D}.

\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!Get\+Size@{Get\+Size}}
\index{Get\+Size@{Get\+Size}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{Get\+Size() const}{GetSize() const}}]{\setlength{\rightskip}{0pt plus 5cm}cv\+::\+Point2d core\+::\+Object\+Data\+Box\+::\+Get\+Size (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classcore_1_1ObjectDataBox_a76e9f48dfb685d16de868a129c1f3918}{}\label{classcore_1_1ObjectDataBox_a76e9f48dfb685d16de868a129c1f3918}
Gets the size of the bounding box.

\begin{DoxyReturn}{Returns}
The size of the bounding box 
\end{DoxyReturn}
\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!Interpolate@{Interpolate}}
\index{Interpolate@{Interpolate}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{Interpolate(\+Object\+Data\+Ptr obj, double fraction) const override}{Interpolate(ObjectDataPtr obj, double fraction) const override}}]{\setlength{\rightskip}{0pt plus 5cm}Object\+Data\+Ptr core\+::\+Object\+Data\+Box\+::\+Interpolate (
\begin{DoxyParamCaption}
\item[{Object\+Data\+Ptr}]{obj, }
\item[{double}]{fraction}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataBox_ab2816bceb771dd7442e6c29193dfe267}{}\label{classcore_1_1ObjectDataBox_ab2816bceb771dd7442e6c29193dfe267}
Linearly interpolates between this and the given object. Creates a new object to fit between the two objects. 
\begin{DoxyParams}{Parameters}
{\em obj} & A pointer to the target object \\
\hline
{\em fraction} & Describes where the interpolation should be done. A fraction of zero is a clone of this object, a fraction of one is a clone of the target object. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The interpolated object 
\end{DoxyReturn}


Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a59b974e09f74f0a2640e3152893fe79f}{core\+::\+Object\+Data2D}.

\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!Is\+Within\+Constraints@{Is\+Within\+Constraints}}
\index{Is\+Within\+Constraints@{Is\+Within\+Constraints}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{Is\+Within\+Constraints(\+Object\+Data\+Ptr obj, std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&constraints) const override}{IsWithinConstraints(ObjectDataPtr obj, std::unordered\_map< std::string, double > \&constraints) const override}}]{\setlength{\rightskip}{0pt plus 5cm}bool core\+::\+Object\+Data\+Box\+::\+Is\+Within\+Constraints (
\begin{DoxyParamCaption}
\item[{Object\+Data\+Ptr}]{obj, }
\item[{std\+::unordered\+\_\+map$<$ std\+::string, double $>$ \&}]{constraints}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataBox_a04f4b780b79491270e4838f7504c1917}{}\label{classcore_1_1ObjectDataBox_a04f4b780b79491270e4838f7504c1917}
Checks if the difference between this object and the specified object is within the constraints specified. The difference is calculated for each constraint separately.


\begin{DoxyParams}{Parameters}
{\em obj} & The object to get the difference to \\
\hline
{\em constraints} & The constraints to assure \\
\hline
\end{DoxyParams}


Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a63e855919a72462225a8e69140f1389b}{core\+::\+Object\+Data2D}.

\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!To\+String@{To\+String}}
\index{To\+String@{To\+String}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{To\+String(char delimiter) const override}{ToString(char delimiter) const override}}]{\setlength{\rightskip}{0pt plus 5cm}std\+::string core\+::\+Object\+Data\+Box\+::\+To\+String (
\begin{DoxyParamCaption}
\item[{char}]{delimiter}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataBox_a0af10953ccecb7089a3a2841ec7419b9}{}\label{classcore_1_1ObjectDataBox_a0af10953ccecb7089a3a2841ec7419b9}
Returns a string representing the values of this object data.


\begin{DoxyParams}{Parameters}
{\em delimiter} & The delimiter used to separate values \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The string containing the values 
\end{DoxyReturn}


Reimplemented from \hyperlink{classcore_1_1ObjectData2D_a72b2f50ca82ebd9269e1c29cdac6d92a}{core\+::\+Object\+Data2D}.

\index{core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}!Visualize@{Visualize}}
\index{Visualize@{Visualize}!core\+::\+Object\+Data\+Box@{core\+::\+Object\+Data\+Box}}
\subsubsection[{\texorpdfstring{Visualize(cv\+::\+Mat \&image, cv\+::\+Scalar \&color) const override}{Visualize(cv::Mat \&image, cv::Scalar \&color) const override}}]{\setlength{\rightskip}{0pt plus 5cm}void core\+::\+Object\+Data\+Box\+::\+Visualize (
\begin{DoxyParamCaption}
\item[{cv\+::\+Mat \&}]{image, }
\item[{cv\+::\+Scalar \&}]{color}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}\hypertarget{classcore_1_1ObjectDataBox_ab29bacb20c258ba572d0372469ec5523}{}\label{classcore_1_1ObjectDataBox_ab29bacb20c258ba572d0372469ec5523}
Visualizes the object in the given image with the given color. This method does nothing, it needs to be overwritten to visualize something. 
\begin{DoxyParams}{Parameters}
{\em image} & The image to write into \\
\hline
{\em color} & The color to use \\
\hline
\end{DoxyParams}


Reimplemented from \hyperlink{classcore_1_1ObjectData2D_aff4e8539559f4ce50a7f43b733d6c512}{core\+::\+Object\+Data2D}.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
core/Object\+Data\+Box.\+h\item 
core/Object\+Data\+Box.\+cpp\end{DoxyCompactItemize}
