Geometrize  1.0
An application for geometrizing images into geometric primitives
Signals | Public Member Functions | Private Attributes | List of all members
geometrize::task::ShapeCollection Class Reference

The ShapeCollection class is a wrapper for the vector of shapes that have been added to the image task so far. More...

#include <shapecollection.h>

Inheritance diagram for geometrize::task::ShapeCollection:
Inheritance graph
[legend]
Collaboration diagram for geometrize::task::ShapeCollection:
Collaboration graph
[legend]

Signals

void signal_beforeAppendShapes (const std::vector< geometrize::ShapeResult > &)
 
void signal_sizeChanged (std::size_t to)
 
void signal_afterAppendShapes (const std::vector< geometrize::ShapeResult > &)
 

Public Member Functions

 ShapeCollection ()=default
 
ShapeCollectionoperator= (const ShapeCollection &)=delete
 
 ShapeCollection (const ShapeCollection &)=delete
 
 ~ShapeCollection ()=default
 
bool empty () const
 
std::size_t size () const
 
void clear ()
 
const std::vector< geometrize::ShapeResult > & getShapeVector () const
 
void appendShapes (const std::vector< geometrize::ShapeResult > &shapes)
 
geometrize::ShapeResult & back ()
 

Private Attributes

std::vector< geometrize::ShapeResult > m_shapes
 

Detailed Description

The ShapeCollection class is a wrapper for the vector of shapes that have been added to the image task so far.

Constructor & Destructor Documentation

◆ ShapeCollection() [1/2]

geometrize::task::ShapeCollection::ShapeCollection ( )
default

◆ ShapeCollection() [2/2]

geometrize::task::ShapeCollection::ShapeCollection ( const ShapeCollection )
delete

◆ ~ShapeCollection()

geometrize::task::ShapeCollection::~ShapeCollection ( )
default

Member Function Documentation

◆ appendShapes()

void geometrize::task::ShapeCollection::appendShapes ( const std::vector< geometrize::ShapeResult > &  shapes)
35 {
36  emit signal_beforeAppendShapes(shapes);
37  std::copy(shapes.begin(), shapes.end(), std::back_inserter(m_shapes));
38  emit signal_sizeChanged(m_shapes.size());
39  emit signal_afterAppendShapes(shapes);
40 }

◆ back()

geometrize::ShapeResult & geometrize::task::ShapeCollection::back ( )
43 {
44  return m_shapes.back();
45 }

◆ clear()

void geometrize::task::ShapeCollection::clear ( )
24 {
25  m_shapes.clear();
26  emit signal_sizeChanged(m_shapes.size());
27 }

◆ empty()

bool geometrize::task::ShapeCollection::empty ( ) const
14 {
15  return m_shapes.empty();
16 }

◆ getShapeVector()

const std::vector< geometrize::ShapeResult > & geometrize::task::ShapeCollection::getShapeVector ( ) const
30 {
31  return m_shapes;
32 }

◆ operator=()

ShapeCollection& geometrize::task::ShapeCollection::operator= ( const ShapeCollection )
delete

◆ signal_afterAppendShapes

void geometrize::task::ShapeCollection::signal_afterAppendShapes ( const std::vector< geometrize::ShapeResult > &  )
signal
Here is the caller graph for this function:

◆ signal_beforeAppendShapes

void geometrize::task::ShapeCollection::signal_beforeAppendShapes ( const std::vector< geometrize::ShapeResult > &  )
signal
Here is the caller graph for this function:

◆ signal_sizeChanged

void geometrize::task::ShapeCollection::signal_sizeChanged ( std::size_t  to)
signal
Here is the caller graph for this function:

◆ size()

std::size_t geometrize::task::ShapeCollection::size ( ) const
19 {
20  return m_shapes.size();
21 }

Member Data Documentation

◆ m_shapes

std::vector<geometrize::ShapeResult> geometrize::task::ShapeCollection::m_shapes
private

The documentation for this class was generated from the following files:
geometrize::task::ShapeCollection::m_shapes
std::vector< geometrize::ShapeResult > m_shapes
Definition: shapecollection.h:45
geometrize::task::ShapeCollection::signal_afterAppendShapes
void signal_afterAppendShapes(const std::vector< geometrize::ShapeResult > &)
geometrize::task::ShapeCollection::signal_beforeAppendShapes
void signal_beforeAppendShapes(const std::vector< geometrize::ShapeResult > &)
geometrize::task::ShapeCollection::signal_sizeChanged
void signal_sizeChanged(std::size_t to)