The purpose of the detector persistency service is the conversion of transient detector data objects to persistent detector data objects and vice versa. Detector data are all data related not to events, but necessary to interprete event data properly. This are geometry data and detector conditions (calibration data etc.). Usually the lifetime of these data spans at least several events. This requires the following functionality:
- the service is able to create transient objects,
- find the proper converter being able to create the persistent representation of the received object,
- invoke the object conversion using this converter.
- Converters being able to create persistent representations must be assigned to the service.
- The service will delegate object updates to the corresponding data converter.
Converters are given to the Persistency service at run-time and hence have to provide a common interface in order to be useful to the persistency service. The converters know about the mechanism to retrieve persistent objects (e.g. from ZEBRA, Objty, ) and pass created transient objects to the service. For a more detailed description of generic data persistency service functionalities please see the description of the event data service.