Counter Strike : Global Offensive Source Code
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//========= Copyright � 1996-2005, Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================//
#ifndef __FILEIMAGE_H__
#define __FILEIMAGE_H__
#ifdef _WIN32
#pragma once
#endif
#include <stdio.h>
typedef void *FileHandle_t;
class FileImageStream { public: virtual void Read(void *pOut, int len)=0; // Returns true if there were any Read errors.
// Clears error status.
virtual bool ErrorStatus()=0; };
// Use to read out of a memory buffer..
class FileImageStream_Memory : public FileImageStream { public: FileImageStream_Memory(void *pData, int dataLen);
virtual void Read(void *pOut, int len); virtual bool ErrorStatus();
private: unsigned char *m_pData; int m_DataLen; int m_CurPos; bool m_bError; };
// Generic image representation..
class FileImage { public: FileImage() { Clear(); }
~FileImage() { Term(); }
void Term() { if(m_pData) delete [] m_pData;
Clear(); }
// Clear the structure without deallocating.
void Clear() { m_Width = m_Height = 0; m_pData = NULL; } int m_Width, m_Height; unsigned char *m_pData; };
// Functions to load/save FileImages.
bool Load32BitTGA( FileImageStream *fp, FileImage *pImage);
void Save32BitTGA( FileHandle_t fp, FileImage *pImage);
#endif
|