Chrysalis - Project Composer
Loading...
Searching...
No Matches
Project1Composer.cpp File Reference
#include "projects/Project1Composer.h"
#include "composer.h"
#include "arguments/ParameterArgument.h"
#include "arguments/VectorFunctionArgument.h"
#include "initializers/Instructions.h"
#include "initializers/PatternInstructions.h"
#include "initializers/ConditionalInstructionsContainerInitializer.h"
#include "instructions/CurveInstruction.h"
#include "instructions/ResetTransformationInstruction.h"
#include "instructions/TransformInstruction.h"
#include "proxies/RayProxy.h"
#include "proxies/NameProxy.h"
#include "proxies/LineProxy.h"
#include "proxies/PointProxy.h"
#include "proxies/VectorProxy.h"
#include "proxies/SegmentProxy.h"
#include "proxies/OutlineProxy.h"
#include "proxies/ConditionProxy.h"
#include <boost/preprocessor/variadic/to_seq.hpp>
#include <boost/preprocessor/seq/for_each_i.hpp>
#include <boost/preprocessor/punctuation/comma_if.hpp>
#include <boost/preprocessor/cat.hpp>
Include dependency graph for Project1Composer.cpp:

Macros

#define GET_PATTERN_NAME(r, data, i, elem)
#define Use(...)
#define Block   Composer::Instructions(project_) << std::initializer_list<BaseInstruction*>
#define If(condition)
#define Else   << std::initializer_list<BaseInstruction*>
#define REPEAT_NAMES(d, data, elem)
#define names(...)
#define name(arg)

Macro Definition Documentation

◆ Block

#define Block   Composer::Instructions(project_) << std::initializer_list<BaseInstruction*>

◆ Else

#define Else   << std::initializer_list<BaseInstruction*>

◆ GET_PATTERN_NAME

#define GET_PATTERN_NAME ( r,
data,
i,
elem )
Value:
BOOST_PP_COMMA_IF(i) BOOST_PP_CAT(elem, _)->getSpace()

◆ If

#define If ( condition)
Value:
Composer::ConditionalInstructionsContainerInitializer(condition) << std::initializer_list<BaseInstruction*>
Definition ConditionalInstructionsContainerInitializer.h:10

◆ name

#define name ( arg)
Value:
name(std::make_unique<Argument<std::string>>(PointName::arg))
#define name(arg)
Definition Project1Composer.cpp:92

◆ names

#define names ( ...)
Value:
names(new args::container<Argument<std::string>>({BOOST_PP_SEQ_ENUM(BOOST_PP_SEQ_TRANSFORM(REPEAT_NAMES, ~, BOOST_PP_VARIADIC_TO_SEQ(__VA_ARGS__)))}))
#define REPEAT_NAMES(d, data, elem)
Definition Project1Composer.cpp:89
#define names(...)
Definition Project1Composer.cpp:90

◆ REPEAT_NAMES

#define REPEAT_NAMES ( d,
data,
elem )
Value:
new Argument<std::string>(PointName::elem)

◆ Use

#define Use ( ...)
Value:
Composer::PatternInstructions(new args::patterns({ \
BOOST_PP_SEQ_FOR_EACH_I( \
BOOST_PP_VARIADIC_TO_SEQ(__VA_ARGS__) \
) \
})) << std::initializer_list<BasePatternInstruction*> \
#define GET_PATTERN_NAME(r, data, i, elem)
Definition Project1Composer.cpp:75
Definition PatternInstructions.h:7