/// <summary> /// Unregister from COM events and release referenced COM interfaces /// </summary> public void DisconnectFromCANoe() { //---------------------------------------- // Unregister from events of MostNetworkInterface //---------------------------------------- if (mMostNetworkInterface != null) { mMostNetworkInterface.OnAMSRx -= new CANoe._IMostNetworkInterfaceEvents_OnAMSRxEventHandler(mostNetworkInterface_OnAMSRx); } //---------------------------------------- // Release referenced COM interfaces //---------------------------------------- mMostApplicationFilter = null; mMostNetworkInterface = null; mMostDisassembler = null; mMeasurement = null; mApplication = null; }
/// <summary> /// Get CANoe COM Interfaces and do some initializing steps /// </summary> public void ConnectToCANoe() { //---------------------------------------- // Get CANoe COM interfaces //---------------------------------------- // general CANoe Interfaces mApplication = new CANoe.Application(); mMeasurement = (CANoe.Measurement)mApplication.Measurement; // MOST specific CANoe Interfaces CANoe.Network network = (CANoe.Network)mApplication.get_Networks("MOST Ring"); // The one and only MOST network of any CANoe configuration CANoe.Devices devices = (CANoe.Devices)network.Devices; CANoe.Device device = (CANoe.Device)devices["MOST 1"]; // The device of the CANoe configuration that has channel MOST1 assigned to mMostNetworkInterface = (CANoe.MostNetworkInterface)device.NetworkInterface; mMostApplicationFilter = (CANoe.MostApplicationFilter)mMostNetworkInterface.ApplicationFilter; mMostDisassembler = (CANoe.MostDisassembler)device.Disassembler; //---------------------------------------- // Initialize MOST Filters //---------------------------------------- // Prohibit MostNetworkInterface to fire any events mMostNetworkInterface.EventSources = 0; // Set filter-type of MostApplicationFilter to: pass filter mMostApplicationFilter.FilterType = 0; // Enable MostApplicationFilter mMostApplicationFilter.Enabled = true; //---------------------------------------- // Register for events of MostNetworkInterface //---------------------------------------- mMostNetworkInterface.OnAMSRx += new CANoe._IMostNetworkInterfaceEvents_OnAMSRxEventHandler(mostNetworkInterface_OnAMSRx); }