improved lots of stuff

This commit is contained in:
2025-08-06 00:12:36 +03:00
parent 817ed344b4
commit 5635cd1d69
27 changed files with 348 additions and 38 deletions

View File

@@ -7,20 +7,31 @@
struct FunnyFormatParameter_t
{
const char *szName;
uint32_t nDataSize;
void *pData;
const char *m_szName;
uint32_t m_nDataSize;
void *m_pData;
};
struct FunnyFormatObject_t
{
}
struct FunnyFormatData_t
{
bool m_bIsBinary;
CUtlVector<FunnyFormatParameter_t> m_parameters;
CUtlVector<FunnyFormatObject_t> m_parameters;
};
abstract_class IFunnyFormatManager
{
public:
virtual FunnyFormatData_t ReadFile( IFileHandle *pHandle ) = 0;
virtual FunnyFormatData_t ReadBinaryFile( IFileHandle *pHandle ) = 0;
virtual void WriteFile( IFileHandle *pHandle, FunnyFormatData_t data ) = 0;
};
IFunnyFormatManager *FunnyFormatManager();
#endif

View File

@@ -4,10 +4,6 @@
#include "iappsystem.h"
#include "tier0/platform.h"
#define FILESYSTEM_INTERFACE_NAME "FileSystem001"
#define FILESYSTEM_BACKEND_INTERFACE_NAME "FileSystemBackend001"
#define FILESYSTEM_PAK_INTERFACE_NAME "FileSystemPAK001"
enum EFileMode
{
FILEMODE_READ = 0x01,

View File

@@ -4,9 +4,6 @@
#include "iappsystem.h"
#include "tier0/platform.h"
#define GAME_WINDOW_INTERFACE_NAME "GameWindow001"
#define GAME_SDL_WINDOW_INTERFACE_NAME "SDLGameWindow001"
abstract_class IGameWindow: public IAppSystem
{
public:

0
public/jsonformat.h Normal file
View File

View File

@@ -1,6 +1,7 @@
#ifndef MATERIAL_SYSTEM_H
#define MATERIAL_SYSTEM_H
#include "iappsystem.h"
#include "tier0/platform.h"
@@ -62,9 +63,10 @@ abstract_class IImage : public IRenderingObject
public:
virtual void BlitTo( IImage *pImage );
};
abstract_class IRenderContext
abstract_class IRenderContext: public IAppSystem
{
public:
virtual IVertexBuffer *CreateVertexBuffer( uint32_t nSize ) = 0;
virtual IIndexBuffer *CreateIndexBuffer( uint32_t nSize ) = 0;
virtual IImage *CreateRenderTarget( uint32_t x, uint32_t y, EImageFormat eFormat, EMultisampleType eMultisampleType );
@@ -74,9 +76,13 @@ public:
virtual void DestroyImage( IImage *pImage );
};
abstract_class IMaterialSystem
abstract_class IMaterialSystem: public IAppSystem
{
public:
virtual void Init();
virtual void Frame( float fTime );
virtual void Shutdown();
IRenderContext *GetRenderContext();
};

View File

@@ -0,0 +1,30 @@
#ifndef TIER2_INI_H
#define TIER2_INI_H
#include "tier0/platform.h"
#include "tier1/utlstring.h"
abstract_class IINISection
{
public:
virtual bool GetBoolValue( const char *szKeyName ) = 0;
virtual int GetIntValue( const char *szKeyName ) = 0;
virtual const char *GetStringValue( const char *szKeyName ) = 0;
virtual CUtlString GetUTLStringValue( const char *szKeyName ) = 0;
};
abstract_class IINIFile
{
public:
virtual void GetSection( const char *szSectionName ) = 0;
};
abstract_class IINIManager
{
public:
virtual IINIFile *ReadString( const char *psz ) = 0;
};
IINIManager *INIManager();
#endif

View File