## -*- coding: utf-8 -*- Android Camera HAL3.0 Properties <%! import re # insert word break hints for the browser def wbr(text): new_txt = text # for johnyOrange.appleCider.redGuardian also insert wbr before the caps # => johnyOrange.appleCider.redGuardian for words in text.split(" "): if len(words.split(".")) >= 3: # match only x.y.z addwbr = lambda x: i.isupper() and ("" + i) or i new_word = "".join([addwbr(i) for i in words]) new_txt = new_txt.replace(words, new_word) # e.g. X/Y/Z -> X/Y//Z. also for X.Y.Z, X_Y_Z. replace_chars=['.', '/', '_', ','] for i in replace_chars: new_txt = new_txt.replace(i, i + "") return new_txt # insert line breaks after every two \n\n def br(text): return re.sub(r"(\r?\n)(\r?\n)", r"\1
\2
", text) %>

Android Camera HAL3.0 Properties

\ <%def name="insert_toc_body(node)"> % for nested in node.namespaces: ${ insert_toc_body(nested)} % endfor % for entry in node.merged_entries:
  • ${entry.name}
  • % endfor

    Table of Contents

    Properties

    % for root in metadata.outer_namespaces: % for section in root.sections: % if section.description is not None: % endif % for kind in section.merged_kinds: # dynamic,static,controls <%def name="insert_body(node)"> % for nested in node.namespaces: ${insert_namespace(nested)} % endfor % for entry in node.merged_entries: ${insert_entry(entry)} % endfor <%def name="insert_namespace(namespace)"> ${insert_body(namespace)} <%def name="insert_entry(prop)"> % if False: #prop.is_clone(): % if prop.notes is not None: ${prop.notes | h,wbr} % endif % for tag in prop.tags: % endfor % else: % endif ${insert_body(kind)} % endfor # for each kind % endfor % endfor
    Property Name Type Description Units Range Notes Tags
    ${section.name}
    ${section.description}
    ${kind.name}
    Property Name Type Description Units Range Notes Tags
    ${prop.name | wbr} % if prop.enum: ${prop.type} % else: ${prop.type} % endif % if prop.container is not None: x % endif % if prop.container == 'array': ${" x ".join(prop.container_sizes)} % elif prop.container == 'tuple':
      % for val in prop.tuple_values:
    • ${val}
    • % endfor
    % endif [${prop.applied_visibility}${" as %s" %prop.typedef.name if prop.typedef else ""}] % if prop.type_notes is not None:
    ${prop.type_notes | wbr}
    % endif % if prop.enum:
      % for value in prop.enum.values:
    • ${value.name} % if value.optional: optional % endif: % if value.id is not None: ${value.id} % endif % if value.notes is not None: ${value.notes | wbr} % endif
    • % endfor
    % endif
    % if prop.description is not None: ${prop.description | wbr, br} % endif % if prop.units is not None: ${prop.units | wbr} % endif % if prop.range is not None: ${prop.range | wbr} % endif % if prop.notes is not None: ${prop.notes | wbr, br} % endif

    Tags

    [ top ]