next up previous contents
Next: Running an Executable Up: A USERS GUIDE Previous: Histogram Managment

Creating an Executable

At the moment a user application builder program is not provided. This may change in the future. In the mean time, a user is expected to tailor the function called AppUserBuild, in the file AppUserBuild_template.cc, in order to define what modules should be available for use in the created executable.

\#include "Framework/APPUserBuild.hh"
\#include "Examples/ParmExample.hh"
\#include "Examples/UserExample.hh"
\#include "Examples/HistExample.hh"

AppUserBuild::AppUserBuild( AppFramework* theFramework )
    : AppBuild( theFramework )
{
    AppModule* aModule;
    
    aModule = new ParmExample( "ParmExample1", "Parameter example module 1" );
    add( aModule );

    aModule = new ParmExample( "ParmExample2", "Parameter example module 2" );
    add( aModule );

    aModule = new UserExample( "user", "UserExample example" );
    add( aModule );

    aModule = new HistExample( "hist", "Histogramming example" );
    add( aModule );
}
AppUserBuild::~AppUserBuild( )
{
}
Notes:
  1. ParmExample, UserExample, and HistExample are classes of type module. They are defined in the appropriate headers and in a real job would be modules provided by the offline group.
  2. ParmExample1 and ParmExample2 are module-instances of the same module. One of these should be talk(ed)_to in order to change its running conditions.
  3. AppUserBuild inherits from AppBuild. add( AppModule* ) is a member function of AppBuild. It takes a pointer to an AppModule and makes it know to the framework pointed to by ``theFramework'', which is passed as an argument from main.
AC++ is a package in the context of the SoftRelTools development environment. Once you have modified AppUserBuild you link it together with the release libraries. See ``Using the Run II Analysis Framework and Run II code'', CDF3891 for a discussion of how to do this. However in step 5 where it says to copy AppUserBuild_template.cc you should use your own.

Liz Sexton
Fri May 16 16:37:56 CDT 1997