-                       /** Indicates if the device is currently being powered by its own power supply, rather than being\r
-                        *  powered by the host's USB supply. This flag should remain cleared if the device does not\r
-                        *  support self powered mode, as indicated in the device descriptors.\r
-                        *\r
-                        *  \ingroup Group_Device\r
-                        */\r
-                       extern bool USB_CurrentlySelfPowered;\r
-\r
-               /* Throwable Events: */\r
-                       /** This module raises the USB_UnhandledControlPacket event when a request to the default control\r
-                        *  endpoint has been received, but the library does not implement an internal handler for it.\r
-                        *\r
-                        *  \see Events.h for more information on this event.\r
-                        */\r
-                       RAISES_EVENT(USB_UnhandledControlPacket);\r
-\r
-                       /** This module raises the USB_ConfigurationChanged event when the host issues a REQ_SetConfiguration\r
-                        *  device request, to change the currently selected configuration number.\r
-                        *\r
-                        *  \see Events.h for more information on this event.\r
-                        */\r
-                       RAISES_EVENT(USB_ConfigurationChanged);\r
-\r
-                       /** This module raises the USB_DeviceEnumerationComplete event when the host has completed its\r
-                        *  enumeration of the device (i.e. when a REQ_SetConfiguration request changes the current configuration\r
-                        *  number from 0 to a non-zero value).\r
-                        *\r
-                        *  \see Events.h for more information on this event.\r
-                        */\r
-                       RAISES_EVENT(USB_DeviceEnumerationComplete);\r
+                       #if !defined(NO_DEVICE_SELF_POWER)\r
+                               /** Indicates if the device is currently being powered by its own power supply, rather than being\r
+                                *  powered by the host's USB supply. This flag should remain cleared if the device does not\r
+                                *  support self powered mode, as indicated in the device descriptors.\r
+                                *\r
+                                *  \ingroup Group_Device\r
+                                */\r
+                               extern bool USB_CurrentlySelfPowered;\r
+                       #endif\r