|
#include <RobotAPI/libraries/aron/codegeneration/codegenerator/codewriter/cpp/generator/Generator.h>
Public Types | |
using | PointerType = GeneratorPtr |
Public Member Functions | |
Generator ()=delete | |
Generator (const std::string &instantiatedCppTypename, const std::string &classCppTypename, const std::string &aronDataTypename, const std::string &aronTypeTypename) | |
std::string | getClassCppTypename () const |
virtual CppBlockPtr | getCopyCtorBlock (const std::string &) const |
virtual std::pair< std::vector< std::pair< std::string, std::string > >, bool > | getCopyCtorInitializers (const std::string &) const |
virtual CppBlockPtr | getCtorBlock (const std::string &) const |
virtual std::pair< std::vector< std::pair< std::string, std::string > >, bool > | getCtorInitializers (const std::string &) const |
virtual CppBlockPtr | getDtorBlock (const std::string &) const |
virtual CppBlockPtr | getEqualsBlock (const std::string &cppAccessorThis, const std::string &cppAccessorOther) const |
std::string | getFullClassCppTypename () const |
std::string | getFullInstantiatedCppTypename () const |
std::string | getFullInstantiatedCppTypenameGenerator () const |
std::string | getInstantiatedCppTypename () const |
virtual std::vector< CppFieldPtr > | getPublicVariableDeclarations (const std::string &) const |
virtual CppBlockPtr | getReadBlock (const std::string &cppAccessor, const std::string &variantAccessor) const =0 |
virtual std::vector< std::string > | getRequiredIncludes () const |
virtual CppBlockPtr | getResetHardBlock (const std::string &cppAccessor) const |
virtual CppBlockPtr | getResetSoftBlock (const std::string &cppAccessor) const |
virtual const type::Variant & | getType () const =0 |
virtual CppBlockPtr | getWriteBlock (const std::string &cppAccessor, const Path &, std::string &variantAccessor) const =0 |
virtual CppBlockPtr | getWriteTypeBlock (const std::string &typeAccessor, const std::string &cppAccessor, const Path &, std::string &variantAccessor) const =0 |
CppCtorPtr | toCopyCtor (const std::string &) const |
CppCtorPtr | toCtor (const std::string &) const |
CppMethodPtr | toDtor (const std::string &) const |
CppMethodPtr | toEqualsMethod () const |
CppMethodPtr | toReadMethod () const |
CppMethodPtr | toResetHardMethod () const |
CppMethodPtr | toResetSoftMethod () const |
CppMethodPtr | toSpecializedDataReaderMethod (const ReaderInfo &info) const |
CppMethodPtr | toSpecializedDataWriterMethod (const WriterInfo &info) const |
CppMethodPtr | toSpecializedStaticDataReaderMethod (const StaticReaderInfo &info) const |
CppMethodPtr | toSpecializedTypeWriterMethod (const WriterInfo &info) const |
CppMethodPtr | toWriteMethod () const |
CppMethodPtr | toWriteTypeMethod () const |
virtual | ~Generator ()=default |
Static Public Member Functions | |
static std::string | EscapeAccessor (const std::string &) |
static std::string | ExtractCppTypename (const type::Variant &) |
static std::vector< std::string > | ExtractCppTypenames (const std::vector< type::VariantPtr > &) |
static std::unique_ptr< Generator > | FromAronType (const type::Variant &) |
Protected Member Functions | |
std::string | nextEl () const |
std::string | resolveMaybeAccessor (const std::string &) const |
CppBlockPtr | resolveMaybeEqualsBlock (const CppBlockPtr &, const std::string &, const std::string &) const |
std::string | resolveMaybeGenerator (const std::string &args="") const |
std::string | resolveMaybeGeneratorWithSetter (const std::string &, const std::string &args="") const |
CppBlockPtr | resolveMaybeReadBlock (const CppBlockPtr &, const std::string &, const std::string &) const |
CppBlockPtr | resolveMaybeResetHardBlock (const CppBlockPtr &, const std::string &) const |
CppBlockPtr | resolveMaybeResetSoftBlock (const CppBlockPtr &, const std::string &) const |
CppBlockPtr | resolveMaybeWriteBlock (const CppBlockPtr &, const std::string &) const |
std::string | toPointerAccessor (const std::string &) const |
Static Protected Attributes | |
static const std::string | ARON_MAYBE_TYPE_ACCESSOR |
static const std::string | ARON_OTHER_ACCESSOR = Generator::ARON_VARIABLE_PREFIX + "_o" |
static const std::string | ARON_PATH_ACCESSOR = Generator::ARON_VARIABLE_PREFIX + "_p" |
static const std::string | ARON_READER_ACCESSOR = Generator::ARON_VARIABLE_PREFIX + "_r" |
static const std::string | ARON_TEMPLATE_INSTANTIATIONS_ACCESSOR |
static const std::string | ARON_VARIABLE_PREFIX = "aron" |
static const std::string | ARON_VARIANT_RETURN_ACCESSOR |
static const std::string | ARON_WRITER_ACCESSOR = Generator::ARON_VARIABLE_PREFIX + "_w" |
Definition at line 65 of file Generator.h.
using PointerType = GeneratorPtr |
Definition at line 68 of file Generator.h.
|
delete |
Generator | ( | const std::string & | instantiatedCppTypename, |
const std::string & | classCppTypename, | ||
const std::string & | aronDataTypename, | ||
const std::string & | aronTypeTypename | ||
) |
Definition at line 97 of file Generator.cpp.
|
virtualdefault |
|
static |
Definition at line 53 of file Generator.cpp.
|
static |
Definition at line 72 of file Generator.cpp.
|
static |
|
static |
Definition at line 91 of file Generator.cpp.
std::string getClassCppTypename | ( | ) | const |
|
virtual |
|
virtual |
Reimplemented in ObjectClass.
Definition at line 501 of file Generator.cpp.
|
virtual |
|
virtual |
Reimplemented in IntEnum, Image, Matrix, Quaternion, NDArray, PointCloud, Bool, ObjectClass, Double, Float, Int, Long, and String.
Definition at line 489 of file Generator.cpp.
|
virtual |
|
virtual |
Reimplemented in PointCloud, Image, Matrix, Quaternion, ObjectClass, and IntEnumClass.
Definition at line 547 of file Generator.cpp.
std::string getFullClassCppTypename | ( | ) | const |
Definition at line 168 of file Generator.cpp.
std::string getFullInstantiatedCppTypename | ( | ) | const |
Definition at line 116 of file Generator.cpp.
std::string getFullInstantiatedCppTypenameGenerator | ( | ) | const |
Definition at line 139 of file Generator.cpp.
std::string getInstantiatedCppTypename | ( | ) | const |
|
virtual |
Reimplemented in IntEnumClass, and ObjectClass.
Definition at line 482 of file Generator.cpp.
|
pure virtual |
Implemented in PrimitiveGenerator< typeT, DerivedT >, PrimitiveGenerator< type::Int, Int >, PrimitiveGenerator< type::Float, Float >, PrimitiveGenerator< type::Bool, Bool >, PrimitiveGenerator< type::Long, Long >, PrimitiveGenerator< type::Double, Double >, PrimitiveGenerator< type::String, String >, Object, IntEnum, Image, Matrix, Quaternion, IntEnumClass, NDArray, PointCloud, AnyObject, List, Pair, Tuple, Dict, and ObjectClass.
|
virtual |
Reimplemented in Object, Image, Matrix, Quaternion, AnyObject, List, Pair, Tuple, PointCloud, Dict, and ObjectClass.
Definition at line 476 of file Generator.cpp.
|
virtual |
Reimplemented in Object, Bool, IntEnum, ObjectClass, Double, Float, Int, Long, String, Image, Matrix, Quaternion, and IntEnumClass.
Definition at line 529 of file Generator.cpp.
|
virtual |
Reimplemented in Object, IntEnum, Bool, ObjectClass, Image, Matrix, Quaternion, Double, Float, Int, Long, String, IntEnumClass, NDArray, PointCloud, List, Pair, Tuple, and Dict.
Definition at line 538 of file Generator.cpp.
|
pure virtual |
Implemented in SpecializedGeneratorBase< TypeT, DerivedT >.
|
pure virtual |
Implemented in PrimitiveGenerator< typeT, DerivedT >, PrimitiveGenerator< type::Int, Int >, PrimitiveGenerator< type::Float, Float >, PrimitiveGenerator< type::Bool, Bool >, PrimitiveGenerator< type::Long, Long >, PrimitiveGenerator< type::Double, Double >, PrimitiveGenerator< type::String, String >, AnyObject, Object, IntEnum, Image, Matrix, Quaternion, IntEnumClass, NDArray, PointCloud, List, Pair, Tuple, Dict, and ObjectClass.
|
pure virtual |
Implemented in Bool, AnyObject, Double, Float, Int, Long, String, Object, IntEnum, ObjectClass, Image, Matrix, Quaternion, IntEnumClass, NDArray, PointCloud, List, Pair, Tuple, and Dict.
|
protected |
Definition at line 613 of file Generator.cpp.
|
protected |
Definition at line 563 of file Generator.cpp.
|
protected |
Definition at line 735 of file Generator.cpp.
|
protected |
Definition at line 579 of file Generator.cpp.
|
protected |
Definition at line 602 of file Generator.cpp.
|
protected |
Definition at line 711 of file Generator.cpp.
|
protected |
Definition at line 655 of file Generator.cpp.
|
protected |
Definition at line 677 of file Generator.cpp.
|
protected |
Definition at line 694 of file Generator.cpp.
CppCtorPtr toCopyCtor | ( | const std::string & | name | ) | const |
Definition at line 209 of file Generator.cpp.
CppCtorPtr toCtor | ( | const std::string & | name | ) | const |
Definition at line 191 of file Generator.cpp.
CppMethodPtr toDtor | ( | const std::string & | name | ) | const |
Definition at line 229 of file Generator.cpp.
CppMethodPtr toEqualsMethod | ( | ) | const |
Definition at line 456 of file Generator.cpp.
|
protected |
CppMethodPtr toReadMethod | ( | ) | const |
Definition at line 339 of file Generator.cpp.
CppMethodPtr toResetHardMethod | ( | ) | const |
Definition at line 264 of file Generator.cpp.
CppMethodPtr toResetSoftMethod | ( | ) | const |
Definition at line 247 of file Generator.cpp.
CppMethodPtr toSpecializedDataReaderMethod | ( | const ReaderInfo & | info | ) | const |
CppMethodPtr toSpecializedDataWriterMethod | ( | const WriterInfo & | info | ) | const |
CppMethodPtr toSpecializedStaticDataReaderMethod | ( | const StaticReaderInfo & | info | ) | const |
CppMethodPtr toSpecializedTypeWriterMethod | ( | const WriterInfo & | info | ) | const |
CppMethodPtr toWriteMethod | ( | ) | const |
Definition at line 308 of file Generator.cpp.
CppMethodPtr toWriteTypeMethod | ( | ) | const |
Definition at line 281 of file Generator.cpp.
|
staticprotected |
Definition at line 149 of file Generator.h.
|
staticprotected |
Definition at line 155 of file Generator.h.
|
staticprotected |
Definition at line 150 of file Generator.h.
|
staticprotected |
Definition at line 151 of file Generator.h.
|
staticprotected |
Definition at line 153 of file Generator.h.
|
staticprotected |
Definition at line 147 of file Generator.h.
|
staticprotected |
Definition at line 154 of file Generator.h.
|
staticprotected |
Definition at line 152 of file Generator.h.