1 /*
2  * Copyright (C) 2021 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 /**
17  * @file avrcp_ct_gap.h
18  *
19  * @brief Declares the class of the Generic Access Profile, including attributes and methods.
20  */
21 
22 #ifndef AVRCP_CT_GAP_H
23 #define AVRCP_CT_GAP_H
24 
25 namespace OHOS {
26 namespace bluetooth {
27 /**
28  * @brief This class provides a set of methods for registering/unregistering the security requirements into the GAP.
29  * @see Audio/Video Remote Control 1.6.2 Section 12 -> 12.2 Security aspects.
30  */
31 
32 class AvrcCtGapManager {
33 public:
34     /**
35      * @brief A constructor used to create an <b>AvrcCtGapManager</b> instance.
36      */
37     AvrcCtGapManager();
38 
39     /**
40      * @brief A destructor used to delete the <b>AvrcCtGapManager</b> instance.
41      */
42     ~AvrcCtGapManager();
43 
44     /**
45      * @brief Registers security requirements into the GAP.
46      *
47      * @return The result of the method execution.
48      * @retval BT_SUCCESS   Execute success.
49      * @retval RET_BAD_STATUS Execute failure.
50      */
51     static int RegisterSecurity(void);
52 
53     /**
54      * @brief Unregisters security requirements from the GAP.
55      *
56      * @return The result of the method execution.
57      * @retval BT_SUCCESS   Execute success.
58      * @retval RET_BAD_STATUS Execute failure.
59      */
60     static int UnregisterSecurity(void);
61 };
62 }  // namespace bluetooth
63 }  // namespace OHOS
64 
65 #endif  // !AVRCP_CT_GAP_H
66