GocrModule.h

00001 # ifndef GocrModule_h
00002 # define GocrModule_h GocrModule_h
00003 
00004 // C++ Dependencies
00005 # include "OCRModule.h"  // parent
00006 
00007 // C Dependencies (temporary)
00008 # include "gocr.h"  // job_t, job_init
00009 
00010 
00011 namespace Conjecture {
00012 
00024     class GocrModule : public OCRModule {
00025       public:
00026         GocrModule();
00027 
00028         virtual ProcessComponent *  createProcessComponent()   const;
00029         virtual SegmentComponent *  createSegmentComponent()   const;
00030         virtual IdentifyComponent*  createIdentifyComponent()  const;
00031         virtual FormatComponent  *  createFormatComponent()    const;
00032 
00033         virtual void processArgs(int argc, const char** argv, Env* env = NULL);
00034 
00035         // NOTE: All of these are public (and the getter isn't
00036         // read-only) due to the convoluted nature of underlying
00037         // 'gocr' code. It is hoped that 'gocr' will clean up its
00038         // reliance on Job, after which we can start enforcing a
00039         // cleaner design in these wrapper classes.
00040         inline Job*       job() const     { return this->_job; }
00041         inline Job* &     jobRef()        { return this->_job; }
00042         inline void       jobIs(Job* job) { this->_job = job;  }
00043 
00044       protected:
00045         
00046       private:
00047         Job*            _job;
00048   };
00049 }
00050 
00051 # endif // GocrModule_h

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