How to Run ac++dump

This is a short page intended to help a novice user of the CDF Run II Software run the EventDump utility. It is intended as a mini-tutorial, with emphasis on the prefix "mini". This page will continue to evolve as more experience with this program is gained, and as required.


  • Version 3.6.0 of cdfsoft2 was used for this quick exploration of the EventDump routine. This is because I had a production test file known to be compatible with version 3.6.0. Other versions of cdfsoft2 can be explored, but in the interest of time, I do not do that. My intention is just to demonstrate the principles of running ac++dump.
  • There are two executables, ac++dump and AC++Dump, that are ostensibly both EventDump utilities. However, AC++Dump does not seem to be dumping the events in the file while ac++dump is able to. This statement appears to be true for Version 3.6.0 at least. This page will use the ac++dump executable.

    The first thing that you need to do is to setup the cdfsoft2 environment variables by typing:
    source ~cdfsoft/cdf2.cshrc
    setup cdfsoft2 3.6.0

    To call ac++dump, simply type that name in:

    You will be started off immediately in the EventDump environment. You can tell this because the prompt looks like this:
    Note that it is not standard for an AC++ program to begin at a level below the main AC++ environment.

    To see the possible commands available in EventDump, type:

    If you want to dump a class, add that class to the classList to be dumped. For example, if you wanted to dump CdfEmObjectColl, then you type:
    classList add CdfEmObjectColl
    Likewise, if you want to dump a class, add that bank to the bankList to be dumped. If you wanted to dump the CMUD bank, you would type:
    bankList add CMUD
    If you want to dump all banks, you need merely specify:
    set list t

    I would recommend that you turn on the statistics and reporting functions:
    stat on
    stat report

    To review the settings you have specified, check the values of the parameters:

    If these settings are to your satisfaction, exit the EventDump talk-to:

    You are now in the main AC++ enviroment. To see the possible commands available, type:

    You must specify an input file that you want to EventDump by talking to the DHInput module:
    talk DHInput
    input file <your_file>

    where <your_file> is the name of the file you want to dump events from.

    Now you can begin to dump events!
    begin -nev <num_events>
    where <num_events> is the number of events you wish to dump.

    Note that all of the output is "cout", your terminal window. If you want to dump the events to a file, you have to go back and talk to EventDump:
    talk EventDump

    To redirect the output of the event dump, type:
    output open <filename>
    where <filename> is the name of the file you wish to be created in the same directory in which you are currently running ac++dump.

    Exit from EventDump:

    Now you can start dumping events again:
    begin -nev <num_events>

    To exit from the AC++ environment, just type:
    The program will exit gracefully and a termination summary will be printed.

    Sometimes you need to determine what banks and storable objects are actually created in the data files. To do this, you can use the Edm_ObjectLister tool. Information on this tool can be found here.

    This page is maintained by Nancy Lai. Please direct comments and questions to