From d49cc0f7830319e701294e19937fae4de26ae8e2 Mon Sep 17 00:00:00 2001 From: Dean Camera Date: Thu, 11 Feb 2010 04:05:02 +0000 Subject: Add more include protection macros to give the user warnings when they try to manually include private driver header files, instead of the public driver headers. --- LUFA/Drivers/USB/Class/Common/Audio.h | 5 +++++ LUFA/Drivers/USB/Class/Common/CDC.h | 5 +++++ LUFA/Drivers/USB/Class/Common/HID.h | 5 +++++ LUFA/Drivers/USB/Class/Common/MIDI.h | 8 ++++++++ LUFA/Drivers/USB/Class/Common/MassStorage.h | 5 +++++ LUFA/Drivers/USB/Class/Common/Printer.h | 7 ++++++- LUFA/Drivers/USB/Class/Common/RNDIS.h | 10 +++++++++- LUFA/Drivers/USB/Class/Common/StillImage.h | 5 +++++ 8 files changed, 48 insertions(+), 2 deletions(-) (limited to 'LUFA/Drivers/USB/Class/Common') diff --git a/LUFA/Drivers/USB/Class/Common/Audio.h b/LUFA/Drivers/USB/Class/Common/Audio.h index 0e2c6928e..5d19b6f42 100644 --- a/LUFA/Drivers/USB/Class/Common/Audio.h +++ b/LUFA/Drivers/USB/Class/Common/Audio.h @@ -51,6 +51,11 @@ extern "C" { #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_AUDIO_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/Audio.h instead. + #endif + /* Macros: */ #if !defined(AUDIO_TOTAL_SAMPLE_RATES) || defined(__DOXYGEN__) /** Total number of discrete audio sample rates supported by the device. This value can be overridden by defining this diff --git a/LUFA/Drivers/USB/Class/Common/CDC.h b/LUFA/Drivers/USB/Class/Common/CDC.h index f6844979d..55f530ba9 100644 --- a/LUFA/Drivers/USB/Class/Common/CDC.h +++ b/LUFA/Drivers/USB/Class/Common/CDC.h @@ -51,6 +51,11 @@ extern "C" { #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_CDC_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/CDC.h instead. + #endif + /* Macros: */ /** CDC Class specific request to get the current virtual serial port configuration settings. */ #define REQ_GetLineEncoding 0x21 diff --git a/LUFA/Drivers/USB/Class/Common/HID.h b/LUFA/Drivers/USB/Class/Common/HID.h index 5afaf48c9..33a5af4ac 100644 --- a/LUFA/Drivers/USB/Class/Common/HID.h +++ b/LUFA/Drivers/USB/Class/Common/HID.h @@ -46,6 +46,11 @@ #include + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_HID_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/HID.h instead. + #endif + /* Macros: */ /** HID Class Specific Request to get the current HID report from the device. */ #define REQ_GetReport 0x01 diff --git a/LUFA/Drivers/USB/Class/Common/MIDI.h b/LUFA/Drivers/USB/Class/Common/MIDI.h index d0813038e..8eed10198 100644 --- a/LUFA/Drivers/USB/Class/Common/MIDI.h +++ b/LUFA/Drivers/USB/Class/Common/MIDI.h @@ -41,6 +41,9 @@ #ifndef _MIDI_CLASS_COMMON_H_ #define _MIDI_CLASS_COMMON_H_ + /* Macros: */ + #define __INCLUDE_FROM_AUDIO_DRIVER + /* Includes: */ #include "../../USB.h" #include "Audio.h" @@ -52,6 +55,11 @@ extern "C" { #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_MIDI_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/MIDI.h instead. + #endif + /* Macros: */ /** Audio class descriptor subtype value for a Audio class specific MIDI input jack descriptor. */ #define DSUBTYPE_InputJack 0x02 diff --git a/LUFA/Drivers/USB/Class/Common/MassStorage.h b/LUFA/Drivers/USB/Class/Common/MassStorage.h index 942d06b74..8726148a2 100644 --- a/LUFA/Drivers/USB/Class/Common/MassStorage.h +++ b/LUFA/Drivers/USB/Class/Common/MassStorage.h @@ -51,6 +51,11 @@ extern "C" { #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_MS_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/MassStorage.h instead. + #endif + /* Macros: */ /** Mass Storage Class specific request to reset the Mass Storage interface, ready for the next command. */ #define REQ_MassStorageReset 0xFF diff --git a/LUFA/Drivers/USB/Class/Common/Printer.h b/LUFA/Drivers/USB/Class/Common/Printer.h index ea6f1abb0..06ec0bb0b 100644 --- a/LUFA/Drivers/USB/Class/Common/Printer.h +++ b/LUFA/Drivers/USB/Class/Common/Printer.h @@ -49,8 +49,13 @@ /* Enable C linkage for C++ Compilers: */ #if defined(__cplusplus) extern "C" { - #endif + #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_PRINTER_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/Printer.h instead. + #endif + /* Macros: */ /** Port status mask for a printer device, indicating that an error has *not* occurred. */ #define PRNT_PORTSTATUS_NOTERROR (1 << 3) diff --git a/LUFA/Drivers/USB/Class/Common/RNDIS.h b/LUFA/Drivers/USB/Class/Common/RNDIS.h index ef98ccd56..258604deb 100644 --- a/LUFA/Drivers/USB/Class/Common/RNDIS.h +++ b/LUFA/Drivers/USB/Class/Common/RNDIS.h @@ -41,10 +41,13 @@ #ifndef _RNDIS_CLASS_COMMON_H_ #define _RNDIS_CLASS_COMMON_H_ + /* Macros: */ + #define __INCLUDE_FROM_CDC_DRIVER + /* Includes: */ #include "../../USB.h" - #include "CDC.h" #include "RNDISConstants.h" + #include "CDC.h" #include @@ -53,6 +56,11 @@ extern "C" { #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_RNDIS_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/RNDIS.h instead. + #endif + /* Macros: */ /** Implemented RNDIS Version Major */ #define REMOTE_NDIS_VERSION_MAJOR 0x01 diff --git a/LUFA/Drivers/USB/Class/Common/StillImage.h b/LUFA/Drivers/USB/Class/Common/StillImage.h index bbdc0d062..7b3df201a 100644 --- a/LUFA/Drivers/USB/Class/Common/StillImage.h +++ b/LUFA/Drivers/USB/Class/Common/StillImage.h @@ -51,6 +51,11 @@ extern "C" { #endif + /* Preprocessor Checks: */ + #if !defined(__INCLUDE_FROM_SI_DRIVER) + #error Do not include this file directly. Include LUFA/Drivers/Class/StillImage.h instead. + #endif + /* Macros: */ /** Length in bytes of a given Unicode string's character length * -- cgit v1.2.3