00001 #ifndef FastImageGen_H 00002 #define FastImageGen_H 00003 /*######################################################################## 00004 File: FastImageGen.h 00005 Creation date: 6th June 2002 00006 00007 Copyright 2002 Mark Williams, all rights reserved. 00008 Contact: mark@extrabit.com 00009 http://www.extrabit.com 00010 00011 This program is free software; you can redistribute it and/or 00012 modify it under the terms of the GNU General Public License 00013 as published by the Free Software Foundation; either version 2 00014 of the License, or (at your option) any later version. 00015 00016 This program is distributed in the hope that it will be useful, 00017 but WITHOUT ANY WARRANTY; without even the implied warranty of 00018 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00019 GNU General Public License for more details. 00020 00021 ########################################################################*/ 00022 00023 /*######################################################################## 00024 Headers 00025 ########################################################################*/ 00026 00027 #include "rgbcolour.h" 00028 #include "Vector2.h" 00029 #include "ImageGen.h" 00030 00031 /*######################################################################## 00032 Declarations 00033 ########################################################################*/ 00034 00035 /*######################################################################## 00036 Class Definition 00037 ########################################################################*/ 00038 00044 class FastImageGen : public ImageGen 00045 { 00046 public: 00047 FastImageGen (FractalImage*) ; 00048 00049 // Overriden from ImageGen base class. 00050 void init (void) ; 00051 void restart (void) ; 00052 bool process (void) ; 00053 bool inq_done (void) const ; 00054 int inq_progress (void) const ; 00055 00056 private: 00058 FractalImage* m_image ; 00059 00061 bool m_done ; 00062 00064 int m_progress ; 00065 00067 int m_x ; 00068 00070 int m_y ; 00071 00073 rgbcolour_t* m_curr_rgb_pixel ; 00074 00076 unsigned short* m_curr_pixel_itns ; 00077 00079 Vector2 m_curr_pixel ; 00080 00082 Vector2 m_rowstart ; 00083 00087 Vector2 m_xoffs ; 00088 00092 Vector2 m_yoffs ; 00093 } ; 00094 00095 00096 /*######################################################################## 00097 End 00098 ########################################################################*/ 00099 #endif
1.2.16