protected override void SetupInitialize(IEngineHub myEngineHub, IEngineContainer engineContainer, int engineID, bool setupGui) { base.SetupInitialize(myEngineHub, engineContainer, engineID, setupGui); m_StrategyHub = (StrategyHub)myEngineHub; this.m_Log = m_StrategyHub.Log; // set up our logging this.m_Market = m_StrategyHub.m_Market; // grab the market so we can have some instrument details }
// ***************************************************************** // **** Constructors **** // ***************************************************************** // /// <summary> /// Default Constructor called by the gui thread to start our data hub. /// </summary> public DataHub() : base("DataHub", UV.Lib.Application.AppInfo.GetInstance().LogPath, true, LogLevel.ShowAllMessages) { Log.AllowedMessages = LogLevel.ShowAllMessages; m_AppServices = UV.Lib.Application.AppServices.GetInstance(); // find our AppServices m_AppServices.TryLoadServicesFromFile("UVDataConfig.txt"); // load our needed services from our config. IService service = null; if (m_AppServices.TryGetService("MarketTTAPI", out service)) // find the TTAPI market, but cast it as a generic MarketHub. { m_Market = (UV.Lib.MarketHubs.MarketHub)service; m_Market.Log.AllowedMessages = LogLevel.ShowAllMessages; Hub hub = (Hub)service; hub.Log.IsViewActive = true; // Log.NewEntry(LogLevel.Major, "ConnectToServices: Found market {0}. Subscribing to events.", m_Market.ServiceName); m_Market.FoundResource += new EventHandler(HubEventEnqueue); m_Market.MarketStatusChanged += new EventHandler(HubEventEnqueue); m_Market.ServiceStateChanged += new EventHandler(HubEventEnqueue); } // // Rename our app services // FrontEnds.FrontEndServices frontEnd = FrontEnds.FrontEndServices.GetInstance(); frontEnd.AppName = "Data Recorder"; frontEnd.RunName = FrontEnds.FrontEndServices.RunNameType.Sim1; m_AppServices.Connect(); // tells all of our services to connect. m_AppServices.Start(); // tells all of our services to start. }