![]() |
ACA ToolKit Structure and FunctionalityOrganizationThe entire ACA ToolKit can be organized into:
LibrariesThe ACA ToolKit Libraries, written in C and C++, is a rich collection of library functions, utility programs, and classes, designed to support the efficient building of interactive information and decision support systems in the domain of environmental planning and management. Each library, which may be a collection of classes and functions, and has a well-defined scope address specific areas of functionality:
library func cla UI description
------- ---- --- -- -----------
libacautil 43 - N general utility functions, error
handling, platform-specific functions,
license management.
libgisdb 89 - N GIS map handling and data management
libxatk 210 3 Y X-based user interface, interface
resources management
libxgis 136 - Y X-based map drawing functions
libxgispage 26 - Y X-based GIS interface page
lib3d 93 - Y X-based 3D interface page
libxps 226 - Y X-based embedded expert-system
libxts 66 - Y time-series data handling and display
libCCets - 30 Y object data base including time-series
display and analysis
libCCtk - 13 N Container classes, application
configuration, text-parsing and text
data handling classes
libCCxtk - 11 Y X-based interface classes,
encompassing basic display functionality
and framework
libCCps - 4 Y Postscript class library
-----------------------------------------------------------------
TOTAL 889 61
Dependency layersThe libraries can be broadly classified as user-interface dependent and user-interface independent libraries. User-interface dependent libraries are typically based on X/Xlib. Libraries independent of the user interface would consist of data processing utilities like text parsing, application configuration, GIS data management, algorithms, container classes. The main reason for this classification is to make it easier to create data pre-processing utilities which don't depend on the user- interface, and pave the way for a future implementation on a medium other than X-windows.
Most of the current libraries, for historical reasons, are a collection of C-based functions and C++ classes. The current effort is to wrap the C-based functions around C++ classes, which would make it easier and faster to develop applications by creating a higher level of abstraction.
The libraries are identified on basis of dependency layers. The libraries at the lowest layer 0 are "stand-alone", and do not depend on any other ACA library. The dependency is constrained as follows:
Layer 3: lib3d libxgispage
| /
| /
| /
| /
Layer 2: libxts libxps libxgis
\ | / |
\ | / |
\__ | __/ |
Layer 1: libxatk libgisdb
/ | /
/ | /
/ | /
/ | /
Layer 0: libCCtk libacautil
| ||||||||
![]() © Copyright 1995-2012 by: ESS Environmental Software and Services GmbH AUSTRIA | print page | ||||||||