HOME | Research | Media | Careers | Contacts | Products | Search | Publications | Site Map
CSIRO Mathematics, Informatics and Statistics

 

 

Image Analysis
Biotech Imaging Group
Application Areas
 Biotechnology
 Cellular Screening
 Health
 Asset Monitoring
 Exploration
 Other Areas
Skills
 Segmentation
 Feature Extraction
 Statistical Analysis
 Stereo Vision
 Image Motion
 
Projects
Imaging Services
Imaging Products
Track Record
Publications
Patents
Staff
next up previous contents
Next: LIAR header files Up: No Title Previous: The LIAR Error reporting

The LIAR ASC interface macros

The example code shown in Fig. 3b needs further explanation. Here, all referencing to the image data structure variables is done indirectly via ``function'' calls; that is getnumpixels and getinbuff. In fact, these are not true functions, but rather C macros or pseudo-functions that are defined in a separate header file; for example zed.h. In Fig. 6 an example header file is given corresponding to the image data structure shown in Fig. 2. Here, only the macros for retrieving or getting values indirectly are given Naturally, there exists the complementary set of macros for assigning values or for setting parameters. This complementry set is created by exchanging get with set in Fig. 6.

  figure185
Figure 6:   An example image macro header file for the image data structure shown in Fig. 2.

The advantages of using indirect referencing at the ASC interface level, via the standard set of macros are:

  • Porting image analysis routines between different IAS's is simplified since, references to image data have been standardized. All that needs to be changed is the right hand side (RHS) of Fig. 6, for each particular IAS. The left hand side (LHS) in principle never changes, other than via the the addition of more macros. This latter feature then helps to ensure backward compatibility; that is all future header files are simply supersets of previous header files.
  • The macro definitions can be used at all levels of implementation. Thereby, simplifying the porting of the higher-level routines.
  • No mapping of data to a common format needs to be done. This is automatically done indirectly via the use of the macros.
  • Image analysis routines become transparent to the data structures. Allowing higher-level LIAR routines to make use of already existing lower-level routines, which may or may not use indirect referencing of data structure variables.
  • The macro definitions can at some later stage be replaced by object-orientated methods: thus helping to facilitate the move to C++.


next up previous contents
Next: LIAR header files Up: No Title Previous: The LIAR Error reporting

Ed Breen
Tue Sep 3 17:19:31 EST 1996

© Copyright 2013, CSIRO Australia
Use of this web site and information available from
it is subject to our
Legal Notice and Disclaimer and Privacy Statement