Main Page | Modules | Data Structures | File List | Data Fields | Globals | Related Pages

evaluationmanager.c File Reference

Implementation of the evaluation manager interface. More...

#include <stdlib.h>
#include <string.h>
#include "_lcmaps_pluginmanager.h"
#include "lcmaps_log.h"
#include "evaluationmanager.h"

Go to the source code of this file.

Functions

int free_lcmaps_db_entry ()
int startEvaluationManager (const char *name, int argc, char *argv[])
int getPluginNameAndArgs (lcmaps_db_entry_t **plugins)
int runEvaluationManager (int argc, char *argv[])
int stopEvaluationManager (void)

Variables

lcmaps_db_entry_tglobal_plugin_list = NULL


Detailed Description

Implementation of the evaluation manager interface.

Besides the implementation of the interface of the evaluation manager some additional functions are implemented here. Please note that these are not part of the interface and hence should not be used. Look in evaluationmanager.h for the functions that can be called by external sources.

Author:
G.M. Venekamp (venekamp@nikhef.nl)
Version:
Revision
1.31
Date:
Date
2005/03/01 17:05:10

Definition in file evaluationmanager.c.


Function Documentation

int free_lcmaps_db_entry  ) 
 

During the getPluginsAndArgs() call, a list structure is created. This structure is never cleaned automatically, nor can it be. When it is necessay and safe to free the resources, call this function

Return values:
0 when the call is successful,
1 otherwise.

Definition at line 336 of file evaluationmanager.c.

References global_plugin_list, lcmaps_db_entry_t, and lcmaps_db_entry_s::next.

Referenced by stopEvaluationManager().

int getPluginNameAndArgs lcmaps_db_entry_t **  plugins  ) 
 

Get a list of plugins and their arguments based on the configuration file. The memory that is allocted is freed during the stopEvaluationManager() call.

Parameters:
plugins Pointer to be intialized with the first entry of the plugin list.
Return values:
0 when the call is successful,
1 otherwise.

Definition at line 129 of file evaluationmanager.c.

References plugin_s::args, get_plugins(), global_plugin_list, lcmaps_db_entry_t, lcmaps_log(), lcmaps_log_debug(), LCMAPS_MAXARGSTRING, LCMAPS_MAXPATHLEN, plugin_s::name, lcmaps_db_entry_s::next, plugin_s::next, pdl_path(), plugin_t, lcmaps_db_entry_s::pluginargs, lcmaps_db_entry_s::pluginname, and TRUE.

Referenced by startPluginManager().

int runEvaluationManager int  argc,
char *  argv[]
 

Run the evaluation manager. The evaluation manager has to be initialized by calling statrEvaluation Manager first.

Return values:
0 when the call is successful,
1 otherwise.

Definition at line 224 of file evaluationmanager.c.

References EVALUATION_FAILURE, EVALUATION_START, EVALUATION_SUCCESS, get_current_policy(), lcmaps_log(), lcmaps_log_debug(), policy_s::name, pdl_next_plugin(), plugin_status_t, policy_t, and runPlugin().

Referenced by runPluginManager().

int startEvaluationManager const char *  name,
int  argc,
char *  argv[]
 

Start the evaluation manager.

Parameters:
name Name of the configure script.
argc number of policies
argv list of policies
Return values:
0 when the call is successful,
1 otherwise.

Definition at line 72 of file evaluationmanager.c.

References check_policies_for_recursion(), cleanup_policies(), pdl_init(), reduce_policies(), stopEvaluationManager(), and yyparse_errors().

Referenced by startPluginManager().

int stopEvaluationManager void   ) 
 

Stop the evaluation manager after is has run successfully. Strictly speaking, the evalauation manager needs no stopping. This call is a good point to clean up the resources used by the evaluation manager.

Return values:
0 when the call is successful,
1 otherwise.

Definition at line 315 of file evaluationmanager.c.

References free_lcmaps_db_entry(), free_resources(), and lcmaps_log_debug().

Referenced by startEvaluationManager(), and stopPluginManager().


Variable Documentation

lcmaps_db_entry_t* global_plugin_list = NULL [static]
 

When the getPluginNameAndArgs() function has been called, the global_plugin_list variable get initialized with the first element of the list. This variable is later used to free the resources held by the list. In addition, multiple calls to getPluginNameAndArgs() result in returning the value of this pointer.

Definition at line 57 of file evaluationmanager.c.

Referenced by free_lcmaps_db_entry(), and getPluginNameAndArgs().


Generated on Sun May 29 21:22:12 2005 for lcmaps by doxygen 1.3.5