ftkstl.h

00001 //***************************************************************************************
00002 //
00003 // File supervisor: Crosswalk team
00004 //
00005 // Copyright 2008 Autodesk, Inc.  All rights reserved.  
00006 // Use of this software is subject to the terms of the Autodesk license agreement 
00007 // provided at the time of installation or download, or which otherwise accompanies 
00008 // this software in either electronic or hard copy form.
00009 //
00010 //***************************************************************************************
00011 
00012 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00013 #pragma once
00014 #endif
00015 
00016 //*********************************************************************************************
00017 //
00018 //
00019 //*********************************************************************************************
00020 
00021 #ifndef __DSSTLMFC_H__
00022 #define __DSSTLMFC_H__
00023 
00024 // resolve min/max conflict between windef.h and STL
00025 #ifdef min
00026     #undef min
00027     #define MIN_WAS_DEFINED
00028 #endif
00029 #ifdef max
00030     #undef max
00031     #define MAX_WAS_DEFINED
00032 #endif
00033 
00034 // To avoid including <bool.h>
00035 #ifndef _BOOL
00036 #define _BOOL
00037 #endif
00038 
00039 // C++ header files
00040 #include <new.h>
00041 #include <iostream.h>
00042 #include <fstream.h>
00043 
00044 
00045 //******************************************************************************
00046 //
00047 // Use the SGI Adapted Port STL Implementation
00048 //
00049 //******************************************************************************
00050 
00051 #include <algorithm>
00052 #include <deque>
00053 #include <functional>
00054 #include <iterator>
00055 #include <list>
00056 #include <map>
00057 #include <queue>
00058 #include <set>
00059 #include <stack>
00060 #include <vector>
00061 
00062 // some backwards compatibility
00063 #define __BEGIN_STL_NAMESPACE   __STL_BEGIN_NAMESPACE 
00064 #define __END_STL_NAMESPACE     __STL_END_NAMESPACE 
00065 
00066 // use only with the unix STL
00067 #ifdef sgi
00068 // A more user friendly define for the namespace name
00069 # define _STL             std
00070 // They changed the namespace define from std to __STD
00071 # define __STL            __STD
00072 # define std  __STD
00073 #endif
00074 
00075 // warning, an "#include <math.h>" unref the macros min and max
00076 #define max(a,b)        (((a) > (b)) ? (a) : (b))
00077 #define min(a,b)        (((a) < (b)) ? (a) : (b))
00078 
00079 // Done include STL headers
00080 #define __STL_OUTERMOST_HEADER_ID 0
00081 
00082 #endif /* __DSSTLMFC_H__ */