cpp-tizen-client.model-header.mustache Maven / Gradle / Ivy
{{#models}}{{#model}}/*
* {{classname}}.h
*
* {{description}}
*/
#ifndef _{{classname}}_H_
#define _{{classname}}_H_
{{/model}}{{/models}}
#include
{{#imports}}
{{{import}}}
{{/imports}}
#include "Object.h"
/** \defgroup Models Data Structures for API
* Classes containing all the Data Structures needed for calling/returned by API endpoints
*
*/
namespace Tizen {
namespace {{prefix}} {
{{#models}}{{#model}}
/*! \brief {{{description}}}
*
* \ingroup Models
*
*/
class {{classname}} : public Object {
public:
/*! \brief Constructor.
*/
{{classname}}();
{{classname}}(char* str);
/*! \brief Destructor.
*/
virtual ~{{classname}}();
/*! \brief Retrieve a string JSON representation of this class.
*/
char* toJson();
/*! \brief Fills in members of this class from JSON string representing it.
*/
void fromJson(char* jsonStr);
{{#vars}}
/*! \brief Get {{{description}}}
*/
{{dataType}}{{#isContainer}}{{#isMap}}{{/isMap}}{{^isMap}}<{{#items}}{{dataType}}{{/items}}>{{/isMap}}{{/isContainer}} {{getter}}();
/*! \brief Set {{{description}}}
*/
void {{setter}}({{dataType}} {{#isContainer}}{{#isMap}}{{/isMap}}{{^isMap}}<{{#items}}{{dataType}}{{/items}}>{{/isMap}}{{/isContainer}} {{name}});
{{/vars}}
private:
{{#vars}}
{{dataType}} {{#isContainer}}{{#isMap}}{{/isMap}}{{^isMap}}<{{#items}}{{dataType}}{{/items}}>{{/isMap}}{{/isContainer}}{{name}};
{{/vars}}
void __init();
void __cleanup();
};
{{/model}}
{{/models}}
}
}
#endif /* _{{classname}}_H_ */