1 ## This file is a template. The comment below is emitted 2 ## into the rendered file; feel free to edit this file. 3 // This file was auto generated. Do not edit. 4 <% 5 def interface_type(interface): 6 lst = interface.split('.') 7 lst.insert(-1, 'server') 8 return '::'.join(lst) 9 %> 10 #include "manager.hpp" 11 #include "utils.hpp" 12 % for i in interfaces: 13 #include <${'/'.join(i.split('.') + ['server.hpp'])}> 14 % endfor 15 16 namespace phosphor 17 { 18 namespace inventory 19 { 20 namespace manager 21 { 22 23 const Manager::Makers Manager::_makers{ 24 % for i in interfaces: 25 { 26 "${i}", 27 details::MakeInterface< 28 details::ServerObject< 29 sdbusplus::${interface_type(i)}>>::make, 30 }, 31 % endfor 32 }; 33 34 const Manager::Events Manager::_events{ 35 % for e in events: 36 { 37 % if e.get('description'): 38 // ${e['description']} 39 % endif 40 "${e['name']}", 41 std::make_tuple( 42 % for i, s in enumerate(e['signature'].items()): 43 % if i + 1 == len(e['signature']): 44 ${'"{0}=\'{1}\'"'.format(*s)}, 45 % else: 46 ${'"{0}=\'{1}\',"'.format(*s)} 47 % endif 48 % endfor 49 % if e['filter'].get('args'): 50 details::make_filter(filters::${e['filter']['type']}( 51 % for i, a in enumerate(e['filter']['args']): 52 % if i + 1 == len(e['filter']['args']): 53 "${a['value']}")), 54 % else: 55 "${a['value']}", 56 % endif 57 % endfor 58 % else: 59 details::make_filter(filters::${e['filter']['type']}), 60 % endif 61 % if e['action'].get('args'): 62 details::make_action(actions::${e['action']['type']}( 63 % for i, a in enumerate(e['action']['args']): 64 % if i + 1 == len(e['action']['args']): 65 "${a['value']}")) 66 % else: 67 "${a['value']}", 68 % endif 69 % endfor 70 % else: 71 details::make_action(actions::${e['action']['type']}) 72 % endif 73 ), 74 }, 75 % endfor 76 }; 77 78 } // namespace manager 79 } // namespace inventory 80 } // namespace phosphor 81