Go to the documentation of this file.
37 #include <RobotAPI/interface/aron.h>
50 {type::Maybe::OPTIONAL,
"::armarx::aron::type::Maybe::OPTIONAL"},
51 {type::Maybe::RAW_PTR,
"::armarx::aron::type::Maybe::RAW_PTR"},
52 {type::Maybe::SHARED_PTR,
"::armarx::aron::type::Maybe::SHARED_PTR"},
53 {type::Maybe::UNIQUE_PTR,
"::armarx::aron::type::Maybe::UNIQUE_PTR"}};
71 instantiatedCppTypename ,
72 const std::string& classCppTypename ,
73 const std::string& aronDataTypename,
74 const std::string& aronTypeTypename);
95 virtual std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
100 virtual std::pair<std::vector<std::pair<std::string, std::string>>,
bool>
115 const std::string& cppAccessor,
117 std::string& variantAccessor)
const = 0;
122 std::string& variantAccessor)
const = 0;
126 const std::string& variantAccessor)
const = 0;
130 const std::string& cppAccessorOther)
const;
143 std::string
nextEl()
const;
149 const std::string& args =
"")
const;
173 std::string instantiatedCppTypename;
174 std::string classCppTypename;
175 std::string aronDataTypename;
176 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