mirror of
https://github.com/0TheSpy/Seaside.git
synced 2025-01-11 11:33:01 +08:00
45 lines
789 B
C
45 lines
789 B
C
|
|
||
|
#ifndef TIER3_H
|
||
|
#define TIER3_H
|
||
|
|
||
|
#if defined( _WIN32 )
|
||
|
#pragma once
|
||
|
#endif
|
||
|
|
||
|
#include "tier2.h"
|
||
|
|
||
|
|
||
|
void ConnectTier3Libraries(CreateInterfaceFn* pFactoryList, int nFactoryCount);
|
||
|
void DisconnectTier3Libraries();
|
||
|
|
||
|
|
||
|
template< class IInterface, int ConVarFlag = 0 >
|
||
|
class CTier3AppSystem : public CTier2AppSystem< IInterface, ConVarFlag >
|
||
|
{
|
||
|
typedef CTier2AppSystem< IInterface, ConVarFlag > BaseClass;
|
||
|
|
||
|
public:
|
||
|
virtual bool Connect(CreateInterfaceFn factory)
|
||
|
{
|
||
|
if (!BaseClass::Connect(factory))
|
||
|
return false;
|
||
|
|
||
|
ConnectTier3Libraries(&factory, 1);
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
virtual void Disconnect()
|
||
|
{
|
||
|
DisconnectTier3Libraries();
|
||
|
BaseClass::Disconnect();
|
||
|
}
|
||
|
|
||
|
|
||
|
virtual AppSystemTier_t GetTier()
|
||
|
{
|
||
|
return APP_SYSTEM_TIER3;
|
||
|
}
|
||
|
};
|
||
|
|
||
|
|
||
|
#endif
|