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.
25 lines
897 B
25 lines
897 B
// This is the interface to Valve atoms, a simple global table of pointers
|
|
// that does not change when we reload a game system. Its purpose is to facilitate
|
|
// on-the-fly unloading and reloading of AppSystems. The intended use is this:
|
|
// Appsystem allocates its interfaces on global heap (managed by tier0) and
|
|
// places pointers to those interfaces into the atom table. Then, when
|
|
// somebody unloads and reloads this system, the system will see that the atom
|
|
// is not NULL and reconnect so that the old pointers remain valid.
|
|
////////////////////////////////////////////////////////////////////////////////
|
|
|
|
#ifndef TIER0_ATOMS_HDR
|
|
#define TIER0_ATOMS_HDR
|
|
|
|
|
|
enum VAtomEnum
|
|
{
|
|
VATOM_VJOBS, // vjobs.prx system
|
|
VATOM_COUNT
|
|
};
|
|
|
|
// Do NOT cache these pointers to pointers, they may change
|
|
// the *GetVAtom() doesn't change, though
|
|
PLATFORM_INTERFACE void** GetVAtom( int nAtomIndex );
|
|
|
|
|
|
#endif
|