Chrysalis - Pattern
Toggle main menu visibility
Loading...
Searching...
No Matches
EdgeDartInstruction.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_EDGEDARTINSTRUCTION_H
2
#define CHRYSALIS_EDGEDARTINSTRUCTION_H
3
4
#include <boost/serialization/export.hpp>
5
6
#include "
arguments/SegmentArgument.h
"
7
#include "
arguments/OptionalArgument.h
"
8
#include "
instructions/BasePatternInstruction.h
"
9
13
namespace
Chrysalis
{
14
class
EdgeDartInstruction
:
public
BasePatternInstruction
{
15
PROVIDE_SERIALIZATION_ACCESS
(
EdgeDartInstruction
)
16
public
:
17
explicit
EdgeDartInstruction
(
ProjectSpace
*
space
,
args::patterns
* patterns,
18
const
args::segment
* edge,
const
args::vector
* dart,
19
args::number
&& leg1Intake,
const
args::optional<args::number>
* leg2Intake);
20
~EdgeDartInstruction
()
override
;
21
22
void
execute
()
override
;
23
private
:
25
const
args::segment
* edge_;
27
const
args::vector
* dart_;
29
args::number
leg1Intake_;
31
const
args::optional<args::number>
* leg2Intake_;
32
};
33
SERIALIZE_DERIVED_CONSTRUCTION
(
EdgeDartInstruction
,
BasePatternInstruction
, space_, patterns_, edge_, dart_, leg1Intake_, leg2Intake_)
34
}
36
37
#endif
//CHRYSALIS_EDGEDARTINSTRUCTION_H
BasePatternInstruction.h
OptionalArgument.h
SegmentArgument.h
Chrysalis::BasePatternInstruction
Definition
BasePatternInstruction.h:14
Chrysalis::BasePatternInstruction::space
ProjectSpace & space() const
Definition
BasePatternInstruction.h:21
Chrysalis::BasePatternInstruction::BasePatternInstruction
BasePatternInstruction(ProjectSpace *space, args::patterns *patterns)
Definition
BasePatternInstruction.cpp:5
Chrysalis::EdgeDartInstruction
Definition
EdgeDartInstruction.h:14
Chrysalis::EdgeDartInstruction::~EdgeDartInstruction
~EdgeDartInstruction() override
Definition
EdgeDartInstruction.cpp:10
Chrysalis::EdgeDartInstruction::EdgeDartInstruction
EdgeDartInstruction(ProjectSpace *space, args::patterns *patterns, const args::segment *edge, const args::vector *dart, args::number &&leg1Intake, const args::optional< args::number > *leg2Intake)
Definition
EdgeDartInstruction.cpp:5
Chrysalis::EdgeDartInstruction::execute
void execute() override
Definition
EdgeDartInstruction.cpp:16
Chrysalis::ProjectSpace
Definition
ProjectSpace.h:12
Chrysalis::args::vector
VectorArgument vector
Definition
VectorArgument.h:32
Chrysalis::args::optional
OptionalArgument< T > optional
Definition
OptionalArgument.h:30
Chrysalis::args::number
std::unique_ptr< BaseArgument< double > > number
Definition
BaseArgument.h:25
Chrysalis::args::patterns
PatternsContainerArgument patterns
Definition
PatternsContainerArgument.h:31
Chrysalis::args::segment
SegmentArgument segment
Definition
SegmentArgument.h:26
Chrysalis
Definition
Argument.h:9
PROVIDE_SERIALIZATION_ACCESS
#define PROVIDE_SERIALIZATION_ACCESS(Class)
Definition
serialization.h:29
SERIALIZE_DERIVED_CONSTRUCTION
#define SERIALIZE_DERIVED_CONSTRUCTION(Class, Base,...)
Definition
serialization.h:124
pattern
include
instructions
EdgeDartInstruction.h
Generated by
1.17.0