DASH provides a command line interface for turning on and off physics analysis that is coded in a suitably modular fashion. It controls the input and output of event based data. A simple session might go as follows:
DASH> path trgsel track stdcuts mycuts myana | specify the analysis DASH> talk trgsel choose muon | select the muon trigger DASH> filter on trgsel | require events pass muon-trigger DASH> filter on stdcuts | require standard cuts DASH> filter on mycuts | require events pass mycuts DASH> filter failed mycuts | only events that fail finalcuts DASH> book track | keep tracking histograms DASH> book myana | make histograms in myana DASH> output on scratch:bad_events.dst | write out events DASH> input run005759.dst | specify input file DASH> analyze DASH> input run005760.dst DASH> analyze ... DASH> hist/write scratch:bad_events.hbook | save histograms to disk DASH> exitIn the above example, trgsel, track and stdcuts are standard modules that the whole collaboration uses. The modules mycuts and myana are specific to this analysis. In this example the person is making histograms for events that fail his final cuts and writing the bad events to disk.