Motr  M0
m0_module Struct Reference

#include <module.h>

Collaboration diagram for m0_module:
Collaboration graph

Data Fields

const char * m_name
 
struct m0m_m0
 
int m_cur
 
const struct m0_modlevm_level
 
int m_level_nr
 
unsigned m_level_nrefs [M0_MODLEV_MAX]
 
struct m0_moddep m_dep [M0_MODDEP_MAX]
 
unsigned m_dep_nr
 
struct m0_moddep m_inv [M0_MODDEP_MAX]
 
unsigned m_inv_nr
 

Detailed Description

Module.

A module has an array of levels (m0_module::m_level, with entry and exit functions), an array of dependencies (m0_module::m_dep) and an array of inverse dependencies (m0_module::m_inv).

If there is a (m0, l0) -> (m1, l1) dependency, then there is an { .md_other = m1, md_src = l0, md_dst = l1 } element in m0.m_dep[] and an { .md_other = m0, md_src = l0, md_dst = l1 } element in m1.m_inv[].

Definition at line 151 of file module.h.

Field Documentation

◆ m_cur

int m_cur

Current level.

This value is equal to M0_MODLEV_NONE iff the module is not initialised.

Definition at line 160 of file module.h.

◆ m_dep

struct m0_moddep m_dep[M0_MODDEP_MAX]

Array of dependencies.

Definition at line 176 of file module.h.

◆ m_dep_nr

unsigned m_dep_nr

Definition at line 177 of file module.h.

◆ m_inv

struct m0_moddep m_inv[M0_MODDEP_MAX]

Array of inverse dependencies.

Definition at line 179 of file module.h.

◆ m_inv_nr

unsigned m_inv_nr

Definition at line 180 of file module.h.

◆ m_level

const struct m0_modlev* m_level

Array of levels.

Note
The first entry of this list is never used, because level 0 can be neither entered, nor left.

Definition at line 167 of file module.h.

◆ m_level_nr

int m_level_nr

Definition at line 168 of file module.h.

◆ m_level_nrefs

unsigned m_level_nrefs[M0_MODLEV_MAX]

->m_level_nrefs[i] is equal to the number of dependencies that are currently relying on level i to be reached. The level may not downgrade if this number is nonzero.

Definition at line 174 of file module.h.

◆ m_m0

struct m0* m_m0

Definition at line 153 of file module.h.

◆ m_name

const char* m_name

Definition at line 152 of file module.h.


The documentation for this struct was generated from the following file: