Chrysalis - Pattern
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
9
13namespace Chrysalis {
16 public:
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
Definition BasePatternInstruction.h:14
ProjectSpace & space() const
Definition BasePatternInstruction.h:21
BasePatternInstruction(ProjectSpace *space, args::patterns *patterns)
Definition BasePatternInstruction.cpp:5
Definition EdgeDartInstruction.h:14
~EdgeDartInstruction() override
Definition EdgeDartInstruction.cpp:10
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
void execute() override
Definition EdgeDartInstruction.cpp:16
Definition ProjectSpace.h:12
VectorArgument vector
Definition VectorArgument.h:32
OptionalArgument< T > optional
Definition OptionalArgument.h:30
std::unique_ptr< BaseArgument< double > > number
Definition BaseArgument.h:25
PatternsContainerArgument patterns
Definition PatternsContainerArgument.h:31
SegmentArgument segment
Definition SegmentArgument.h:26
Definition Argument.h:9
#define PROVIDE_SERIALIZATION_ACCESS(Class)
Definition serialization.h:29
#define SERIALIZE_DERIVED_CONSTRUCTION(Class, Base,...)
Definition serialization.h:124