| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- //+------------------------------------------------------------------+
- //| MetaTrader 5 API |
- //| Copyright 2000-2019, MetaQuotes Software Corp. |
- //| http://www.metaquotes.net |
- //+------------------------------------------------------------------+
- #pragma once
- //+------------------------------------------------------------------+
- //| Common MetaTrader 5 Platform config |
- //+------------------------------------------------------------------+
- class IMTConCommon
- {
- public:
- //--- LiveUpdate modes
- enum EnUpdateMode
- {
- UPDATE_DISABLE =0, // disable LiveUpdate
- UPDATE_ENABLE =1, // enable LiveUpdate
- UPDATE_ENABLE_BETA=2, // enable LiveUpdate, including beta releases
- //--- enumeration borders
- UPDATE_FIRST =UPDATE_DISABLE,
- UPDATE_LAST =UPDATE_ENABLE_BETA
- };
- //--- common methods
- virtual void Release(void)=0;
- virtual MTAPIRES Assign(const IMTConCommon* param)=0;
- virtual MTAPIRES Clear(void)=0;
- //--- server name
- virtual LPCWSTR Name(void) const=0;
- virtual MTAPIRES Name(LPCWSTR name)=0;
- //--- server full name
- virtual LPCWSTR NameFull(void) const=0;
- //--- owner full name (from license)
- virtual LPCWSTR Owner(void) const=0;
- //--- owner short name (from license)
- virtual LPCWSTR OwnerID(void) const=0;
- //--- owner host (from license)
- virtual LPCWSTR OwnerHost(void) const=0;
- //--- owner email (from license)
- virtual LPCWSTR OwnerEmail(void) const=0;
- //--- product full name (from license)
- virtual LPCWSTR Product(void) const=0;
- //--- license expiration date
- virtual INT64 ExpirationLicense(void) const=0;
- //--- license support date
- virtual INT64 ExpirationSupport(void) const=0;
- //--- max. trade servers count (from license)
- virtual UINT LimitTradeServers(void) const=0;
- //--- max. web servers count (from license)
- virtual UINT LimitWebServers(void) const=0;
- //--- max. real accounts count (from license)
- virtual UINT LimitAccounts(void) const=0;
- //--- max. trade deals count (from license)
- virtual UINT LimitDeals(void) const=0;
- //--- max. client groups count (from license)
- virtual UINT LimitGroups(void) const=0;
- //--- LiveUpdate mode
- virtual UINT LiveUpdateMode(void) const=0;
- virtual MTAPIRES LiveUpdateMode(const UINT mode)=0;
- //--- Total users
- virtual UINT TotalUsers(void) const=0;
- //--- Total real users
- virtual UINT TotalUsersReal(void) const=0;
- //--- Total deals
- virtual UINT TotalDeals(void) const=0;
- //--- Total orders
- virtual UINT TotalOrders(void) const=0;
- //--- Total history orders
- virtual UINT TotalOrdersHistory(void) const=0;
- //--- Total positions
- virtual UINT TotalPositions(void) const=0;
- //--- max. symbols count (from license)
- virtual UINT LimitSymbols(void) const=0;
- //--- Account Allocation URL
- virtual LPCWSTR AccountURL(void) const=0;
- virtual MTAPIRES AccountURL(LPCWSTR url)=0;
- //--- Account Deposit URL
- virtual LPCWSTR AccountDepositURL(void) const=0;
- virtual MTAPIRES AccountDepositURL(LPCWSTR url)=0;
- //--- Account Withdrawal URL
- virtual LPCWSTR AccountWithdrawalURL(void) const=0;
- virtual MTAPIRES AccountWithdrawalURL(LPCWSTR url)=0;
- };
- //+------------------------------------------------------------------+
- //| Common config events notification interface |
- //+------------------------------------------------------------------+
- class IMTConCommonSink
- {
- public:
- virtual void OnCommonUpdate(const IMTConCommon* /*config*/) { }
- virtual void OnCommonSync(void) { }
- };
- //+------------------------------------------------------------------+
|