diff options
Diffstat (limited to 'public/movieobjects/dmeimage.h')
| -rw-r--r-- | public/movieobjects/dmeimage.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/public/movieobjects/dmeimage.h b/public/movieobjects/dmeimage.h new file mode 100644 index 0000000..e30b109 --- /dev/null +++ b/public/movieobjects/dmeimage.h @@ -0,0 +1,57 @@ +//========= Copyright Valve Corporation, All rights reserved. ============// +// +// A class representing an image +// +//============================================================================= + +#ifndef DMEIMAGE_H +#define DMEIMAGE_H +#ifdef _WIN32 +#pragma once +#endif + +#include "datamodel/dmelement.h" + + +//----------------------------------------------------------------------------- +// Forward declarations +//----------------------------------------------------------------------------- +enum ImageFormat; + + +//----------------------------------------------------------------------------- +// A class representing an image (2d or 3d bitmap) +//----------------------------------------------------------------------------- +class CDmeImage : public CDmElement +{ + DEFINE_ELEMENT( CDmeImage, CDmElement ); + +public: + // Methods related to image format + ImageFormat Format() const; + const char *FormatName() const; + + // returns a pointer to the image bits buffer + const void *ImageBits() const; + +public: + CDmAttributeVar<int> m_Width; + CDmAttributeVar<int> m_Height; + CDmAttributeVar<int> m_Depth; + +private: + CDmAttributeVar<int> m_Format; + CDmAttributeVarBinaryBlock m_Bits; +}; + + +//----------------------------------------------------------------------------- +// returns a pointer to the image bits buffer +//----------------------------------------------------------------------------- +inline const void *CDmeImage::ImageBits() const +{ + return m_Bits.Get(); +} + + +#endif // DMEIMAGE_H |