PlotFile.h
资源名称:Vc_STL.rar [点击查看]
上传用户:sichengcw
上传日期:2009-02-17
资源大小:202k
文件大小:3k
源码类别:
STL
开发平台:
Visual C++
- /* This is part of libio/iostream, providing -*- C++ -*- input/output.
- Copyright (C) 1993 Free Software Foundation
- This file is part of the GNU IO Library. This library is free
- software; you can redistribute it and/or modify it under the
- terms of the GNU General Public License as published by the
- Free Software Foundation; either version 2, or (at your option)
- any later version.
- This library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this library; see the file COPYING. If not, write to the Free
- Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- As a special exception, if you link this library with files
- compiled with a GNU compiler to produce an executable, this does not cause
- the resulting executable to be covered by the GNU General Public License.
- This exception does not however invalidate any other reasons why
- the executable file might be covered by the GNU General Public License. */
- /*
- a very simple implementation of a class to output unix "plot"
- format plotter files. See corresponding unix man pages for
- more details.
- written by Doug Lea (dl@rocky.oswego.edu)
- converted to use iostream library by Per Bothner (bothner@cygnus.com)
- */
- #ifndef _PlotFile_h
- #ifdef __GNUG__
- #pragma interface
- #endif
- #define _PlotFile_h
- #include <fstream.h>
- /*
- Some plot libraries have the `box' command to draw boxes. Some don't.
- `box' is included here via moves & lines to allow both possiblilties.
- */
- extern "C++" {
- class PlotFile : public ofstream
- {
- protected:
- PlotFile& cmd(char c);
- PlotFile& operator << (const int x);
- PlotFile& operator << (const char *s);
- public:
- PlotFile() : ofstream() { }
- PlotFile(int fd) : ofstream(fd) { }
- PlotFile(const char *name, int mode=ios::out, int prot=0664)
- : ofstream(name, mode, prot) { }
- // PlotFile& remove() { ofstream::remove(); return *this; }
- // int filedesc() { return ofstream::filedesc(); }
- // const char* name() { return File::name(); }
- // void setname(const char* newname) { File::setname(newname); }
- // int iocount() { return File::iocount(); }
- PlotFile& arc(const int xi, const int yi,
- const int x0, const int y0,
- const int x1, const int y1);
- PlotFile& box(const int x0, const int y0,
- const int x1, const int y1);
- PlotFile& circle(const int x, const int y, const int r);
- PlotFile& cont(const int xi, const int yi);
- PlotFile& dot(const int xi, const int yi, const int dx,
- int n, const int* pat);
- PlotFile& erase();
- PlotFile& label(const char* s);
- PlotFile& line(const int x0, const int y0,
- const int x1, const int y1);
- PlotFile& linemod(const char* s);
- PlotFile& move(const int xi, const int yi);
- PlotFile& point(const int xi, const int yi);
- PlotFile& space(const int x0, const int y0,
- const int x1, const int y1);
- };
- } // extern "C++"
- #endif