#ifndef CCTexture_h
#define CCTexture_h
#include "CCResourceProvider.h"
#include "CCTexture.h"
#include "GraphicsContext3D.h"
#include "IntSize.h"
namespace cc {
class CCTexture {
public:
CCTexture() : m_id(0) { }
CCTexture(unsigned id, IntSize size, GC3Denum format)
: m_id(id)
, m_size(size)
, m_format(format) { }
CCResourceProvider::ResourceId id() const { return m_id; }
const IntSize& size() const { return m_size; }
GC3Denum format() const { return m_format; }
void setId(CCResourceProvider::ResourceId id) { m_id = id; }
void setDimensions(const IntSize&, GC3Denum format);
size_t bytes() const;
static size_t memorySizeBytes(const IntSize&, GC3Denum format);
private:
CCResourceProvider::ResourceId m_id;
IntSize m_size;
GC3Denum m_format;
};
}
#endif