globus_module.h(3)

NAME
globus_module.h - Reference Counting Module Activation and Deactivation.

SYNOPSIS

#include 'globus_error_generic.h'
#include <stdio.h>

  Data Structures

struct globus_module_descriptor_s
Module Descriptor.

  Typedefs

typedef int(* globus_module_deactivate_proxy_cb_t) (globus_module_descriptor_t *module_descriptor, void *user_arg)

  Functions

int globus_module_activate (globus_module_descriptor_t *module_descriptor)
Activate a module.
int globus_module_activate_array (globus_module_descriptor_t *modules[], globus_module_descriptor_t **failed_module)
Activate a group of modules.
int globus_module_deactivate (globus_module_descriptor_t *module_descriptor)
Deactivate a module.
int globus_module_activate_proxy (globus_module_descriptor_t *module_descriptor, globus_module_deactivate_proxy_cb_t deactivate_cb, void *user_arg)
void globus_module_setenv (const char *name, const char *value)
char * globus_module_getenv (const char *name)
void * globus_module_get_module_pointer (globus_module_descriptor_t *)
int globus_module_get_version (globus_module_descriptor_t *module_descriptor, globus_version_t *version)
void globus_module_print_version (globus_module_descriptor_t *module_descriptor, FILE *stream, globus_bool_t verbose)
void globus_module_print_activated_versions (FILE *stream, globus_bool_t verbose)
void globus_version_print (const char *name, const globus_version_t *version, FILE *stream, globus_bool_t verbose)

Detailed Description

Reference Counting Module Activation and Deactivation.

Typedef Documentation

  typedef int(* globus_module_deactivate_proxy_cb_t) (globus_module_descriptor_t *module_descriptor, void *user_arg)
module must be deactivated in this call with module_descriptor->deactivation_func(); (be sure module_descriptor->deactivation_func is !NULL)

Function Documentation

  int globus_module_activate_proxy (globus_module_descriptor_t * module_descriptor, globus_module_deactivate_proxy_cb_t deactivate_cb, void * user_arg)
this call registers a callback to be called to handle deactivation when globus_module_deactivate() or globus_module_deactivate_all() is called

The callback is only respected for the first call to activate this module. The purpose of these proxy calls is to allow 'private' module descriptors that are activated by some other user function, but may still be affected by deactivate_all().

  void * globus_module_get_module_pointer (globus_module_descriptor_t * structptr)
Get a module pointer

  int globus_module_get_version (globus_module_descriptor_t * module_descriptor, globus_version_t * version)
get version associated with module

This function copies the version structure associated with the module into 'version'.

Parameters
    module_descriptor pointer to a module descriptor (module does NOT need to be activated)
    version pointer to storage for a globus_version_t. The version will be copied into this

Returns

    •   GLOBUS_SUCCESS

    •   GLOBUS_FAILURE if there is no version associated with this module (module->version == null)

  char * globus_module_getenv (const char * name)
Get the value of an environment variable

  void globus_module_print_activated_versions (FILE * stream, globus_bool_t verbose)
print all activated modules' versions

This function prints all activated modules' version info using the standard form provided by globus_version_print

Parameters
    stream stream to print on (stdout, stderr, etc)
    verbose If GLOBUS_TRUE, then all available version info is printed (ex: globus_module: 1.1 (1013708618-5)) else, only the major.minor is printed (ex: globus_module: 1.1)

  void globus_module_print_version (globus_module_descriptor_t * module_descriptor, FILE * stream, globus_bool_t verbose)
print module's version

This function prints a modules version info using the standard form provided by globus_version_print

Parameters
    module_descriptor pointer to a module descriptor (module does NOT need to be activated)
    stream stream to print on (stdout, stderr, etc)
    verbose If GLOBUS_TRUE, then all available version info is printed (ex: globus_module: 1.1 (1013708618-5)) else, only the major.minor is printed (ex: globus_module: 1.1)

  void globus_module_setenv (const char * name, const char * value)
set an environment variable

  void globus_version_print (const char * name, const globus_version_t * version, FILE * stream, globus_bool_t verbose)
print version structure

This function provides a stand way of printing version information The version is printed to stream with the following form: name: major.minor if verbose = false name: major.minor.timestamp-branch_id if verbose = true

In either case, if name is NULL, then only the numerical version will be printed.

Parameters
    name A string to prefix the version. May be NULL
    version The version structure containing the info to print. (May be NULL, although pointless to do so)
    stream stream to print on (stdout, stderr, etc)
    verbose If GLOBUS_TRUE, then all available version info is printed (ex: globus_module: 1.1 (1013708618-5)) else, only the major.minor is printed (ex: globus_module: 1.1)

Author

Generated automatically by Doxygen for globus_common from the source code.