#ifndef XCLIPMAP_H #define XCLIPMAP_H #include "xasset.h" #include class XCStaticModel_s; // Forward declaration class XCollisionAabbTree; // Forward declaration class XDmaterial_t; // Forward declaration class XCLeafBrushNode; // Forward declaration class XClipMap : public XAsset { public: explicit XClipMap(); void ParseData(QDataStream *aStream) override; const QString& GetName() const; void SetName(const QString& name); int GetChecksum() const; void SetChecksum(int checksum); // Note: In a real implementation, we would have proper handling for these arrays // For now, we'll just use placeholders void* GetStaticModels() const; void SetStaticModels(void* staticModels); int GetNumStaticModels() const; void SetNumStaticModels(int count); void* GetCollisionAabbTrees() const; void SetCollisionAabbTrees(void* trees); int GetNumCollisionAabbTrees() const; void SetNumCollisionAabbTrees(int count); void* GetMaterials() const; void SetMaterials(void* materials); int GetNumMaterials() const; void SetNumMaterials(int count); void* GetLeafBrushNodes() const; void SetLeafBrushNodes(void* nodes); int GetNumLeafBrushNodes() const; void SetNumLeafBrushNodes(int count); private: QString mName = ""; int mChecksum = 0; // Placeholders for arrays void* mStaticModels = nullptr; // Placeholder for XCStaticModel_s* int mNumStaticModels = 0; void* mCollisionAabbTrees = nullptr; // Placeholder for XCollisionAabbTree* int mNumCollisionAabbTrees = 0; void* mMaterials = nullptr; // Placeholder for XDmaterial_t* int mNumMaterials = 0; void* mLeafBrushNodes = nullptr; // Placeholder for XCLeafBrushNode* int mNumLeafBrushNodes = 0; }; #endif // XCLIPMAP_H