|
Motr
M0
|
Detailed Functional Specification. More...
Data Structures | |
| struct | m0_conf_obj |
| struct | m0_conf_obj_type |
| struct | m0_conf_dir |
| struct | m0_conf_root |
| struct | m0_conf_profile |
| struct | m0_conf_pool |
| struct | m0_conf_pver_subtree |
| struct | m0_conf_pver_formulaic |
| struct | m0_conf_pver |
| struct | m0_conf_objv |
| struct | m0_conf_node |
| struct | m0_conf_process |
| struct | m0_conf_service |
| struct | m0_conf_sdev |
| struct | m0_conf_site |
| struct | m0_conf_rack |
| struct | m0_conf_enclosure |
| struct | m0_conf_controller |
| struct | m0_conf_drive |
| struct | m0_conf_fdmi_flt_grp |
| struct | m0_conf_fdmi_filter |
Macros | |
| #define | M0_CONF_CAST(ptr, type) bob_of(ptr, struct type, type ## _cast_field, &type ## _bob) |
| #define | m0_conf_dir_cast_field cd_obj |
| #define | m0_conf_root_cast_field rt_obj |
| #define | m0_conf_profile_cast_field cp_obj |
| #define | m0_conf_pool_cast_field pl_obj |
| #define | m0_conf_pver_cast_field pv_obj |
| #define | m0_conf_objv_cast_field cv_obj |
| #define | m0_conf_node_cast_field cn_obj |
| #define | m0_conf_process_cast_field pc_obj |
| #define | m0_conf_service_cast_field cs_obj |
| #define | m0_conf_sdev_cast_field sd_obj |
| #define | m0_conf_site_cast_field ct_obj |
| #define | m0_conf_rack_cast_field cr_obj |
| #define | m0_conf_enclosure_cast_field ce_obj |
| #define | m0_conf_controller_cast_field cc_obj |
| #define | m0_conf_drive_cast_field ck_obj |
| #define | m0_conf_fdmi_filter_cast_field ff_obj |
| #define | m0_conf_fdmi_flt_grp_cast_field ffg_obj |
| #define | M0_CONF_OBJ_TYPES |
| #define | X_CONF(name, NAME, _) |
| #define | X_CONF(name, _) extern const struct m0_fid M0_CONF_ ## name ## _FID; |
| #define | M0_CONF_REL_FIDS |
Enumerations | |
| enum | m0_conf_status { M0_CS_MISSING, M0_CS_LOADING, M0_CS_READY } |
| enum | { M0_CONF_OBJ_TYPE_MAX = 256 } |
| enum | { M0_CONF_PVER_LVL_SITES = 0, M0_CONF_PVER_LVL_RACKS, M0_CONF_PVER_LVL_ENCLS, M0_CONF_PVER_LVL_CTRLS, M0_CONF_PVER_LVL_DRIVES, M0_CONF_PVER_HEIGHT } |
| enum | m0_conf_pver_kind { M0_CONF_PVER_ACTUAL, M0_CONF_PVER_FORMULAIC, M0_CONF_PVER_VIRTUAL } |
Functions | |
| void | m0_conf_obj_type_register (const struct m0_conf_obj_type *otype) |
| void | m0_conf_obj_type_unregister (const struct m0_conf_obj_type *otype) |
| const struct m0_conf_obj_type * | m0_conf_obj_type (const struct m0_conf_obj *obj) |
| const struct m0_conf_obj_type * | m0_conf_fid_type (const struct m0_fid *id) |
| const struct m0_fid * | m0_conf_objx_fid (const struct m0_confx_obj *obj) |
| const struct m0_conf_obj_type * | m0_conf_objx_type (const struct m0_confx_obj *obj) |
| bool | m0_conf_fid_is_valid (const struct m0_fid *fid) |
| M0_INTERNAL bool | m0_conf_obj_is_stub (const struct m0_conf_obj *obj) |
| struct m0_conf_obj * | m0_conf_obj_grandparent (const struct m0_conf_obj *obj) |
| M0_INTERNAL const struct m0_conf_obj_type * | m0_conf_obj_type_next (const struct m0_conf_obj_type *otype) |
| M0_INTERNAL int | m0_conf_obj_init (void) |
| M0_INTERNAL void | m0_conf_obj_fini (void) |
| M0_INTERNAL void | m0_conf_child_adopt (struct m0_conf_obj *parent, struct m0_conf_obj *child) |
Variables | |
| enum m0_conf_status | M0_XCA_DOMAIN |
| M0_CONF_REL_FIDS const struct m0_fid_type | M0_CONF_RELFID_TYPE |
| const struct m0_fid | M0_CONF_ROOT_FID |
Detailed Functional Specification.
Casts m0_conf_obj to the ambient concrete configuration object.
| ptr | Pointer to m0_conf_obj member. |
| type | Type of concrete configuration object (without ‘struct’). |
Example:
| #define M0_CONF_OBJ_TYPES |
| #define M0_CONF_REL_FIDS |
| anonymous enum |
Levels of a m0_conf_pver_subtree.
Currently 5 levels are supported: [0] = sites, [1] = racks, [2] = enclosures, [3] = controllers, [4] = drives.
| Enumerator | |
|---|---|
| M0_CONF_PVER_LVL_SITES | |
| M0_CONF_PVER_LVL_RACKS | |
| M0_CONF_PVER_LVL_ENCLS | |
| M0_CONF_PVER_LVL_CTRLS | |
| M0_CONF_PVER_LVL_DRIVES | |
| M0_CONF_PVER_HEIGHT | |
| enum m0_conf_pver_kind |
| enum m0_conf_status |
Status of configuration object. Configuration object is a stub unless its status is M0_CS_READY.
| Enumerator | |
|---|---|
| M0_CS_MISSING | Configuration is absent; no retrieval in progress. |
| M0_CS_LOADING | Retrieval of configuration is in progress. |
| M0_CS_READY | Configuration is available. |
| M0_INTERNAL void m0_conf_child_adopt | ( | struct m0_conf_obj * | parent, |
| struct m0_conf_obj * | child | ||
| ) |
| bool m0_conf_fid_is_valid | ( | const struct m0_fid * | fid | ) |
| const struct m0_conf_obj_type* m0_conf_fid_type | ( | const struct m0_fid * | id | ) |
| M0_INTERNAL void m0_conf_obj_fini | ( | void | ) |
| struct m0_conf_obj* m0_conf_obj_grandparent | ( | const struct m0_conf_obj * | obj | ) |
| M0_INTERNAL int m0_conf_obj_init | ( | void | ) |
| M0_INTERNAL bool m0_conf_obj_is_stub | ( | const struct m0_conf_obj * | obj | ) |
| const struct m0_conf_obj_type* m0_conf_obj_type | ( | const struct m0_conf_obj * | obj | ) |
| M0_INTERNAL const struct m0_conf_obj_type* m0_conf_obj_type_next | ( | const struct m0_conf_obj_type * | otype | ) |
| void m0_conf_obj_type_register | ( | const struct m0_conf_obj_type * | otype | ) |
| void m0_conf_obj_type_unregister | ( | const struct m0_conf_obj_type * | otype | ) |
| const struct m0_fid* m0_conf_objx_fid | ( | const struct m0_confx_obj * | obj | ) |
| const struct m0_conf_obj_type* m0_conf_objx_type | ( | const struct m0_confx_obj * | obj | ) |
| M0_CONF_REL_FIDS const struct m0_fid_type M0_CONF_RELFID_TYPE |
| const struct m0_fid M0_CONF_ROOT_FID |
| enum m0_conf_status M0_XCA_DOMAIN |