http://stxxl.sourceforge.net
<dementiev@ira.uka.de>
<beckmann@cs.uni-frankfurt.de>
http://www.boost.org/LICENSE_1_0.txt
#ifndef STXXL_TYPES_HEADER
#define STXXL_TYPES_HEADER
#ifdef STXXL_BOOST_CONFIG
#include <boost/config.hpp>
#endif
#include <stxxl/bits/namespace.h>
__STXXL_BEGIN_NAMESPACE
#ifdef STXXL_BOOST_CONFIG
#ifdef BOOST_MSVC
typedef __int64 int64;
typedef unsigned __int64 uint64;
#else
typedef long long int int64;
typedef unsigned long long int uint64;
#endif
#else
typedef long long int int64;
typedef unsigned long long int uint64;
#endif
enum { my_pointer_size = sizeof(void *) };
template <int PtrSize>
struct choose_int_types
{ };
template <>
struct choose_int_types<4>
{
typedef int int_type;
typedef unsigned unsigned_type;
};
template <>
struct choose_int_types<8>
{
typedef int64 int_type;
typedef uint64 unsigned_type;
};
typedef choose_int_types<my_pointer_size>::int_type int_type;
typedef choose_int_types<my_pointer_size>::unsigned_type unsigned_type;
typedef unsigned_type internal_size_type;
typedef uint64 external_size_type;
__STXXL_END_NAMESPACE
#endif