Autohit * Developer's Information

Introduction

This document offers some information about maintaining the base Autohit system.   Currently, it is a free-form rant, but we always go back and clean it later. 

This development environment differs from the packaged user environment.  There is a batch tool that will take the development environment and create an installable user environment.   Some user developed objects might be useful in the base system and can be integrated.

 

Files and Directories

./ Root directory.  This will be (should be) set at the  %AUTOHIT_ROOT% environment variable in the setenv.bat batch file.
./setenv.bat Sets the environment.  When you first launch a Shell (or DOS box), execute this batch file to set the environment.  You need to run it each and every shell you open!  This does not set global environment variables!

Also, if you've just installed, you need to edit this file and set AUTOHIT_ROOT to directory path where to where it is installed.

./make.bat Run a make on EVERYTHING!  If you add new component, package, or other source code, make sure this batch either compiles it or calls its makefile.
./makeDocs.bat Runs javadoc on the java packages.
./package.bat Packages the system for general users.  It will leave a .zip file in the root directory; distribute this, as it has everything they will need.  If you add new java packages or major components, you may need to edit this batch so that they are properly packaged.
./index.html This document.
./pack-setenv.bat This will become the setenv.bat in the packaged system.  Since everything is JAR'ed in the packaged system, the classpath needs to be set differently than in the this environment.  If you add a major new component or a 3rd partly library, you may need to edit this.
./*.java A few application classes.
./autohit/* Autohit runtime system. 
./creator/* Autohit compilers and other tools used for making Sims, Scenarios, and the like.
./lib/* 3rd party libraries.
./master/* Autohit remote control system.
./dev-test/* Classes and files used to test while developing.   This is not packaged for general users.
./test/* Tests and test samples for general users.   This is packaged for general users.
./docs/* Documentation tree.  ALL of this directory is packaged.
./redux/* Data reduction tools used for analyzing test data.
./package/* Working directory for packaging the system.   You can delete this at any time.

 

Making the System

The following is the procedure for making and packaging the system.