Short and Long Term Requirements for Wire & Emittance Applications ================================================================== 16-Feb-2007 Alexander Present: P. Emma, P. Chu, G. White, H. Loos TOPIC: Division of responsibilities for writing wire scanner and emittance applications necessary for 2006 comissioning. The basic hierarchy of applications will look like this for BC-1. Emittance, ImageMan and the Wire Scanner viewer, will be in Matlab. The Wire Scanner Acq, and Camera Acq, are only EPICS applications, whose programming interfaces will be made available to the matlab programs to use. Emittance | ImageMan | | Wire Scranner viewer Sheng's Camera Acq Incl. Jitter Correction | Wire Scanner Acq RESOLUTION: For BC-1, the physics group will write the Emittance and Wire Scanner Viewer applications. The controls group will write the ImageMan, camera acq, and Wire Scanner Acq parts. The controls group will help with teh BC-1 effort as detailed below. The controls group will go on to write a more user friendly version of this hierarchy of programs, which we estimate to be ready only in Q4. AI: Controls need to give Henrik the RMAT for QUADs (therefore simply all devices), and he must be able to specify that he wants the model values from the exit (therefore start, middle, & exit) of devices. This'll be through AIDA. (*Greg*) AI: *Sergei* will write doc for API of ImageMan, so that it can be used by Emiitance app. Sergei will help to integrate the wire scan app viewer app into ImaegMan. Meeting would like Doug to give BPM data to caller along with wire data. Ideally Doug will provide an API by which the Wire scan can be initiated, and its status checked, so a user need only use one interactive program which can completely drive the wire scanner app (that is, without additionally using an EDM screen - see after meeting notes below). Confirm that Doug is doing the intensity correction. AI: *Henrik* to specify what BPM data he needs, for which BPMs, and his requirements for selecting bpms and wires to use. AI: *Paul* to write requirements for emittance. POST MEETING: Henrik and Greg talked to Doug Murray: After talking to Doug we realized that the interface to wire scanner and bpm data is not going to be as we originally envisaged (with the Wire scanner API returning the wire data, and bpm data, to a caller. Instead, in order to integrate with the larger Beam Synchronous Acquisition system (BSA), the high level code such as the Wire Scanner Viewer, will use the eDef ("Event Definitions" - analogous to BPM Definitions in SLC) interface to specify which data is to be acquired (TORO, WIRE motor, Photo Multiplier Tube, etc), and then use the API Doug will provide to initiate the wire scan itself. Ie, the sequence is: 1. use eDefs to specify what is to be acquired. The eDef system will start acquiring into circular buffers. 2. use Doug's API (implemented as PVs), to specify parameters of the wire scan, and then to start the wire scan. 3. use Doug's API to establish whether the scan has completed. 4. use eDefs API to harvest the resulting data. It seems that the high level code must use timestamps in the eDef data returned to find the data that was actually acquired during the wire scan! AI: *Greg* to ask Mike Zelazny to forward the Matlab API to eDefs to Henrik.