#ifndef XCSTATICMODELS_H #define XCSTATICMODELS_H #include "xasset.h" #include "xcstaticmodelwritable.h" class XModel; // Forward declaration class XCStaticModel_s : public XAsset { public: explicit XCStaticModel_s(); void ParseData(QDataStream *aStream) override; const XCStaticModelWritable& GetWritable() const; void SetWritable(const XCStaticModelWritable& writable); // Note: In a real implementation, we would have an XModel class // For now, we'll just use a pointer to Model as a placeholder void* GetXModel() const; void SetXModel(void* model); const float* GetOrigin() const; void SetOrigin(const float* origin, size_t count = 3); const float* GetInvScaledAxis() const; void SetInvScaledAxis(const float* axis, size_t rows = 3, size_t cols = 3); const float* GetAbsmin() const; void SetAbsmin(const float* absmin, size_t count = 3); const float* GetAbsmax() const; void SetAbsmax(const float* absmax, size_t count = 3); private: XCStaticModelWritable mWritable; void* mXModel = nullptr; // Placeholder for Model* float mOrigin[3] = {0.0f, 0.0f, 0.0f}; float mInvScaledAxis[3][3] = {{0.0f}}; float mAbsmin[3] = {0.0f, 0.0f, 0.0f}; float mAbsmax[3] = {0.0f, 0.0f, 0.0f}; }; #endif // XCSTATICMODELS_H