Multi-ApplicationOnlineProfiling  2.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Knowledge system

This is a component specialized in data processing. More...

Data Structures

struct  Knowledge_system
 The Knowledge_system structure. More...
 
struct  Knowledge_system_job
 struct representing a job that does the actual data processing (created by Knowledge_system) More...
 

Functions

void Knowledge_system_init (struct Knowledge_system *ks, uint64_t type, uint64_t *sensivity_keys, uint32_t sensivity_count, void(*process)(struct MALP_blackboard *bb, struct Data_entry **de, uint32_t entry_count, void *arg), void *arg)
 Initializes a Knowledge_system. More...
 
void Knowledge_system_release (struct Knowledge_system *ks)
 Knowledge_system release. More...
 
void Knowledge_system_set_process (struct Knowledge_system *ks, void(*process)(struct MALP_blackboard *bb, struct Data_entry **de, uint32_t entry_count, void *arg), void *arg)
 sets the processing function to a Knowledge_system More...
 
void Knowledge_system_set_serial (struct Knowledge_system *ks, int is_serial)
 sets the parallelism mode for this KS More...
 
int Knowledge_system_has_unsatisfied_sensivities (struct Knowledge_system *ks)
 Knowledge_system_has_unsatisfied_sensivities. More...
 
struct Knowledge_system_job Knowledge_system_job_new (struct Knowledge_system *ks)
 Knowledge_system_job_new. More...
 
void Knowledge_system_job_release (struct Knowledge_system_job *ksj)
 Knowledge_system_job_release. More...
 
struct Knowledge_system_job Knowledge_system_submit_data_entry (struct Knowledge_system *ks, struct Data_entry *de)
 Knowledge_system_submit_data_entry. More...
 

Detailed Description

This is a component specialized in data processing.

Each Knowledge_System creates a set of workers (Pbb workers) in order to process data in parallel.

Function Documentation

int Knowledge_system_has_unsatisfied_sensivities ( struct Knowledge_system ks)

Knowledge_system_has_unsatisfied_sensivities.

Parameters
ks
Returns

Definition at line 132 of file Knowledge_System.c.

Here is the caller graph for this function:

void Knowledge_system_init ( struct Knowledge_system ks,
uint64_t  type,
uint64_t *  sensivity_keys,
uint32_t  sensivity_count,
void(*)(struct MALP_blackboard *bb, struct Data_entry **de, uint32_t entry_count, void *arg)  process,
void *  arg 
)

Initializes a Knowledge_system.

Parameters
ksthe Knowledge_system to initialize
typethe type of the new Knowledge_system (arbitrary integer)
sensivity_keysthe sensivity keys
sensivity_countthe number of data entries (can't be 0)
processthe function to give to the newly created Knowledge_system
argthe fourth argument to give to process

Definition at line 27 of file Knowledge_System.c.

Here is the call graph for this function:

Here is the caller graph for this function:

struct Knowledge_system_job Knowledge_system_job_new ( struct Knowledge_system ks)

Knowledge_system_job_new.

Parameters
ks
Returns

Definition at line 204 of file Knowledge_System.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void Knowledge_system_job_release ( struct Knowledge_system_job ksj)

Knowledge_system_job_release.

Parameters
ksj

Definition at line 251 of file Knowledge_System.c.

Here is the caller graph for this function:

void Knowledge_system_release ( struct Knowledge_system ks)

Knowledge_system release.

Parameters
ks

Definition at line 82 of file Knowledge_System.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void Knowledge_system_set_process ( struct Knowledge_system ks,
void(*)(struct MALP_blackboard *bb, struct Data_entry **de, uint32_t entry_count, void *arg)  process,
void *  arg 
)

sets the processing function to a Knowledge_system

Parameters
ksthe Knowledge_system where to set the function
processthe process to set
argan aditionnal parameter to give to process

Definition at line 108 of file Knowledge_System.c.

Here is the call graph for this function:

void Knowledge_system_set_serial ( struct Knowledge_system ks,
int  is_serial 
)

sets the parallelism mode for this KS

Parameters
ksthe Knowledge_system to targer
is_serialwhether processing is serial or not (boolean) default YES

Definition at line 120 of file Knowledge_System.c.

Here is the call graph for this function:

struct Knowledge_system_job Knowledge_system_submit_data_entry ( struct Knowledge_system ks,
struct Data_entry de 
)

Knowledge_system_submit_data_entry.

Parameters
ks
de
Returns

Definition at line 147 of file Knowledge_System.c.

Here is the call graph for this function:

Here is the caller graph for this function: