summaryrefslogtreecommitdiff
path: root/public/movieobjects/dmeimage.h
diff options
context:
space:
mode:
Diffstat (limited to 'public/movieobjects/dmeimage.h')
-rw-r--r--public/movieobjects/dmeimage.h57
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