Author: tkreuzer Date: Mon Mar 29 07:48:15 2010 New Revision: 46560
URL: http://svn.reactos.org/svn/reactos?rev=46560&view=rev Log: Add RtlLargeInteger macros to wdm.h
Modified: trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h trunk/reactos/include/ddk/wdm.h
Modified: trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ext2/in... ============================================================================== --- trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h [iso-8859-1] (original) +++ trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h [iso-8859-1] Mon Mar 29 07:48:15 2010 @@ -42,8 +42,11 @@ /* REACTOS FIXME */ #undef DeleteFile /* This is deprecated and should be changed in the EXT2FS driver. */ + +/* FIXME : Those two definitions already exist in wdm.h #define RtlLargeIntegerLessThan(a, b) (a).QuadPart < (b).QuadPart #define RtlLargeIntegerGreaterThan(a, b) (a).QuadPart > (b).QuadPart +*/
// the following include files should be in the inc sub-dir associated with this driver
Modified: trunk/reactos/include/ddk/wdm.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/wdm.h?rev=46560... ============================================================================== --- trunk/reactos/include/ddk/wdm.h [iso-8859-1] (original) +++ trunk/reactos/include/ddk/wdm.h [iso-8859-1] Mon Mar 29 07:48:15 2010 @@ -6603,7 +6603,46 @@ #define RtlCheckBit(BMH,BP) (((((PLONG)(BMH)->Buffer)[(BP)/32]) >> ((BP)%32)) & 0x1) #endif // defined(_M_AMD64)
-#endif // !defined(MIDL_PASS) +#define RtlLargeIntegerGreaterThan(X,Y) ( \ + (((X).HighPart == (Y).HighPart) && ((X).LowPart > (Y).LowPart)) || \ + ((X).HighPart > (Y).HighPart) \ +) + +#define RtlLargeIntegerGreaterThanOrEqualTo(X,Y) ( \ + (((X).HighPart == (Y).HighPart) && ((X).LowPart >= (Y).LowPart)) || \ + ((X).HighPart > (Y).HighPart) \ +) + +#define RtlLargeIntegerNotEqualTo(X,Y) ( \ + (((X).LowPart ^ (Y).LowPart) | ((X).HighPart ^ (Y).HighPart)) \ +) + +#define RtlLargeIntegerLessThan(X,Y) ( \ + (((X).HighPart == (Y).HighPart) && ((X).LowPart < (Y).LowPart)) || \ + ((X).HighPart < (Y).HighPart) \ +) + +#define RtlLargeIntegerLessThanOrEqualTo(X,Y) ( \ + (((X).HighPart == (Y).HighPart) && ((X).LowPart <= (Y).LowPart)) || \ + ((X).HighPart < (Y).HighPart) \ +) + +#define RtlLargeIntegerGreaterThanZero(X) ( \ + (((X).HighPart == 0) && ((X).LowPart > 0)) || \ + ((X).HighPart > 0 ) \ +) + +#define RtlLargeIntegerGreaterOrEqualToZero(X) ( (X).HighPart >= 0 ) + +#define RtlLargeIntegerEqualToZero(X) ( !((X).LowPart | (X).HighPart) ) + +#define RtlLargeIntegerNotEqualToZero(X) ( ((X).LowPart | (X).HighPart) ) + +#define RtlLargeIntegerLessThanZero(X) ( ((X).HighPart < 0) ) + +#define RtlLargeIntegerLessOrEqualToZero(X) ( ((X).HighPart < 0) || !((X).LowPart | (X).HighPart) ) + +#endif /* !defined(MIDL_PASS) */
/* Byte Swap Functions */ #if (defined(_M_IX86) && (_MSC_FULL_VER > 13009037 || defined(__GNUC__))) || \