123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- #pragma once
- #include <Array.h>
- #include <Text.h>
- #include <Writer.h>
- #include "TypeRegistry.h"
- class ModelInfoFactory;
- class ModelInfo : public virtual Framework::ReferenceCounter
- {
- private:
- Framework::Text modelPath;
- Framework::RCArray<Framework::Text> texturePaths;
- bool transparent;
- float size;
- public:
- ModelInfo();
- ModelInfo(const char* modelPath,
- Framework::RCArray<Framework::Text> texturePaths,
- bool transparent,
- float size);
- void writeTo(Framework::StreamWriter* zWriter) const;
- void setModelPath(Framework::Text path);
- void addTexturePath(Framework::Text path);
- void setTransparent(bool transparent);
- void setSize(float size);
- Framework::Text getModelPath() const;
- Framework::RCArray<Framework::Text> getTexturePaths() const;
- bool isTransparent() const;
- float getSize() const;
- friend ModelInfoFactory;
- };
- class ModelInfoFactory : public ObjectTypeFactory<ModelInfo>
- {
- public:
- ModelInfoFactory();
- ModelInfo* fromJson(Framework::JSON::JSONObject* zJson) const override;
- Framework::JSON::JSONObject* toJsonObject(
- ModelInfo* zObject) const override;
- JSONObjectValidationBuilder* addToValidator(
- JSONObjectValidationBuilder* builder) const override;
- };
|