XPlor/libs/xassets/xclipmap.h
2025-08-17 13:14:17 -04:00

83 lines
1.8 KiB
C++

#ifndef XCLIPMAP_H
#define XCLIPMAP_H
#include "xasset.h"
#include <QString>
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