00001 #ifndef AAFractalImage_H 00002 #define AAFractalImage_H 00003 /*######################################################################## 00004 File: AAFractalImage.h 00005 Creation date: 25th May 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 00030 /*######################################################################## 00031 Declarations 00032 ########################################################################*/ 00033 00034 class FractalImage ; 00035 class Palette ; 00036 class Processor ; 00037 00038 /*######################################################################## 00039 Class Definition 00040 ########################################################################*/ 00041 00049 class AAFractalImage 00050 { 00051 public: 00052 AAFractalImage (FractalImage*) ; 00053 00054 void set_subpixel_gridsize (int) ; 00055 int inq_subpixel_gridsize (void) const { return m_subpixel_gridsize ; } 00056 00057 void restart (void) ; 00058 bool process (void) ; 00059 00060 bool inq_done (void) const { return m_done ; } 00061 int inq_progress (void) const { return m_progress ; } 00062 00063 private: 00065 FractalImage* m_image ; 00066 00070 int m_subpixel_gridsize ; 00071 00073 bool m_done ; 00074 00076 int m_progress ; 00077 00079 int m_x ; 00080 00082 int m_y ; 00083 00085 rgbcolour_t* m_curr_rgb_pixel ; 00086 00088 Vector2 m_curr_pixel ; 00089 00091 Vector2 m_rowstart ; 00092 00096 Vector2 m_xoffs ; 00097 00101 Vector2 m_yoffs ; 00102 00104 Vector2 m_xsuboffs ; 00105 00107 Vector2 m_ysuboffs ; 00108 } ; 00109 00110 00111 /*######################################################################## 00112 End 00113 ########################################################################*/ 00114 #endif
1.2.16