2021-06-16 18:48:15 +03:00

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