| 
							- #ifndef __WINDOWS2LINUX_H__
 - #define __WINDOWS2LINUX_H__
 - 
 - /*
 -  * LINUX SPECIFIC DEFINITIONS
 - */
 - //
 - // Data types conversions
 - //
 - #include <stdlib.h>
 - #include <string.h>
 - #include "basicDataTypeConversions.h"
 - 
 - #ifdef __cplusplus
 - namespace avxsynth {
 - #endif // __cplusplus
 - //
 - // purposefully define the following MSFT definitions
 - // to mean nothing (as they do not mean anything on Linux)
 - //
 - #define __stdcall
 - #define __cdecl
 - #define noreturn
 - #define __declspec(x)
 - #define STDAPI       extern "C" HRESULT
 - #define STDMETHODIMP HRESULT __stdcall
 - #define STDMETHODIMP_(x) x __stdcall
 - 
 - #define STDMETHOD(x)    virtual HRESULT x
 - #define STDMETHOD_(a, x) virtual a x
 - 
 - #ifndef TRUE
 - #define TRUE  true
 - #endif
 - 
 - #ifndef FALSE
 - #define FALSE false
 - #endif
 - 
 - #define S_OK                (0x00000000)
 - #define S_FALSE             (0x00000001)
 - #define E_NOINTERFACE       (0X80004002)
 - #define E_POINTER           (0x80004003)
 - #define E_FAIL              (0x80004005)
 - #define E_OUTOFMEMORY       (0x8007000E)
 - 
 - #define INVALID_HANDLE_VALUE    ((HANDLE)((LONG_PTR)-1))
 - #define FAILED(hr)              ((hr) & 0x80000000)
 - #define SUCCEEDED(hr)           (!FAILED(hr))
 - 
 - 
 - //
 - // Functions
 - //
 - #define MAKEDWORD(a,b,c,d) (((a) << 24) | ((b) << 16) | ((c) << 8) | (d))
 - #define MAKEWORD(a,b) (((a) << 8) | (b))
 - 
 - #define lstrlen                             strlen
 - #define lstrcpy                             strcpy
 - #define lstrcmpi                            strcasecmp
 - #define _stricmp                            strcasecmp
 - #define InterlockedIncrement(x)             __sync_fetch_and_add((x), 1)
 - #define InterlockedDecrement(x)             __sync_fetch_and_sub((x), 1)
 - // Windows uses (new, old) ordering but GCC has (old, new)
 - #define InterlockedCompareExchange(x,y,z)   __sync_val_compare_and_swap(x,z,y)
 - 
 - #define UInt32x32To64(a, b)                 ( (uint64_t) ( ((uint64_t)((uint32_t)(a))) * ((uint32_t)(b))  ) )
 - #define Int64ShrlMod32(a, b)                ( (uint64_t) ( (uint64_t)(a) >> (b) ) )
 - #define Int32x32To64(a, b)                  ((__int64)(((__int64)((long)(a))) * ((long)(b))))
 - 
 - #define MulDiv(nNumber, nNumerator, nDenominator)   (int32_t) (((int64_t) (nNumber) * (int64_t) (nNumerator) + (int64_t) ((nDenominator)/2)) / (int64_t) (nDenominator))
 - 
 - #ifdef __cplusplus
 - }; // namespace avxsynth
 - #endif // __cplusplus
 - 
 - #endif //  __WINDOWS2LINUX_H__
 
 
  |