62 lines
1.3 KiB
C
62 lines
1.3 KiB
C
|
//========== Copyright <20> Valve Corporation, All rights reserved. ========
|
|||
|
#ifndef VJOBSINTERFACE_HDR
|
|||
|
#define VJOBSINTERFACE_HDR
|
|||
|
|
|||
|
#include "appframework/iappsystem.h"
|
|||
|
|
|||
|
#define VJOBS_INTERFACE_VERSION "VJobs01"
|
|||
|
|
|||
|
#ifdef _PS3
|
|||
|
#define VJOBS_ON_SPURS 1
|
|||
|
#endif
|
|||
|
|
|||
|
enum RunTargetEnum
|
|||
|
{
|
|||
|
RUN_TARGET_MAIN_CPU,
|
|||
|
RUN_TARGET_SATELLITE_CPU,
|
|||
|
RUN_TARGET_GPU
|
|||
|
};
|
|||
|
|
|||
|
class VjobChain3;
|
|||
|
class VjobChain4;
|
|||
|
|
|||
|
namespace job_fpcpatch
|
|||
|
{
|
|||
|
struct FpcPatchState_t;
|
|||
|
}
|
|||
|
|
|||
|
namespace job_fpcpatch2
|
|||
|
{
|
|||
|
struct FpHeader_t;
|
|||
|
}
|
|||
|
|
|||
|
struct VJobsRoot;
|
|||
|
struct VJobInstance
|
|||
|
{
|
|||
|
VJobInstance(): m_pRoot( NULL ){}
|
|||
|
VJobsRoot* m_pRoot;
|
|||
|
int m_nIncrementalVectorIndex; // this instance will be part of incremental vector
|
|||
|
virtual void OnVjobsInit() {} // gets called after m_pRoot was created and assigned
|
|||
|
virtual void OnVjobsShutdown() {} // gets called before m_pRoot is about to be destructed and NULL'ed
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
struct IVJobs: public IAppSystem
|
|||
|
{
|
|||
|
// this must be called right before unloading PRX for the purpose of immediately reloading it
|
|||
|
virtual void BeforeReload() = 0;
|
|||
|
virtual void AfterReload() = 0;
|
|||
|
|
|||
|
virtual void SetRunTarget( RunTargetEnum nRunTarget ) = 0;
|
|||
|
|
|||
|
// virtual void StartTest() = 0;
|
|||
|
|
|||
|
virtual void Register( VJobInstance * pInstance ) = 0;
|
|||
|
virtual void Unregister( VJobInstance * pInstance ) = 0;
|
|||
|
|
|||
|
virtual void DoNothing() = 0;
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
#endif
|