Chrysalis - Pattern
Toggle main menu visibility
Loading...
Searching...
No Matches
Outline.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_OUTLINE_H
2
#define CHRYSALIS_OUTLINE_H
3
4
#include <vector>
5
6
#include "
Point.h
"
7
#include "
NamedElementsContainer.h
"
8
9
namespace
Chrysalis
{
10
class
Outline:
public
BaseNamedElement
{
11
SERIALIZE_DERIVED_FROM
(
BaseNamedElement
)
12
PROVIDE_DEFAULT_SERIALIZATION_ACCESS
(Outline)
13
public
:
14
explicit
Outline(
const
std::string& name);
15
16
void
add
(
const
Point
* point);
17
[[nodiscard]]
const
std::vector<const Point*>&
points
()
const
;
18
private
:
19
std::vector<const Point*> points_;
20
};
21
using
OutlineContainer
= std::unique_ptr<NamedElementsContainer<Outline>>;
22
}
23
24
#endif
//CHRYSALIS_OUTLINE_H
NamedElementsContainer.h
Point.h
Chrysalis::BaseNamedElement::BaseNamedElement
BaseNamedElement()=default
Chrysalis::Outline::points
const std::vector< const Point * > & points() const
Definition
Outline.cpp:7
Chrysalis::Outline::add
void add(const Point *point)
Definition
Outline.cpp:11
Chrysalis::Point
Definition
Point.h:9
Chrysalis
Definition
Argument.h:9
Chrysalis::OutlineContainer
std::unique_ptr< NamedElementsContainer< Outline > > OutlineContainer
Definition
Outline.h:21
PROVIDE_DEFAULT_SERIALIZATION_ACCESS
#define PROVIDE_DEFAULT_SERIALIZATION_ACCESS(Class)
Definition
serialization.h:45
SERIALIZE_DERIVED_FROM
#define SERIALIZE_DERIVED_FROM(Base,...)
Definition
serialization.h:71
pattern
include
Outline.h
Generated by
1.17.0