|
|
|
General Questions
What exactly is AimAdt?AimAdt is a tool for viewing two-dimensional numeric data. It consists of several operational components. The main component is the AimAdt library, which is a Java .jar class library. This library contains the AimViewer GUI and its associated methods, along with the AimImage I/O routines. The standalone AimAdt application is simply a main program wrapper for this library. When you interface your Java programs with this library, you either embed calls to the AimViewer class methods in your code, or invoke these methods directly from your debugger. (See Using AimAdt With Debuggers for more information on various debugger capabilities.) The C/C++ library files are additional components. These libraries are Java JNI "glue" routines that allow you to interface your C/C++ code with the AimAdt library without your having to get into the Java JNI library yourself. The C/C++ libraries are not system independent; you must have a compatible C/C++ library for your particular system. Back to TopHow do I obtain AimAdt?AimAdt is available through this web site. We have recently eliminated the trial version of AimAdt, and are now making the full edition of the current version of AimAdt (1.0.2) available at no charge. You can download the full edition here. Note that even there is no charge for AimAdt, it is still owned and copyright by Halegate Software. It is not open source code, nor is it public domain software. If you use AimAdt, you must still abide by the AimAdt end user license. Back to TopWhat are the system requirements for AimAdt?AimAdt is pure Java, so it should be able to run standalone or interface with your Java programs under any OS that supports a Java JRE/SDK 1.4.2 or later. AimAdt uses approximately 1.5 MB of memory when running, excluding the image/matrix data itself and the memory used by the JVM. AimAdt requires ~600KB of disk space, excluding the download file. The download file is ~480KB. For information on current platform support, see the Platform page. Back to TopWhat is included with AimAdt?The AimAdt release package includes:
*You do not need the interface libraries if you only interface AimAdt with Java programs or only use AimAdt standalone. Back to TopWhat else do I need in order to use AimAdt on my system?The only software that you need, other than the AimAdt package itself, is a Java 2 JRE/SDK, version 1.4.2 or later. This can be downloaded at no cost from Sun Microsystems at http://java.sun.com. The SDK is required if you intend to interface your code with AimAdt, either Java or C/C++. The JRE should be sufficient for stand-alone operation. Back to TopWhat base data types can AimAdt handle?AimAdt can handle arrays of the following base data types when called by either a Java or C/C++ program that is interfacing with it. In C/C++, the arrays must be one contiguous block of memory. In Java, the array can be either a one dimensional array of primitive data, a two dimensional array of arrays (an array of objects, where each object is a one dimensional array of primitive type), or a Raster object.
AimAdt can write arrays of any of the above data types to disk using its custom binary AimAdt Array format, and can also write them to disk in comma-separated text format (csv). The AimAdt Array format is used to save data for reuse in future AimAdt sessions.Back to TopWhat image types can AimAdt handle?The answer depends on several factors. Under Java version 1.4.2, AimAdt can directly read the following image types from disk, whether it is in stand-alone mode or interface mode:
Java version 1.5 (5.0) adds support for:
Finally, if you install the Java Advanced Imaging (JAI) Image I/O Tools package*, AimAdt can read these additional types:
(*Information on installing the JAI Image I/O Tools package can be found on the AimAdt support site, which you can get to through the AimAdt Support page. Read the document entitled "JAI Image I/O Tools" in the "Sections" area.) When interfacing with a Java program, AimAdt can accept the Raster object of any of the above supported image types, as well as any Raster that can be legally created in-memory. It can also accept a BufferedImage or AimImage object. (the AimImage class reads and writes AimAdt Array format images). AimAdt does not currently accept any image type objects from C/C++ programs. To display the image data, you must pass the data to AimAdt as a pointer to a contiguous array of one of the base data types. AimAdt does not currently allow the direct writing of the above Java supported image types. It does, however, allow you to write any of the base data types, as well as the supported image types, in a special binary format we call AimAdt Array format (.aaa). AimAdt Array format can be used to save data for later reuse in another AimAdt session. AimAdt can also write in ASCII comma separated (csv) format. At the moment, ASCII output only works with single-band images and matrices. Back to TopIn what formats can AimAdt display data?AimAdt can display the base data types in any of these display formats:
The octal, hex, and binary formats show 64 bit data in its entirety. Can AimAdt edit the displayed array data?No. At the current time, the data displayed by AimAdt cannot be modified, although it can be written to disk for later use by either AimAdt or an external application. You can also copy array data to the clipboard and paste it into another application (see below). Back to TopDo all of AimAdt's data arrays need to be the same size?No. Each array can be a different size. For at least the first version of AimAdt, however, all of the arrays will start at the upper-left position of the display grid, i.e. (0,0). Back to TopCan my program open and use more than one AimAdt grid window?If your interfacing program is written in Java you can have more than one grid window open, but the first release of AimAdt will only allow one window for C/C++ programs. Remember, however, that a grid window can display many arrays simultaneously, whether it is working with Java or C/C++ programs. Only one grid window is allowed in standalone mode, but you can always run more than one standalone copy of AimAdt. Or you can write your own custom stand-alone application. Back to TopCan I copy and paste AimAdt array data between the grid display and the clipboard?You can copy data from the AimAdt grid window to the clipboard, but at this time you cannot take data from the clipboard and paste it back into the grid. Data is copied as a numeric array, not as image data. The copied data can be pasted into an external application such as Microsoft Excel. Back to Top |
|