

def get_driver_info(self):
    ' Return list of driver info dictionaries. '
    top = self._cfg_map.keys()[0].parent
    while top.parent:
        top = top.parent
    prefix_drop = 0
    driver_info = []
    for (driver, (ins, outs)) in sorted(self._cfg_map.items(), key=(lambda item: item[0].get_pathname())):
        name = driver.get_pathname()[prefix_drop:]
        info = dict(name=name, _id=id(driver), recording=(ins + outs))
        if hasattr(driver, 'get_parameters'):
            info['parameters'] = [str(param) for param in driver.get_parameters().values()]
        if hasattr(driver, 'eval_objectives'):
            info['objectives'] = [key for key in driver.get_objectives()]
        if hasattr(driver, 'eval_responses'):
            info['responses'] = [key for key in driver.get_responses()]
        if hasattr(driver, 'get_eq_constraints'):
            info['eq_constraints'] = [str(prefix_drop) for con in driver.get_eq_constraints().values()]
        if hasattr(driver, 'get_ineq_constraints'):
            info['ineq_constraints'] = [str(con) for con in driver.get_ineq_constraints().values()]
        driver_info.append(info)
    return driver_info

dataset/ETHPy150Open OpenMDAO/OpenMDAO-Framework/openmdao.lib/src/openmdao/lib/casehandlers/hdf5case.py HDF5CaseRecorder.get_driver_info/VarMisuse@235/307 `con`->`prefix_drop`