Go to the documentation of this file.
26 #include <RobotAPI/interface/aron.h>
52 {type::Maybe::OPTIONAL,
"::armarx::aron::type::Maybe::OPTIONAL"},
53 {type::Maybe::RAW_PTR,
"::armarx::aron::type::Maybe::RAW_PTR"},
54 {type::Maybe::SHARED_PTR,
"::armarx::aron::type::Maybe::SHARED_PTR"},
55 {type::Maybe::UNIQUE_PTR,
"::armarx::aron::type::Maybe::UNIQUE_PTR"}
73 Generator(
const std::string& instantiatedCppTypename ,
const std::string& classCppTypename ,
const std::string& aronDataTypename,
const std::string& aronTypeTypename);
94 virtual std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
getCtorInitializers(
const std::string&)
const;
98 virtual std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
getCopyCtorInitializers(
const std::string&)
const;
111 virtual CppBlockPtr getWriteTypeBlock(
const std::string& typeAccessor,
const std::string& cppAccessor,
const Path&, std::string& variantAccessor)
const = 0;
117 virtual CppBlockPtr getReadBlock(
const std::string& cppAccessor,
const std::string& variantAccessor)
const = 0;
133 std::string
nextEl()
const;
160 std::string instantiatedCppTypename;
161 std::string classCppTypename;
162 std::string aronDataTypename;
163 std::string aronTypeTypename;
std::string getFullInstantiatedCppTypename() const
CppMethodPtr toResetHardMethod() const
static const std::string ARON_MAYBE_TYPE_ACCESSOR
static const std::string ARON_VARIANT_RETURN_ACCESSOR
std::string getFullClassCppTypename() const
CppCtorPtr toCtor(const std::string &) const
virtual CppBlockPtr getReadBlock(const std::string &cppAccessor, const std::string &variantAccessor) const =0
virtual std::pair< std::vector< std::pair< std::string, std::string > >, bool > getCopyCtorInitializers(const std::string &) const
std::shared_ptr< CppCtor > CppCtorPtr
CppMethodPtr toSpecializedDataWriterMethod(const WriterInfo &info) const
static std::unique_ptr< Generator > FromAronType(const type::Variant &)
static std::string EscapeAccessor(const std::string &)
std::string resolveMaybeGeneratorWithSetter(const std::string &, const std::string &args="") const
std::shared_ptr< GeneratorFactory > SerializerFactoryPtr
static const std::string ARON_VARIABLE_PREFIX
std::string resolveMaybeAccessor(const std::string &) const
std::shared_ptr< CppBlock > CppBlockPtr
static const std::string ARON_WRITER_ACCESSOR
CppMethodPtr toResetSoftMethod() const
virtual CppBlockPtr getEqualsBlock(const std::string &cppAccessorThis, const std::string &cppAccessorOther) const
CppMethodPtr toDtor(const std::string &) const
static const std::string ARON_PATH_ACCESSOR
CppMethodPtr toWriteTypeMethod() const
std::string resolveMaybeGenerator(const std::string &args="") const
CppMethodPtr toSpecializedStaticDataReaderMethod(const StaticReaderInfo &info) const
static const std::string ARON_OTHER_ACCESSOR
std::string getFullInstantiatedCppTypenameGenerator() const
virtual CppBlockPtr getCtorBlock(const std::string &) const
virtual ~Generator()=default
std::shared_ptr< CppMethod > CppMethodPtr
virtual std::vector< std::string > getRequiredIncludes() const
CppMethodPtr toReadMethod() const
virtual std::vector< CppFieldPtr > getPublicVariableDeclarations(const std::string &) const
virtual CppBlockPtr getCopyCtorBlock(const std::string &) const
CppMethodPtr toEqualsMethod() const
CppBlockPtr resolveMaybeReadBlock(const CppBlockPtr &, const std::string &, const std::string &) const
std::string toPointerAccessor(const std::string &) const
std::shared_ptr< Generator > GeneratorPtr
CppBlockPtr resolveMaybeResetHardBlock(const CppBlockPtr &, const std::string &) const
CppBlockPtr resolveMaybeEqualsBlock(const CppBlockPtr &, const std::string &, const std::string &) const
static std::string ExtractCppTypename(const type::Variant &)
virtual CppBlockPtr getDtorBlock(const std::string &) const
virtual const type::Variant & getType() const =0
virtual std::pair< std::vector< std::pair< std::string, std::string > >, bool > getCtorInitializers(const std::string &) const
static std::vector< std::string > ExtractCppTypenames(const std::vector< type::VariantPtr > &)
CppMethodPtr toSpecializedDataReaderMethod(const ReaderInfo &info) const
CppMethodPtr toSpecializedTypeWriterMethod(const WriterInfo &info) const
std::string nextEl() const
CppBlockPtr resolveMaybeResetSoftBlock(const CppBlockPtr &, const std::string &) const
static const std::string ARON_READER_ACCESSOR
virtual CppBlockPtr getWriteBlock(const std::string &cppAccessor, const Path &, std::string &variantAccessor) const =0
CppMethodPtr toWriteMethod() const
virtual CppBlockPtr getResetHardBlock(const std::string &cppAccessor) const
std::string getClassCppTypename() const
std::string getInstantiatedCppTypename() const
CppCtorPtr toCopyCtor(const std::string &) const
virtual CppBlockPtr getResetSoftBlock(const std::string &cppAccessor) const
CppBlockPtr resolveMaybeWriteBlock(const CppBlockPtr &, const std::string &) const
const std::map< type::Maybe, std::string > Maybe2CppString
static const std::string ARON_TEMPLATE_INSTANTIATIONS_ACCESSOR
virtual CppBlockPtr getWriteTypeBlock(const std::string &typeAccessor, const std::string &cppAccessor, const Path &, std::string &variantAccessor) const =0