Object Oriented API Layers Improve Modularity of Applications
Controlling Accelerator Physics

T. Birke, R. Lange, R. Muller (BESSY)


With EPICS the architecture of core software and standard control programs is widely defined by the given tools. Installation of EPICS at BESSY II focuses on configuration and improvement issues. This does not hold for applications measuring and controlling accelerator physics. Despite similar problems at different sites these types of programs are hardly portable frequently due to the low degree of modularity or encapsulation. At BESSY dedicated API layers written in C ++ have proven to be a useful means to hide implementation details: An event driven interface on a windowing system (now: Xll/Motif) without detailed knowledge of that system. Device objects on top of the equipment access layer (now: CA/cdev) implement hardware specific control methods. That facilitates device independent coding of measurement sequences.