========================================================================= README.REVIEWER ========================================================================= Review No. : 001 Changed : $LastChangedDate$ Revision : $Revision$ Work Status : Not Compilable Author : Mateusz Loskot ========================================================================= About This Document ========================================================================= This document includes developer's notes about progress and current status of PostGIS FDO provider development. This document includes notes directed to PostGIS FDO reviewers. This document should be removed when 'fdordbms-postgis' branch will be merged into fdordbms' trunk. ========================================================================= Technical Notes ========================================================================= ------------------------------------------------------------------------- Reviews Organization ------------------------------------------------------------------------- New review is published every Friday and announced to Greg Boone. For every review, I create new tag from 'fdordbms-postgis' branch under following location: https://fdordbms.osgeo.org/source/browse/fdordbms/tags/ Review tag is named according to following convention: fdordbms-postgis-review-XXX where XXX is a subsequent review number, for example 001. After 'fdordbms-postgis' branch will be merged into the fdordbms/trunk, all review tags may be removed from the repository. ---------------------- Available Review Tags: ---------------------- 2006-08-14 - Review 001 (accepted 2006-08-23) https://fdordbms.osgeo.org/source/browse/fdordbms/tags/fdordbms-postgis-review-001 ------------------------------------------------------------------------- Source Code Refactoring ------------------------------------------------------------------------- I'm applying some refactoring changes to MySQL provider sources I'm porting to FDO PostGIS. Here are refactoring guidelines: - lines <= 80 chars long (rarely longer) - add Doxygen comments to every public prototype and class definition - use C++ (// nad ///) comments instead of C (/* */) - replacing C-style bruteforce casts with C++ casting operators - adding initialization for all variables - adding (many) asserts - add TODO: message in everywhere something is not 100% clear - compile PostGIS FDO with following compilation flags: -Wall -Wextra -Wuninitialized -Wunused -pedantic ------------------------------------------------------------------------- Compilation ------------------------------------------------------------------------- Compiled on Linux only. PostGIS files are added to building infrastructure (Makefile.am). Schema Manager for PostGIS is not yet implemented. So, there is one file in this package that does not compile because of lack of Schema Manager types. I'm working on Schema Manger this week, as well as on datastore, query and results operations in RDBI driver. ------------------------------------------------------------------------- Developer's Documentation ------------------------------------------------------------------------- PostGIS public API is documented in source code in form of Doxygen comments (///). So, it is easy to generate HTML form of developer's documentation. I put important tasks information and TODOs inline using Doxygen \tag tag and common TODO tag (uppercase): a) Headers and prototypes TODO using Doxygen format: /// \todo ..... b) Implementation-related TODO in .cpp files has following format: // TODO: mloskot - ... List of my inline comments and TODOs can be queried with: $ find . -type f | xargs grep 'todo' $ find . -type f | xargs grep mloskot All TODO notes are also generated as HTML pages by Doxygen, see 'Related Pages' link. -------------------------------------------------------------------------