{{#each userImports as |userClass|}} {{#if userClass != className}} class {{className}}; {{/if}} {{/each}} class {{className}} { public: {{className}}(); {{className}}(const {{className}} &other); /** * Replaces the data being hold by this class with that of the other. */ void replaceData({{className}} &other); static {{className}} fromJson(QJsonObject source); void setFromJson(QJsonObject source); QJsonObject toJson(); // Properties {{#each properties as |p|}} {{#if p.description.length > 0}} /** * @brief {{p.description}} */ {{/if}} {{p.typeNameWithQualifiers}} {{p.name}}() const; {{#if p.description.length > 0}} /** * @brief {{p.description}} */ {{/if}} void set{{p.writeName}}({{p.typeNameWithQualifiers}} new{{p.writeName}}); {{#if p.isNullable}} bool {{p.name}}Null() const; void set{{p.writeName}}Null(); {{/if}} {{/each}} protected: {{#each properties as |p|}} {{#if p.defaultInitializer.length > 0}} {{p.typeNameWithQualifiers}} {{p.memberName}} = {{p.defaultInitializer}}; {{else}} {{p.typeNameWithQualifiers}} {{p.memberName}}; {{/if}} {{/each}} };