/* Copyright 2007-2008 Adobe Systems Incorporated Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt or a copy at http://stlab.adobe.com/licenses.html ) Not all compilers support yet, and some don't even have So, we have to do our own type definitions. */ /******************************************************************************/ #if _MSC_VER // for platforms that don't include the C99 header stdint.h // if your platform does not include stdint.h, please edit the #if above // to include your platform (and remember that it has to work elsewhere as well) template struct if_; template struct if_ { typedef T type; }; template struct if_{ typedef E type; }; typedef signed char int8_t; typedef unsigned char uint8_t; typedef signed short int16_t; typedef unsigned short uint16_t; typedef if_::type int32_t; typedef if_::type uint32_t; #if _MSC_VER typedef __int64 int64_t; typedef unsigned __int64 uint64_t; #else typedef long long int64_t; typedef unsigned long long uint64_t; #endif #else // for platforms that do have stdint.h // if your platform fails to find this header, please edit the #if above // to include your platform (and remember that it has to work elsewhere as well) #include #endif /******************************************************************************/