ONLP
Open Network Linux Platform APIs
module.h
Go to the documentation of this file.
1 /************************************************************
2  * <bsn.cl fy=2014 v=onl>
3  *
4  * Copyright 2014, 2015 Big Switch Networks, Inc.
5  *
6  * Licensed under the Eclipse Public License, Version 1.0 (the
7  * "License"); you may not use this file except in compliance
8  * with the License. You may obtain a copy of the License at
9  *
10  * http://www.eclipse.org/legal/epl-v10.html
11  *
12  * Unless required by applicable law or agreed to in writing,
13  * software distributed under the License is distributed on an
14  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
15  * either express or implied. See the License for the specific
16  * language governing permissions and limitations under the
17  * License.
18  *
19  * </bsn.cl>
20  ********************************************************/
29 #ifndef __ONLP_MODULE_H__
30 #define __ONLP_MODULE_H__
31 
32 #include <onlp/onlp_config.h>
33 #include <onlp/onlp.h>
34 #include <onlplib/onie.h>
35 #include <onlplib/pi.h>
36 #include <onlp/oids.h>
37 
41 typedef struct onlp_module_info_s {
44 
45  /* Module objects have no dedicated fields. */
46 
48 
54 int onlp_module_sw_init(void);
55 
60 int onlp_module_hw_init(uint32_t flags);
61 
68 int onlp_module_sw_denit(void);
69 
76 
83 
90 int onlp_module_info_to_user_json(onlp_module_info_t* info, cJSON** rv, uint32_t flags);
91 
98 int onlp_module_info_to_json(onlp_module_info_t* info, cJSON** rv, uint32_t flags);
99 
105 int onlp_module_info_from_json(cJSON* cj, onlp_module_info_t* info);
106 
107 #endif /* __ONLP_MODULE_H_ */
108 /* @} */
onlp Configuration Header
int onlp_module_info_from_json(cJSON *cj, onlp_module_info_t *info)
Convert a JSON object to a module info structure.
int onlp_module_info_to_json(onlp_module_info_t *info, cJSON **rv, uint32_t flags)
Convert a module info structure to JSON.
int onlp_module_sw_init(void)
Initialize the module software module.
Object Identifiers.
uint32_t onlp_oid_t
Definition: oids.h:52
int onlp_module_info_to_user_json(onlp_module_info_t *info, cJSON **rv, uint32_t flags)
Convert a module info structure to user JSON.
int onlp_module_hw_init(uint32_t flags)
Initialize the module.
onlp_oid_hdr_t hdr
Definition: module.h:43
int onlp_module_hdr_get(onlp_oid_t oid, onlp_oid_hdr_t *hdr)
Get the module header structure.
Module OID Information Structure.
Definition: module.h:41
Definition: oids.h:296
struct onlp_module_info_s onlp_module_info_t
Module OID Information Structure.
int onlp_module_sw_denit(void)
Deinitialize the module software module.
int onlp_module_info_get(onlp_oid_t oid, onlp_module_info_t *info)
Get the module info structure.