Region.h

00001 # ifndef Region_h
00002 # define Region_h Region_h
00003 
00004 
00005 // Dependencies
00006 #include "Element.h" // parent
00007 
00008 // Declaration
00009 namespace Conjecture {
00010 
00011     /*******************************************************************
00012      * \class Region
00013      *
00014      * \brief A sub-region of a Page, usually used to represent the
00015      * graphical area for a single column in a multi-column
00016      * image.
00017      *
00018      * May be sub-divided into a collection of Lines, Words, and/or
00019      * Glyphs.
00020      *
00021      * Currently expected to be relatively unimportant, and may actually
00022      * be removed if deemed unnecessary.
00023      *
00024      *******************************************************************/
00025 
00026   class Region : public Element {
00027   public:
00028     // Constructors/Destructors
00029     Region(Element* parent, const Coord& topleft, const Coord& bottomright);
00030 
00031     // Accessors
00032     virtual int type() const { return Type; }
00033 
00039     virtual Region* asRegion() { return this; }
00040     virtual const Region* asRegion() const { return this; }
00041 
00042     virtual void printSummary(std::ostream& os = std::cerr, const std::string& indent = "", int index = -1) const;
00043 
00053     static void test(int argc = 0, const char* argv[] = NULL);
00054 
00055   protected:
00056     // Methods
00057 
00058     // Accessors
00059 
00060   private:
00061     // Methods
00062 
00063     // Accessors
00064 
00065     // State
00066     static const ElementType Type = ELEMENT_REGION;
00067   };
00068 };
00069 
00070 # endif // Region_h
00071 

Generated on Wed Jun 14 15:08:02 2006 for Conjecture by  doxygen 1.4.6