ISimBase.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. This software is subject to the license described in the License.txt file
  3. included with this software distribution. You may not use this file except in compliance
  4. with this license.
  5. Copyright (c) Dynastream Innovations Inc. 2012
  6. All rights reserved.
  7. */
  8. #pragma once
  9. #include "StdAfx.h"
  10. typedef enum {
  11. SIM_FIXED, // Fixed simulation type
  12. SIM_SWEEP, // Sweep values
  13. SIM_STEP // Alternate between min and max
  14. } SimDataTypes;
  15. //This delegate definition allows implementation of sim classes sending acknowledged messages
  16. public delegate void dRequestAckMsg(UCHAR* pucTxBuffer_);
  17. // This delegate definition allows implementation of sim classes sending broadcast data
  18. public delegate void dRequestBcastMsg(UCHAR* pucTxBuffer_);
  19. //This delegate definition allows implementation of sim classes updating message period
  20. public delegate void dRequestUpdateMesgPeriod(USHORT usMesgPeriod_);
  21. public interface class ISimBase{
  22. //Constructor: all simulators can define their own constructors, providing they are called properly in the channel class
  23. //Get Functions: simply return the requested values
  24. UCHAR getDeviceType();
  25. UCHAR getTransmissionType();
  26. USHORT getTransmitPeriod();
  27. DOUBLE getTimerInterval();
  28. //onTimerTock: called every channel timer event occurence
  29. void onTimerTock(USHORT eventTime);
  30. //ANT_eventNotification: handles incoming ANT events
  31. void ANT_eventNotification(UCHAR eventCode, UCHAR* pcBuffer);
  32. //get panel functions: Return the panel with sim defined controls pre-attached and the size and position values
  33. System::Windows::Forms::Panel^ getSimSettingsPanel();
  34. System::Windows::Forms::Panel^ getSimTranslatedDisplay();
  35. };