2 * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 #ifndef __MTP_RESPONDER_H__
17 #define __MTP_RESPONDER_H__
25 #include "mtp_util_thread.h"
26 #include "mtp_util_support.h"
27 #include "mtp_entity_device.h"
28 #include "mtp_event_handler.h"
29 #include "mtp_cmd_handler.h"
30 #include "mtp_cmd_handler_util.h"
31 #include "mtp_inoti_handler.h"
32 #include "mtp_transport.h"
34 #include "mtp_util_media_info.h"
35 #include "mtp_usb_driver.h"
36 #include "mtp_descs_strings.h"
44 int mtp_init(add_rem_store_t sel);
46 int hutil_get_storage_entry(void);
47 int hutil_get_storage_ids(void);
48 int hutil_get_device_property(void);
49 int hutil_set_device_property(void);
50 int hutil_reset_device_entry(void);
51 int hutil_add_object_entry(void);
52 int hutil_remove_object_entry(void);
53 int hutil_get_object_entry(void);
54 int hutil_copy_object_entries(void);
55 int hutil_move_object_entry(void);
56 int hutil_duplicate_object_entry(void);
57 int hutil_read_file_data_from_offset(void);
58 int hutil_write_file_data(void);
59 int hutil_get_object_entry_size(void);
60 int hutil_set_protection(void);
61 int hutil_get_num_objects(void);
62 int hutil_get_object_handles(void);
63 int hutil_construct_object_entry(void);
65 //========================================
67 int hutil_construct_object_entry_prop_list(void);
68 int hutil_get_object_prop_value(void);
69 int hutil_update_object_property(void);
70 int hutil_get_prop_desc(void);
71 int hutil_get_object_prop_supported(void);
72 int hutil_get_object_prop_list(void);
73 int hutil_add_object_references_enhanced(void);
74 int hutil_remove_object_reference(void);
75 int hutil_get_object_references(void);
76 int hutil_get_number_of_objects(void);
77 int hutil_get_interdep_prop_config_list_size(void);
78 int hutil_get_interdep_prop_config_list_data(void);
79 int hutil_get_playback_skip(void);
80 int hutil_format_storage(void);
81 int hutil_get_storage_info_size(void);
83 //================== _MTP_CMD_HANDLER_H_ ======================
85 int cmd_hdlr_send_response(void);
86 int cmd_hdlr_send_response_code(void);
88 //================== _MTP_EVENT_HANDLER_H_ ======================
90 int hdlr_get_param_cmd_container(void);
91 int hdlr_add_param_resp_container(void);
92 int hdlr_validate_cmd_container(void);
93 int hdlr_alloc_buf_data_container(void);
94 int hdlr_send_data_container(void);
95 int hdlr_send_bulk_data(void);
96 int hdlr_rcv_data_container(void);
97 int hdlr_get_payload_size(void);
98 int hdlr_get_payload_data(void);
99 int hdlr_resp_container_init(void);
100 int hdlr_init_event_container(void);
101 int hdlr_init_event_container_with_param(void);
102 int hdlr_conv_cmd_container_byte_order(void);
103 int hdlr_conv_data_container_byte_order(void);
110 #endif /* __MTP_RESPONDER_H__ */