1/***************************************************************************** 2 3 Licensed to Accellera Systems Initiative Inc. (Accellera) under one or 4 more contributor license agreements. See the NOTICE file distributed 5 with this work for additional information regarding copyright ownership. 6 Accellera licenses this file to you under the Apache License, Version 2.0 7 (the "License"); you may not use this file except in compliance with the 8 License. You may obtain a copy of the License at 9 10 http://www.apache.org/licenses/LICENSE-2.0 11 12 Unless required by applicable law or agreed to in writing, software 13 distributed under the License is distributed on an "AS IS" BASIS, 14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 15 implied. See the License for the specific language governing 16 permissions and limitations under the License. 17 18 *****************************************************************************/ 19 20/***************************************************************************** 21 22 sc_iostream.h - Portable iostream header file wrapper. 23 24 Original Author: Martin Janssen, Synopsys, Inc. 25 26 Note: Deprecated in the meantime, since all supported 27 compilers are supposed to have a working C++ 28 standard library. 29 30 CHANGE LOG AT END OF FILE 31 *****************************************************************************/ 32 33#ifndef SC_IOSTREAM_H 34#define SC_IOSTREAM_H 35 36#include <ios> 37#include <iostream> 38#include <sstream> 39#include <fstream> 40#include <cstddef> 41#include <cstring> 42 43// We use typedefs for istream and ostream here to get around some finickiness 44// from aCC: 45 46namespace sc_dt { 47 48typedef ::std::istream systemc_istream; 49typedef ::std::ostream systemc_ostream; 50 51} // namespace sc_dt 52 53// shortcuts that save some typing 54 55#ifdef CCAST 56# undef CCAST 57#endif 58#define CCAST const_cast 59 60#ifdef DCAST 61# undef DCAST 62#endif 63#define DCAST dynamic_cast 64 65#ifdef RCAST 66# undef RCAST 67#endif 68#define RCAST reinterpret_cast 69 70#ifdef SCAST 71# undef SCAST 72#endif 73#define SCAST static_cast 74 75// $Log: sc_iostream.h,v $ 76// Revision 1.3 2011/08/26 20:46:18 acg 77// Andy Goodrich: moved the modification log to the end of the file to 78// eliminate source line number skew when check-ins are done. 79// 80// Revision 1.2 2011/02/18 20:38:43 acg 81// Andy Goodrich: Updated Copyright notice. 82// 83// Revision 1.1.1.1 2006/12/15 20:20:06 acg 84// SystemC 2.3 85// 86// Revision 1.3 2006/01/13 18:53:10 acg 87// Andy Goodrich: Added $Log command so that CVS comments are reproduced in 88// the source. 89// 90 91#endif // !defined(SC_IOSTREAM_H) 92