00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef INC_MI32_MG2BINARY_H
00022 #define INC_MI32_MG2BINARY_H
00023
00024 #ifndef INC_MI32_MGD2_H
00025 #include <mi32/mgd2.h>
00026 #endif
00027
00028
00029 #ifndef GENERATING_DOXYGEN_OUTPUT
00030 class BINARYTOREGIONINTERFACE;
00031 #endif
00032
00033
00034 namespace MGD {
00035
00037 class DEVICE_BINARY : public MGD::DEVICE {
00038 public:
00039
00041 DEVICE_BINARY ();
00042
00044 virtual ~DEVICE_BINARY ();
00045
00047 void ClearAll (
00048 ) { SetAll(false); }
00049
00050
00051 ERRVALUE ComputeRegion (
00052 BINARYTOREGIONINTERFACE &bintoreg
00053 ) const;
00054
00055 bool GetRange (
00056 INT32 x,
00057 INT32 y,
00058 INT32 x2,
00059 INT32& endx
00060 ) const {
00061 return (v_GetRange(x, y, x2, endx));
00062 }
00063
00064 bool GetValue (
00065 INT32 x,
00066 INT32 y
00067 ) const { return (v_GetValue(x, y)); }
00068
00070 void SetAll (
00071 bool value = true
00072 ) { v_SetAll(value); }
00073
00074 protected:
00075
00076 class CONTEXT : public MGD::CONTEXT {
00077 public:
00079 virtual ~CONTEXT();
00080
00081 protected:
00083 CONTEXT (
00084 MGD::DEVICE_BINARY *pDevice
00085 );
00086 private:
00087 #ifndef GENERATING_DOXYGEN_OUTPUT
00088 typedef MGD::CONTEXT BASECLASS;
00089 #endif
00090 };
00091
00092 private:
00093 #ifndef GENERATING_DOXYGEN_OUTPUT
00094 DEVICE_BINARY (const DEVICE_BINARY&);
00095 DEVICE_BINARY& operator= (const DEVICE_BINARY&);
00096
00097
00098 virtual MGD::PIXEL v_GetColorPixel (const COLOR& color);
00099 virtual COLORSPACE v_GetColorSpace () const;
00100 virtual bool v_UseAntiAliasing () const;
00101 #endif // GENERATING_DOXYGEN_OUTPUT
00102
00103
00104
00105 virtual bool v_GetRange (
00106 INT32 x,
00107 INT32 y,
00108 INT32 x2,
00109 INT32& endx
00110 ) const = 0;
00111
00112 virtual bool v_GetValue (
00113 INT32 x,
00114 INT32 y
00115 ) const = 0;
00116
00118 virtual void v_SetAll (
00119 bool value
00120 ) = 0;
00121
00122 };
00123
00124
00125 }
00126
00127 #endif // INC_MI32_MG2BINARY_H