00001 /***************************************************************************** 00002 00003 The following code is derived, directly or indirectly, from the SystemC 00004 source code Copyright (c) 1996-2014 by all Contributors. 00005 All Rights reserved. 00006 00007 The contents of this file are subject to the restrictions and limitations 00008 set forth in the SystemC Open Source License (the "License"); 00009 You may not use this file except in compliance with such restrictions and 00010 limitations. You may obtain instructions on how to receive a copy of the 00011 License at http://www.accellera.org/. Software distributed by Contributors 00012 under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 00013 ANY KIND, either express or implied. See the License for the specific 00014 language governing rights and limitations under the License. 00015 00016 *****************************************************************************/ 00017 00018 /***************************************************************************** 00019 00020 sc_iostream.h - Portable iostream header file wrapper. 00021 00022 Original Author: Martin Janssen, Synopsys, Inc. 00023 00024 Note: Deprecated in the meantime, since all supported 00025 compilers are supposed to have a working C++ 00026 standard library. 00027 00028 CHANGE LOG AT END OF FILE 00029 *****************************************************************************/ 00030 00031 #ifndef SC_IOSTREAM_H 00032 #define SC_IOSTREAM_H 00033 00034 #include <ios> 00035 #include <iostream> 00036 #include <sstream> 00037 #include <fstream> 00038 #include <cstddef> 00039 #include <cstring> 00040 00041 // We use typedefs for istream and ostream here to get around some finickiness 00042 // from aCC: 00043 00044 namespace sc_dt { 00045 00046 typedef ::std::istream systemc_istream; 00047 typedef ::std::ostream systemc_ostream; 00048 00049 } // namespace sc_dt 00050 00051 // shortcuts that save some typing 00052 00053 #ifdef CCAST 00054 # undef CCAST 00055 #endif 00056 #define CCAST const_cast 00057 00058 #ifdef DCAST 00059 # undef DCAST 00060 #endif 00061 #define DCAST dynamic_cast 00062 00063 #ifdef RCAST 00064 # undef RCAST 00065 #endif 00066 #define RCAST reinterpret_cast 00067 00068 #ifdef SCAST 00069 # undef SCAST 00070 #endif 00071 #define SCAST static_cast 00072 00073 // $Log: sc_iostream.h,v $ 00074 // Revision 1.3 2011/08/26 20:46:18 acg 00075 // Andy Goodrich: moved the modification log to the end of the file to 00076 // eliminate source line number skew when check-ins are done. 00077 // 00078 // Revision 1.2 2011/02/18 20:38:43 acg 00079 // Andy Goodrich: Updated Copyright notice. 00080 // 00081 // Revision 1.1.1.1 2006/12/15 20:20:06 acg 00082 // SystemC 2.3 00083 // 00084 // Revision 1.3 2006/01/13 18:53:10 acg 00085 // Andy Goodrich: Added $Log command so that CVS comments are reproduced in 00086 // the source. 00087 // 00088 00089 #endif // !defined(SC_IOSTREAM_H)