#ifndef USB_APPLICATION_ENUMSPY_H
#define USB_APPLICATION_ENUMSPY_H
   
   #include "usb/usb_bridge.h"

   #ifdef __CORE_USB_HEADER__
   extern const sUSBAppEntry_Control_t usbapplication_ACM_planarproto_enumspy;
   #endif

   typedef struct
   {
       void ( * startEnumerateTimeout )();
       void ( * stopEnumerateTimeout )();

       // checkEnumerateTimeout
       // Check if the host had not enumerate the device for a long time (ENUMERATE_TIMEOUT)
       // Returns: true in case the device had not been enumerated for a ENUMERATE_TIMEOUT ms
       bool ( * checkEnumerateTimeout )();

       // timerTickEventIrq1ms
       // 1-ms timer-IRQ event
       void ( * timerTickEventIrq1ms )();
   }
   sUsbApplicationEnumSpyHandle_t;

   extern const sUsbApplicationEnumSpyHandle_t UsbApplicationEnumSpyHandle;
#endif