Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
/                                                                   # top-root-level contains info for the unique detector version
 dettype (str)                                                      # detector type name, ex: cspad, pnccd, etc
 detid (str)                                                        # unique detector id, ex: 01234
 tscfile (uint)                                                     # time stamp of creation of this structure
 predecessor (str)                                                  # name of the previous detector if available or None
 successor (str)                                                    # name of the next detector if available or None
 tags (dict)                                                        # dictionary of tags associated with this version of detector
 <ctype>/                                                           # folder for calibration type
          ctype (str)                                               # calibration type name
          tags (dict)                                               # dictionary of tags associated with calibration type
          <tstamp-range>/                                           # folder for time stamp validity range
          <tstamp>[-<tstamp-end>]/                                  # folder for validity range. If <tstamp-end> is not specified - then valid to the end
                                  tsbegin (uint)                    # time stamp for the beginning of the validity range
                                  tsend (uint)                      # time stamp for the end of the validity range
                                  defaultv                          # reference to the default calibration, ex:  <vers-tstamp2>
                                  tags (dict)                       # dictionary of tags associated with validity range
                                  <vers-tstamp1>/                   # folder for version created on tstamp1
                                                 tsprodtsvers (uint)      # tstamp1 of this version production 
                                                 calib (ndarray)    # calibration data
                                                 tags (dict)        # dictionary of tags, 
                                                                    #   ex: array size, number of dimensions, shape, data type, experiment, run, comments, author
                                  <vers-tstamp2>/                   # folder for version created on tstamp2
                                                 tstamp_prodtsvers (uint)
                                                 calib (ndarray)
                                                 tags (dict)
           <tstamp2>[-<tstamp2-end>]/                               # folder for the next validity range.
 pedestals/                                                         # folder for the next calibration type, pedestals
 rms/                                                               # folder for the next calibration type, rms

...

Code Block
DCBase - base class for this project
====================================
tags        = obj.tags()                 # (dict) dictionary of tags associated with each object
tag         = obj.tag(k)                 # returns tag value for key k


DCStore methods
===============
tscfile     = cs.tscfile()               # (int) time stamp of the file creation
dettype     = cs.dettype()               # (str) detector type
detid       = cs.detid()                 # (str) detector id
detname     = cs.detname()               # (str) detector name of self object
predecessor = cs.predecessor()           # (str) detname of predecessor or None
successor   = cs.successor()             # (str) detname of successor or None
ctypes      = cs.ctypes()                # (list) calibration types in the file
ctgcto         = cs.ctypegrpctypeobj(ctype)         # (DCType ~ h5py.Group) calibration type object


DCType methods
==============
ctype       = cto.ctype()                # (str) of ctype name
tsranges    = ctgcto.ranges()               # (list) of time ranges for ctype
tsrgtsro        = ctgcto.rangegrprangeobj(tsrange)      # (DCRange ~ h5py.Group) time stamp validity range object


DCRange methods
===============
tsbegin     = tsrgtsro.begin()               # (int) time stamp beginning validity range
tsend       = tsrgtsro.end()                 # (int) time stamp ending validity range
versions    = tsrgtsro.versions()            # (list) versions of calibrations
versdef     = tsrgtsro.versdef()             # (DCVersion ~ h5py.Group) reference to the default version in the time-range groupobject
versgverso       = tsrgtsro.versgrp(vers)         # (DCVersion ~ h5py.Group) specified version in the time-range groupobject


DCVersion methods
=================
tsversprod  = versgverso.tsprod()             # (int) time stamp of the version production
calibdata   = versgverso.calib()              # (np.array) calibration array

...

Code Block
DCBase - base class for this project
====================================
obj.set_tags(d)                    # set (dict) dictionary of tags for object
obj.add_tag(k,v)                   # add (k,v) tag to the dictionary of tags for object
obj.del_tags()                     # delete all tags from the dictionary
obj.del_tag(k)                     # delete tag with key k


DCStore methods
===============
cs.set_tscfile(ts)                 # set (int) time stamp of the file creation  
cs.set_dettype(dettype)            # set (str) detector type
cs.set_detid(detid)                # set (str) detector id
cs.set_detname(detname)            # set (str) detector name of self object
cs.set_predecessor(pred)           # set (str) detname of predecessor or None
cs.set_successor(succ)             # set (str) detname of successor or None
cs.add_ctype(ctype)                # add (str) calibration type to the DCStore object
cs.del_ctype(ctype)                # delete ctype (str) from the DCStore object


DCType methods
==============
ctgcto.add_range(tsr)                 # add (str) of time ranges for ctype
ctgcto.del_range(tsr)                 # delete ctyperange from the DCType object


DCRange methods
===============
tsrgtsro.set_begin(tsbegin)            # set (int) time stamp beginning validity range
tsrgtsro.set_end(tsend)                # set (int) time stamp ending validity range
tsrgtsro.add_version(vers)             # set (DCVersion ~ h5py.Group) versions of calibrations
tsrgtsro.set_versdef(vers)             # set (DCVersion ~ h5py.Group) versions of calibrations
tsrgtsro.del_version(vers)             # delete version


DCVersion methods
=================
versgverso.set_tsprod(tsprod)           # set (int) time stamp of the version production
versgverso.add_calib(nda)               # set (np.array) calibration array

...