Imported Upstream version 1.0.0
[platform/upstream/iotivity.git] / plugins / include / internal / pluginlist.h
1 //******************************************************************
2 //
3 // Copyright 2015 Intel Mobile Communications GmbH All Rights Reserved.
4 //
5 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
6 //
7 // Licensed under the Apache License, Version 2.0 (the "License");
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
10 //
11 //      http://www.apache.org/licenses/LICENSE-2.0
12 //
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an "AS IS" BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
18 //
19 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
20
21 /**
22  * @file
23  *
24  * This file contains the accessors and setters for the PluginList
25  */
26
27 #ifndef PLUGINLIST_H_
28 #define PLUGINLIST_H_
29
30 #include "plugintranslatortypes.h"
31
32 #ifdef __cplusplus
33 extern "C" {
34 #endif // __cplusplus
35
36 OCStackResult AddPlugin(PIPluginBase * plugin);
37
38 OCStackResult DeletePlugin(PIPluginBase * plugin);
39
40 OCStackResult DeletePluginList();
41
42 OCStackResult GetResourceFromHandle(PIPluginBase * plugin, PIResource ** piResource,
43                                     OCResourceHandle * resourceHandle);
44
45 OCStackResult GetResourceFromURI(PIPluginBase * plugin, PIResource ** piResource,
46                                     const char * uri);
47
48 OCStackResult AddResourceToPlugin(PIPluginBase * plugin, PIResourceBase * resource);
49
50 OCStackResult DeleteResource(PIPluginBase * plugin, PIResourceBase * resource);
51
52 OCStackResult DeleteResourceList(PIPluginBase * plugin);
53
54 #ifdef __cplusplus
55 }
56 #endif // __cplusplus
57
58 #endif /* PLUGINLIST_H_ */