source-engine/public/tier0/systeminformation.h

57 lines
1.3 KiB
C
Raw Normal View History

2020-04-22 16:56:21 +00:00
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose:
//
// $NoKeywords: $
//
//=============================================================================//
#ifndef SYSTEMINFORMATION_H
#define SYSTEMINFORMATION_H
#ifdef _WIN32
#pragma once
#endif
#ifndef PLATFORM_INTERFACE
#define PLATFORM_INTERFACE
#endif
//
// Defines a possible outcome of a system call
//
enum SYSTEM_CALL_RESULT_t
{
SYSCALL_SUCCESS = 0, // System call succeeded
SYSCALL_FAILED = 1, // System call failed
SYSCALL_NOPROC = 2, // Failed to find required system procedure
SYSCALL_NODLL = 3, // Failed to find or load required system module
SYSCALL_UNSUPPORTED = 4, // System call unsupported on the OS
};
//
// Information about paged pool memory
//
struct PAGED_POOL_INFO_t
{
unsigned long numPagesUsed; // Number of Paged Pool pages used
unsigned long numPagesFree; // Number of Paged Pool pages free
};
//
// Plat_GetMemPageSize
// Returns the size of a memory page in kilobytes.
//
PLATFORM_INTERFACE unsigned long Plat_GetMemPageSize();
//
// Plat_GetPagedPoolInfo
// Fills in the paged pool info structure if successful.
//
PLATFORM_INTERFACE SYSTEM_CALL_RESULT_t Plat_GetPagedPoolInfo( PAGED_POOL_INFO_t *pPPI );
#endif // #ifndef SYSTEMINFORMATION_H