// Copyright 1999
// College of Computer Science
// Northeastern University Boston MA 02115

// This software may be used for educational purposes as long as this copyright
// notice is retained at the top of all files

// Should this software be modified, the words "Modified from Original" must be
// included as a comment below this notice

// All publication rights are retained.  This software or its documentation may
// not be published in any media either in whole or in part.

///////////////////////////////////////////////////////////////////////////////

// CHeaders.h

#ifndef CHEADERS_H_
#define CHEADERS_H_

// include the platform macros

#include "Platform.h"

// standard C files

#include <stdio.h>						// normal io
#include <ctype.h>						// character functions
#include <string.h>						// string & memory functions
#include <stdlib.h>						// general utility functions
#include <stdarg.h>						// argument list processing


///////////////////////////////////////////////////////////////////////
//                   BEGIN PLATFORM DEPENDENT CODE                   //

#if defined(CORE_PLATFORM_WIN32)

// C thread calls in Windows library
//   _beginthread _endthread

#include <process.h>

#endif // end WIN32 specific

#if defined(CORE_PLATFORM_MACOS)

// console emulator
#include <sioux.h>						// console emulator 

#endif // end MacOS specific

//                    END PLATFORM DEPENDENT CODE                    //
///////////////////////////////////////////////////////////////////////


// Include new-style standard headers

#include <string>					// C++ string

// The following includes will bring in all of the streams library

#include <sstream>					// string stream
#include <iostream>					// input/output stream
#include <fstream>					// file stream
#include <iomanip>					// io manipulators

// STL vector class

#include <vector>

// C++ math definitions

#include <limits>					// C++ numerical type sizes

// additional standard C files

#include <limits.h>					// integer limits
#include <float.h>					// floating point limits

#include <math.h>					// standard mathematical functions

#include <errno.h>					// runtime error codes
#include <time.h>					// date and time functions

#include <assert.h>					// assert macros for debugging

// 1999

using namespace std;

#endif // CHEADERS_H_

