1component_class: HAL_CONVENTIONAL_SUBMODULE 2component_type: CAMERA 3component_type_version: 3.4 4 5original_data_structure_name: "camera3_device_ops_t" 6 7header: "<hardware/hardware.h>" 8header: "<hardware/camera_common.h>" 9header: "<hardware/camera3.h>" 10 11interface: { 12 api: { 13 name: "initialize" 14 return_type: { 15 type: TYPE_SCALAR 16 scalar_type: "int32_t" 17 } 18 arg: { 19 type: TYPE_PREDEFINED 20 predefined_type: "struct camera3_device*" 21 is_const: true 22 } 23 arg: { 24 type: TYPE_PREDEFINED 25 predefined_type: "camera3_callback_ops_t*" 26 is_const: true 27 is_callback: true 28 } 29 } 30 31 api: { 32 name: "configure_streams" 33 return_type: { 34 type: TYPE_SCALAR 35 scalar_type: "int32_t" 36 } 37 arg: { 38 type: TYPE_PREDEFINED 39 predefined_type: "struct camera3_device*" 40 is_const: true 41 } 42 arg: { 43 type: TYPE_PREDEFINED 44 predefined_type: "camera3_stream_configuration_t*" 45 } 46 } 47 48 api: { 49 name: "register_stream_buffers" 50 return_type: { 51 type: TYPE_SCALAR 52 scalar_type: "int32_t" 53 } 54 arg: { 55 type: TYPE_PREDEFINED 56 predefined_type: "struct camera3_device*" 57 is_const: true 58 } 59 arg: { 60 type: TYPE_PREDEFINED 61 predefined_type: "camera3_stream_buffer_set_t*" 62 is_const: true 63 } 64 } 65 66 api: { 67 name: "construct_default_request_settings" 68 return_type: { 69 type: TYPE_PREDEFINED 70 predefined_type: "camera_metadata_t*" 71 is_const: true 72 } 73 arg: { 74 type: TYPE_PREDEFINED 75 predefined_type: "struct camera3_device*" 76 is_const: true 77 } 78 arg: { 79 type: TYPE_SCALAR 80 scalar_type: "int32_t" 81 } 82 } 83 84 api: { 85 name: "process_capture_request" 86 return_type: { 87 type: TYPE_SCALAR 88 scalar_type: "int32_t" 89 } 90 arg: { 91 type: TYPE_PREDEFINED 92 predefined_type: "struct camera3_device*" 93 is_const: true 94 } 95 arg: { 96 type: TYPE_PREDEFINED 97 predefined_type: "camera3_capture_request_t*" 98 is_const: true 99 } 100 } 101 102 api: { 103 name: "get_metadata_vendor_tag_ops" 104 return_type: { 105 type: TYPE_VOID 106 } 107 arg: { 108 type: TYPE_PREDEFINED 109 predefined_type: "struct camera3_device*" 110 is_const: true 111 } 112 arg: { 113 type: TYPE_PREDEFINED 114 predefined_type: "vendor_tag_query_ops_t*" 115 } 116 } 117 118 api: { 119 name: "dump" 120 return_type: { 121 type: TYPE_VOID 122 } 123 arg: { 124 type: TYPE_PREDEFINED 125 predefined_type: "struct camera3_device*" 126 is_const: true 127 } 128 arg: { 129 type: TYPE_SCALAR 130 scalar_type: "int32_t" 131 } 132 } 133 134 api: { 135 name: "flush" 136 return_type: { 137 type: TYPE_SCALAR 138 scalar_type: "int32_t" 139 } 140 arg: { 141 type: TYPE_PREDEFINED 142 predefined_type: "struct camera3_device*" 143 is_const: true 144 } 145 } 146 147 attribute: { 148 name: "camera3_callback_ops_t" 149 150 type: TYPE_FUNCTION_POINTER 151 152 function_pointer: { 153 function_name: "process_capture_result" 154 arg: { 155 type: TYPE_PREDEFINED 156 predefined_type: "struct camera3_callback_ops*" 157 is_const: true 158 is_callback: true 159 } 160 arg: { 161 type: TYPE_PREDEFINED 162 predefined_type: "camera3_capture_result_t*" 163 is_const: true 164 } 165 } 166 167 function_pointer: { 168 function_name: "notify" 169 arg: { 170 type: TYPE_PREDEFINED 171 predefined_type: "struct camera3_callback_ops*" 172 is_const: true 173 is_callback: true 174 } 175 arg: { 176 type: TYPE_PREDEFINED 177 predefined_type: "camera3_notify_msg_t*" 178 is_const: true 179 } 180 } 181 182 is_callback: true 183 } 184} 185