AdminGames.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /*-------------------------------------------------------------------------
  2. * fedsrv\AdminGames.H
  3. *
  4. * Declaration of CAdminGames
  5. *
  6. * Owner:
  7. *
  8. * Copyright 1986-1999 Microsoft Corporation, All Rights Reserved
  9. *-----------------------------------------------------------------------*/
  10. #ifndef __ADMINGAMES_H_
  11. #define __ADMINGAMES_H_
  12. #include "..\agc\IAGCCollectionImpl.h"
  13. /////////////////////////////////////////////////////////////////////////////
  14. // Conversion Function Templates
  15. template <>
  16. inline ImissionIGC* Host2Igc(CFSMission* p)
  17. {
  18. return p->GetIGCMission();
  19. }
  20. template <>
  21. inline CFSMission* Igc2Host(ImissionIGC* p)
  22. {
  23. return reinterpret_cast<CFSMission*>(p->GetPrivateData());
  24. }
  25. /////////////////////////////////////////////////////////////////////////////
  26. // CAdminGames
  27. //
  28. class ATL_NO_VTABLE CAdminGames :
  29. public IAGCCollectionImpl<CAdminGames, const ListFSMission, IAdminGames,
  30. CFSMission, IAdminGame, &LIBID_ALLEGIANCESERVERLib,
  31. const ListFSMission, IAdminGames, ImissionIGC, IAGCGame>,
  32. public CComCoClass<CAdminGames, &CLSID_AdminGames>
  33. {
  34. // Declarations
  35. public:
  36. DECLARE_REGISTRY_RESOURCEID(IDR_ADMINGAMES)
  37. DECLARE_PROTECT_FINAL_CONSTRUCT()
  38. DECLARE_AGC_TYPE(admin)
  39. // Interface Map
  40. public:
  41. BEGIN_COM_MAP(CAdminGames)
  42. COM_INTERFACE_ENTRY(IAdminGames)
  43. COM_INTERFACE_ENTRIES_IAGCCollectionImpl()
  44. END_COM_MAP()
  45. // Category Map
  46. public:
  47. BEGIN_CATEGORY_MAP(CAdminGames)
  48. IMPLEMENTED_CATEGORY(CATID_AllegianceAdmin)
  49. END_CATEGORY_MAP()
  50. // IAdminGames Interface Methods
  51. public:
  52. STDMETHODIMP Add(IAGCGameParameters* pCreationParameters);
  53. };
  54. /////////////////////////////////////////////////////////////////////////////
  55. #endif //__ADMINGAMES_H_