Added new KeyboardMouseMultiReport Device ClassDriver demo.
[pub/USBasp.git] / LUFA / Common / Common.h
index 837cb04..c1aa27a 100644 (file)
                         */
                        #define MACROE                  while (0)
 
+                       /** Convenience macro to determine the larger of two values.
+                        *
+                        *  \note This macro should only be used with operands that do not have side effects from being evaluated
+                        *        multiple times.
+                        *
+                        *  \param[in] x  First value to compare
+                        *  \param[in] y  First value to compare
+                        *
+                        *  \return The larger of the two input parameters
+                        */
+                       #define MAX(x, y)               ((x > y) ? x : y)
+
+                       /** Convenience macro to determine the smaller of two values.
+                        *
+                        *  \note This macro should only be used with operands that do not have side effects from being evaluated
+                        *        multiple times.
+                        *
+                        *  \param[in] x  First value to compare
+                        *  \param[in] y  First value to compare
+                        *
+                        *  \return The smaller of the two input parameters
+                        */
+                       #define MIN(x, y)               ((x < y) ? x : y)
+
                        /** Defines a volatile \c NOP statement which cannot be optimized out by the compiler, and thus can always
                         *  be set as a breakpoint in the resulting code. Useful for debugging purposes, where the optimiser
                         *  removes/reorders code to the point where break points cannot reliably be set.