/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/sed/sed_process.c File Reference

#include "sed_process.h"
#include "sed_signal.h"

Go to the source code of this file.

Classes

struct  Sed_real_process_info
struct  __Sed_process_link

Defines

#define SED_PROCESS(ptr)   ( (Sed_process)(ptr) )
#define SED_PROCESS_LINK(ptr)   ( (__Sed_process_link*)(ptr) )
#define TRACK_MASS_BALANCE   TRUE
#define SED_KEY_TAG   "process tag"
#define SED_KEY_ACTIVE   "active"
#define SED_KEY_LOGGING   "logging"
#define SED_KEY_INTERVAL   "repeat interval"

Functions

 CLASS (Sed_process_queue)
__Sed_process_linksed_process_link_new (gchar *name, init_func f_init, run_func f_run, destroy_func f_destroy, Eh_key_file file, GError **error)
__Sed_process_linksed_process_link_destroy (__Sed_process_link *link)
Sed_process_queue sed_process_queue_append (Sed_process_queue q, __Sed_process_link *p)
Sed_process_queue sed_process_queue_prepend (Sed_process_queue q, __Sed_process_link *p)
Sed_process_queue sed_process_queue_insert (Sed_process_queue q, __Sed_process_link *link, gint position)
gint sed_process_queue_find_position (Sed_process_queue q, const gchar *name)
GList * sed_process_queue_find (Sed_process_queue q, const gchar *name)
GQuark sed_process_error_quark (void)
Sed_process_queue sed_process_queue_new (void)
Sed_process_queue sed_process_queue_dup (Sed_process_queue s)
Sed_process_queue sed_process_queue_copy (Sed_process_queue d, Sed_process_queue s)
Sed_process_queue sed_process_queue_destroy (Sed_process_queue q)
Sed_process_queue sed_process_queue_init (const gchar *file, Sed_process_init_t p_list[], Sed_process_family p_family[], Sed_process_check p_check[], GError **error)
Sed_process_queue sed_process_queue_set_families (Sed_process_queue q, Sed_process_family f[], GError **error)
Sed_process sed_process_child (Sed_process p, const gchar *child_s)
Sed_process sed_process_append_child (Sed_process p, Sed_process c)
gboolean sed_process_is_parent (Sed_process p)
Sed_process_queue sed_process_queue_scan (Sed_process_queue q, Eh_key_file file, GError **error)
gint __sed_process_compare_name (const __Sed_process_link *link, const gchar *name)
Sed_process_queue sed_process_queue_push (Sed_process_queue q, Sed_process_init_t init)
Sed_process sed_process_queue_find_nth_obj (Sed_process_queue q, const gchar *name, gssize n)
gpointer * sed_process_queue_obj_data (Sed_process_queue q, const char *name)
Sed_process_queue sed_process_queue_delete (Sed_process_queue q, const gchar *name)
Sed_process_queue sed_process_queue_run (Sed_process_queue q, Sed_cube p)
Sed_process_queue sed_process_queue_run_until (Sed_process_queue q, Sed_cube p, double t_total)
Sed_process_queue sed_process_queue_run_at_end (Sed_process_queue q, Sed_cube p)
Sed_process_queue sed_process_queue_run_process_now (Sed_process_queue q, const gchar *name, Sed_cube cube)
Sed_process sed_process_create (const char *name, init_func f_init, run_func f_run, destroy_func f_destroy)
Sed_process sed_process_copy (Sed_process d, Sed_process s)
Sed_process sed_process_dup (Sed_process s)
Sed_process sed_process_destroy (Sed_process p)
void sed_process_clean (Sed_process p)
double sed_process_next_event (Sed_process p)
Sed_process sed_process_set_next_event (Sed_process p, double new_next_event)
gboolean sed_process_is_on (Sed_process p, double time)
gboolean sed_process_array_run (GPtrArray *a, Sed_cube p)
gboolean sed_process_run (Sed_process a, Sed_cube p)
gboolean sed_process_run_at_end (Sed_process a, Sed_cube p)
gboolean sed_process_run_now (Sed_process a, Sed_cube p)
void sed_process_init (Sed_process p, Eh_symbol_table t, GError **error)
GList * sed_process_scan (Eh_key_file k, Sed_process p, GError **error)
gssize sed_process_fprint (FILE *fp, Sed_process p)
gssize sed_process_queue_summary (FILE *fp, Sed_process_queue q)
gssize sed_process_queue_fprint (FILE *fp, Sed_process_queue q)
gssize sed_process_queue_size (Sed_process_queue q)
gssize sed_process_queue_n_active (Sed_process_queue q)
gssize sed_process_queue_n_absent (Sed_process_queue q)
gssize sed_process_queue_n_inactive (Sed_process_queue q)
gpointer sed_process_data (Sed_process p)
void sed_process_provide (Sed_process p, GQuark key, gpointer data)
void sed_process_withhold (Sed_process p, GQuark key)
gpointer sed_process_use (Sed_process p, GQuark key)
gchar * sed_process_name (Sed_process p)
gint sed_process_run_count (Sed_process p)
gboolean sed_process_is_set (Sed_process p)
gpointer sed_process_user_data (Sed_process p)
gpointer sed_process_malloc_user_data (Sed_process p, gssize n_bytes)
gboolean sed_process_name_is_same (Sed_process a, Sed_process b)
double sed_process_interval (Sed_process p)
gboolean sed_process_interval_is_always (Sed_process p)
gboolean sed_process_interval_is_at_end (Sed_process p)
gboolean sed_process_is_active (Sed_process p)
gssize sed_process_summary (FILE *fp, Sed_process p)
gssize sed_process_fprint_info (FILE *fp, Sed_process p)
gboolean sed_process_error (Sed_process p)
int sed_process_queue_check_item (Sed_process_queue q, const gchar *p_name)
gint sed_process_queue_check_family (Sed_process_queue q, const gchar *parent_name, const gchar *child_name)
double sed_process_queue_item_interval (Sed_process_queue q, const gchar *name)
Sed_process sed_process_set_active (Sed_process p, gboolean val)
Sed_process sed_process_activate (Sed_process p)
Sed_process sed_process_deactivate (Sed_process p)
Sed_process_queue sed_process_queue_activate (Sed_process_queue q, const gchar *name)
Sed_process_queue sed_process_queue_deactivate (Sed_process_queue q, const gchar *name)
Sed_process_queue sed_process_queue_set_active (Sed_process_queue q, const gchar *name, gboolean val)
gchar * sed_process_flag_str (gint flag)
gchar * sed_process_render_flag_str (gint flag, const gchar *pre_s, const gchar *name)
gboolean sed_process_queue_validate (Sed_process_queue q, Sed_process_check check[], GError **error)


Define Documentation

#define SED_KEY_ACTIVE   "active"

Definition at line 930 of file sed_process.c.

Referenced by sed_process_scan().

#define SED_KEY_INTERVAL   "repeat interval"

Definition at line 932 of file sed_process.c.

Referenced by sed_process_scan().

#define SED_KEY_LOGGING   "logging"

Definition at line 931 of file sed_process.c.

Referenced by sed_process_scan().

#define SED_KEY_TAG   "process tag"

Definition at line 929 of file sed_process.c.

Referenced by sed_process_scan().

#define SED_PROCESS ( ptr   )     ( (Sed_process)(ptr) )

Definition at line 83 of file sed_process.c.

Referenced by sed_process_queue_obj_data().

#define SED_PROCESS_LINK ( ptr   )     ( (__Sed_process_link*)(ptr) )

Definition at line 84 of file sed_process.c.

Referenced by sed_process_queue_check_item(), sed_process_queue_find_nth_obj(), sed_process_queue_item_interval(), sed_process_queue_n_absent(), sed_process_queue_n_active(), sed_process_queue_obj_data(), sed_process_queue_run(), sed_process_queue_run_at_end(), sed_process_queue_run_process_now(), and sed_process_queue_set_active().

#define TRACK_MASS_BALANCE   TRUE

Definition at line 631 of file sed_process.c.


Function Documentation

gint __sed_process_compare_name ( const __Sed_process_link link,
const gchar *  name 
)

Definition at line 457 of file sed_process.c.

References __Sed_process_link::p.

Referenced by sed_process_queue_find().

CLASS ( Sed_process_queue   ) 

Definition at line 86 of file sed_process.c.

Sed_process sed_process_activate ( Sed_process  p  ) 

Definition at line 1606 of file sed_process.c.

Referenced by sed_process_queue_set_active().

Sed_process sed_process_append_child ( Sed_process  p,
Sed_process  c 
)

Definition at line 348 of file sed_process.c.

References eh_require, and eh_strv_append().

Referenced by sed_process_queue_set_families().

gboolean sed_process_array_run ( GPtrArray *  a,
Sed_cube  p 
)

Definition at line 832 of file sed_process.c.

References sed_process_run().

Sed_process sed_process_child ( Sed_process  p,
const gchar *  child_s 
)

Definition at line 328 of file sed_process.c.

Referenced by init_failure_data(), and init_plume_data().

void sed_process_clean ( Sed_process  p  ) 

Definition at line 778 of file sed_process.c.

References eh_return_if_fail.

Sed_process sed_process_copy ( Sed_process  d,
Sed_process  s 
)

Definition at line 699 of file sed_process.c.

References eh_require, eh_return_val_if_fail, SED_MAX_LOG_FILES, and sed_process_create().

Referenced by sed_process_dup().

Sed_process sed_process_create ( const char *  name,
init_func  f_init,
run_func  f_run,
destroy_func  f_destroy 
)

Definition at line 636 of file sed_process.c.

References eh_fopen(), eh_new, eh_new0, NEW_OBJECT, and SED_MAX_LOG_FILES.

Referenced by sed_process_copy(), sed_process_link_new(), and sed_process_queue_push().

gpointer sed_process_data ( Sed_process  p  ) 

Get a pointer to the user data of a Sed_process

Return a pointer to the data member of a Sed_process. Note that this function returns a pointer to the actual data (rather than a copy of the data).

Returns:
A pointer to the data

Definition at line 1261 of file sed_process.c.

References eh_return_val_if_fail.

Sed_process sed_process_deactivate ( Sed_process  p  ) 

Definition at line 1615 of file sed_process.c.

Referenced by sed_process_queue_set_active().

Sed_process sed_process_destroy ( Sed_process  p  ) 

Definition at line 755 of file sed_process.c.

References eh_free.

Referenced by sed_process_link_destroy(), and sed_process_scan().

Sed_process sed_process_dup ( Sed_process  s  ) 

Definition at line 749 of file sed_process.c.

References sed_process_copy().

Referenced by sed_process_queue_copy(), and sed_process_scan().

gboolean sed_process_error ( Sed_process  p  ) 

Definition at line 1469 of file sed_process.c.

References eh_safe_dbl_division().

Referenced by sed_process_run_now().

GQuark sed_process_error_quark ( void   ) 

Definition at line 111 of file sed_process.c.

gchar* sed_process_flag_str ( gint  flag  ) 

Definition at line 1679 of file sed_process.c.

References SED_PROC_ACTIVE, SED_PROC_ACTIVE_CHILD, SED_PROC_ACTIVE_PARENT, SED_PROC_SAME_INTERVAL, SED_PROC_UNIQUE, SED_PROC_UNIQUE_CHILD, and SED_PROC_UNIQUE_PARENT.

Referenced by sed_process_render_flag_str().

gssize sed_process_fprint ( FILE *  fp,
Sed_process  p 
)

Definition at line 1075 of file sed_process.c.

References eh_compare_dbl(), eh_return_val_if_fail, and sed_process_interval_is_always().

Referenced by sed_process_queue_fprint().

gssize sed_process_fprint_info ( FILE *  fp,
Sed_process  p 
)

Definition at line 1439 of file sed_process.c.

References eh_require, eh_safe_dbl_division(), Sed_real_process_info::error, Sed_real_process_info::mass_added, Sed_real_process_info::mass_after, Sed_real_process_info::mass_before, Sed_real_process_info::mass_lost, Sed_real_process_info::mass_total_added, and Sed_real_process_info::mass_total_lost.

Referenced by sed_process_run_now().

void sed_process_init ( Sed_process  p,
Eh_symbol_table  t,
GError **  error 
)

Definition at line 923 of file sed_process.c.

Referenced by sed_process_scan().

double sed_process_interval ( Sed_process  p  ) 

Get the time interval of a Sed_process

Parameters:
p A Sed_process
Returns:
The process interval in years

Definition at line 1366 of file sed_process.c.

References eh_return_val_if_fail.

Referenced by sed_process_queue_item_interval().

gboolean sed_process_interval_is_always ( Sed_process  p  ) 

Is the time interval set to 'always'

If the interval of a process is 'always', it will be run for every sedflux time step.

Parameters:
p A Sed_process
Returns:
Returns true if the interval is 'always'

Definition at line 1382 of file sed_process.c.

References eh_return_val_if_fail.

Referenced by sed_process_fprint(), sed_process_is_on(), and sed_process_queue_check_item().

gboolean sed_process_interval_is_at_end ( Sed_process  p  ) 

Is the time interval set to 'at-end'

If the interval of a process is 'at-end', it will only be run for at the end of an epoch.

Parameters:
p A Sed_process
Returns:
Returns true if the interval is 'at-end'

Definition at line 1398 of file sed_process.c.

References eh_return_val_if_fail.

Referenced by sed_process_is_on(), and sed_process_run_at_end().

gboolean sed_process_is_active ( Sed_process  p  ) 

Is the Sed_process turned on

Parameters:
p A Sed_process
Returns:
TRUE if the process is turned on.

Definition at line 1411 of file sed_process.c.

Referenced by sed_process_queue_check_item(), sed_process_queue_item_interval(), sed_process_queue_n_active(), sed_process_queue_set_families(), and sed_process_run_at_end().

gboolean sed_process_is_on ( Sed_process  p,
double  time 
)

Definition at line 802 of file sed_process.c.

References eh_return_val_if_fail, eh_round(), sed_process_interval_is_always(), sed_process_interval_is_at_end(), and sed_process_next_event().

Referenced by sed_process_run().

gboolean sed_process_is_parent ( Sed_process  p  ) 

Definition at line 364 of file sed_process.c.

Referenced by sed_process_run(), and sed_process_run_at_end().

gboolean sed_process_is_set ( Sed_process  p  ) 

Definition at line 1312 of file sed_process.c.

References eh_return_val_if_fail.

__Sed_process_link * sed_process_link_destroy ( __Sed_process_link link  ) 

Definition at line 209 of file sed_process.c.

References eh_free, __Sed_process_link::obj_list, __Sed_process_link::p, and sed_process_destroy().

Referenced by sed_process_link_new(), sed_process_queue_delete(), and sed_process_queue_destroy().

__Sed_process_link * sed_process_link_new ( gchar *  name,
init_func  f_init,
run_func  f_run,
destroy_func  f_destroy,
Eh_key_file  file,
GError **  error 
)

Definition at line 153 of file sed_process.c.

References eh_new, eh_require, eh_return_val_if_fail, __Sed_process_link::obj_list, __Sed_process_link::p, SED_PROC_ERROR_NOT_FOUND, sed_process_create(), sed_process_link_destroy(), and sed_process_scan().

gpointer sed_process_malloc_user_data ( Sed_process  p,
gssize  n_bytes 
)

Definition at line 1325 of file sed_process.c.

References eh_new.

gchar* sed_process_name ( Sed_process  p  ) 

Get the name of a process

Obtain a copy of the name of a process. The pointer should be freed after use.

Parameters:
p A Sed_process
Returns:
A newly-allocated string containing the name of the process

Definition at line 1298 of file sed_process.c.

References eh_return_val_if_fail.

gboolean sed_process_name_is_same ( Sed_process  a,
Sed_process  b 
)

Compare the names of two processes

Parameters:
a A Sed_process
b A Sed_process
Returns:
TRUE if the process names are the same, FALSE otherwise.

Definition at line 1347 of file sed_process.c.

double sed_process_next_event ( Sed_process  p  ) 

Definition at line 789 of file sed_process.c.

Referenced by sed_process_is_on().

void sed_process_provide ( Sed_process  p,
GQuark  key,
gpointer  data 
)

Definition at line 1268 of file sed_process.c.

Referenced by run_failure(), and run_plume().

Sed_process_queue sed_process_queue_activate ( Sed_process_queue  q,
const gchar *  name 
)

Definition at line 1624 of file sed_process.c.

References sed_process_queue_set_active().

Sed_process_queue sed_process_queue_append ( Sed_process_queue  q,
__Sed_process_link p 
)

Definition at line 410 of file sed_process.c.

Referenced by sed_process_queue_push().

gint sed_process_queue_check_family ( Sed_process_queue  q,
const gchar *  parent_name,
const gchar *  child_name 
)

Definition at line 1534 of file sed_process.c.

References eh_compare_dbl(), eh_require, eh_require_not_reached, SED_PROC_ACTIVE, SED_PROC_ACTIVE_CHILD, SED_PROC_ACTIVE_PARENT, SED_PROC_SAME_INTERVAL, SED_PROC_UNIQUE, SED_PROC_UNIQUE_CHILD, SED_PROC_UNIQUE_PARENT, sed_process_queue_check_item(), and sed_process_queue_item_interval().

Referenced by sed_process_queue_validate().

int sed_process_queue_check_item ( Sed_process_queue  q,
const gchar *  p_name 
)

Definition at line 1492 of file sed_process.c.

References SED_PROC_ACTIVE, SED_PROC_ALWAYS, SED_PROC_UNIQUE, sed_process_interval_is_always(), sed_process_is_active(), SED_PROCESS_LINK, and sed_process_queue_find().

Referenced by sed_process_queue_check_family().

Sed_process_queue sed_process_queue_copy ( Sed_process_queue  d,
Sed_process_queue  s 
)

Definition at line 135 of file sed_process.c.

References sed_process_dup(), sed_process_queue_destroy(), and sed_process_queue_new().

Referenced by sed_process_queue_dup().

Sed_process_queue sed_process_queue_deactivate ( Sed_process_queue  q,
const gchar *  name 
)

Definition at line 1630 of file sed_process.c.

References sed_process_queue_set_active().

Sed_process_queue sed_process_queue_delete ( Sed_process_queue  q,
const gchar *  name 
)

Definition at line 529 of file sed_process.c.

References sed_process_link_destroy(), and sed_process_queue_find().

Sed_process_queue sed_process_queue_destroy ( Sed_process_queue  q  ) 

Definition at line 191 of file sed_process.c.

References eh_free, and sed_process_link_destroy().

Referenced by sed_epoch_copy(), sed_epoch_destroy(), sed_process_queue_copy(), and sed_process_queue_init().

Sed_process_queue sed_process_queue_dup ( Sed_process_queue  s  ) 

Definition at line 129 of file sed_process.c.

References sed_process_queue_copy().

Referenced by sed_epoch_copy().

GList * sed_process_queue_find ( Sed_process_queue  q,
const gchar *  name 
)

Definition at line 463 of file sed_process.c.

References __sed_process_compare_name().

Referenced by sed_process_queue_check_item(), sed_process_queue_delete(), sed_process_queue_find_nth_obj(), sed_process_queue_find_position(), sed_process_queue_item_interval(), sed_process_queue_obj_data(), sed_process_queue_run_process_now(), and sed_process_queue_set_active().

Sed_process sed_process_queue_find_nth_obj ( Sed_process_queue  q,
const gchar *  name,
gssize  n 
)

Definition at line 492 of file sed_process.c.

References SED_PROCESS_LINK, and sed_process_queue_find().

Referenced by my_hook(), and sed_process_queue_set_families().

gint sed_process_queue_find_position ( Sed_process_queue  q,
const gchar *  name 
)

Definition at line 443 of file sed_process.c.

References sed_process_queue_find().

gssize sed_process_queue_fprint ( FILE *  fp,
Sed_process_queue  q 
)

Definition at line 1147 of file sed_process.c.

References __Sed_process_link::obj_list, sed_process_fprint(), sed_process_queue_n_absent(), sed_process_queue_n_active(), sed_process_queue_n_inactive(), and sed_process_queue_size().

Sed_process_queue sed_process_queue_init ( const gchar *  file,
Sed_process_init_t  p_list[],
Sed_process_family  p_family[],
Sed_process_check  p_check[],
GError **  error 
)

Definition at line 222 of file sed_process.c.

References eh_key_file_scan(), eh_require, eh_return_val_if_fail, Sed_process_init_t::name, sed_process_queue_destroy(), sed_process_queue_new(), sed_process_queue_push(), sed_process_queue_scan(), sed_process_queue_set_families(), and sed_process_queue_validate().

Referenced by sed_epoch_queue_test_run(), and sed_epoch_scan_proc_queue().

Sed_process_queue sed_process_queue_insert ( Sed_process_queue  q,
__Sed_process_link link,
gint  position 
)

Definition at line 432 of file sed_process.c.

double sed_process_queue_item_interval ( Sed_process_queue  q,
const gchar *  name 
)

Definition at line 1573 of file sed_process.c.

References sed_process_interval(), sed_process_is_active(), SED_PROCESS_LINK, and sed_process_queue_find().

Referenced by sed_process_queue_check_family().

gssize sed_process_queue_n_absent ( Sed_process_queue  q  ) 

Definition at line 1209 of file sed_process.c.

References SED_PROCESS_LINK.

Referenced by sed_process_queue_fprint(), and sed_process_queue_n_inactive().

gssize sed_process_queue_n_active ( Sed_process_queue  q  ) 

Definition at line 1179 of file sed_process.c.

References sed_process_is_active(), and SED_PROCESS_LINK.

Referenced by sed_process_queue_fprint(), and sed_process_queue_n_inactive().

gssize sed_process_queue_n_inactive ( Sed_process_queue  q  ) 

Definition at line 1233 of file sed_process.c.

References eh_require, sed_process_queue_n_absent(), sed_process_queue_n_active(), and sed_process_queue_size().

Referenced by sed_process_queue_fprint().

Sed_process_queue sed_process_queue_new ( void   ) 

Definition at line 117 of file sed_process.c.

References NEW_OBJECT.

Referenced by sed_process_queue_copy(), and sed_process_queue_init().

gpointer* sed_process_queue_obj_data ( Sed_process_queue  q,
const char *  name 
)

Definition at line 506 of file sed_process.c.

References eh_new, SED_PROCESS, SED_PROCESS_LINK, and sed_process_queue_find().

Referenced by my_hook().

Sed_process_queue sed_process_queue_prepend ( Sed_process_queue  q,
__Sed_process_link p 
)

Definition at line 421 of file sed_process.c.

Sed_process_queue sed_process_queue_push ( Sed_process_queue  q,
Sed_process_init_t  init 
)

Definition at line 476 of file sed_process.c.

References Sed_process_init_t::destroy_f, eh_new, Sed_process_init_t::init_f, Sed_process_init_t::name, __Sed_process_link::obj_list, __Sed_process_link::p, Sed_process_init_t::run_f, sed_process_create(), and sed_process_queue_append().

Referenced by sed_process_queue_init().

Sed_process_queue sed_process_queue_run ( Sed_process_queue  q,
Sed_cube  p 
)

Definition at line 544 of file sed_process.c.

References SED_PROCESS_LINK, and sed_process_run().

Referenced by sed_process_queue_run_until().

Sed_process_queue sed_process_queue_run_at_end ( Sed_process_queue  q,
Sed_cube  p 
)

Definition at line 602 of file sed_process.c.

References SED_PROCESS_LINK, and sed_process_run_at_end().

Referenced by sed_epoch_queue_run(), and sed_epoch_queue_tic().

Sed_process_queue sed_process_queue_run_process_now ( Sed_process_queue  q,
const gchar *  name,
Sed_cube  cube 
)

Definition at line 618 of file sed_process.c.

References SED_PROCESS_LINK, sed_process_queue_find(), and sed_process_run_now().

Referenced by sed_process_queue_run_until().

Sed_process_queue sed_process_queue_run_until ( Sed_process_queue  q,
Sed_cube  p,
double  t_total 
)

Definition at line 560 of file sed_process.c.

References eh_require, sed_cube_increment_age(), sed_cube_set_age(), sed_cube_time_step(), sed_process_queue_run(), sed_process_queue_run_process_now(), SED_SIG_DUMP, SED_SIG_NEXT, SED_SIG_QUIT, sed_signal_is_pending(), and sed_signal_reset().

Referenced by sed_epoch_queue_run(), and sed_epoch_queue_tic().

Sed_process_queue sed_process_queue_scan ( Sed_process_queue  q,
Eh_key_file  file,
GError **  error 
)

Definition at line 374 of file sed_process.c.

References eh_return_val_if_fail, __Sed_process_link::obj_list, __Sed_process_link::p, SED_PROC_ERROR_NOT_FOUND, and sed_process_scan().

Referenced by sed_process_queue_init().

Sed_process_queue sed_process_queue_set_active ( Sed_process_queue  q,
const gchar *  name,
gboolean  val 
)

Definition at line 1636 of file sed_process.c.

References sed_process_activate(), sed_process_deactivate(), SED_PROCESS_LINK, sed_process_queue_find(), and sed_process_queue_set_active().

Referenced by sed_process_queue_activate(), sed_process_queue_deactivate(), and sed_process_queue_set_active().

Sed_process_queue sed_process_queue_set_families ( Sed_process_queue  q,
Sed_process_family  f[],
GError **  error 
)

Definition at line 283 of file sed_process.c.

References eh_return_val_if_fail, eh_set_error_strv(), eh_strv_append(), Sed_process_family::parent, SED_PROC_ERROR, SED_PROC_ERROR_MISSING_PARENT, sed_process_append_child(), sed_process_is_active(), and sed_process_queue_find_nth_obj().

Referenced by sed_process_queue_init().

gssize sed_process_queue_size ( Sed_process_queue  q  ) 

Definition at line 1173 of file sed_process.c.

Referenced by sed_process_queue_fprint(), and sed_process_queue_n_inactive().

gssize sed_process_queue_summary ( FILE *  fp,
Sed_process_queue  q 
)

Definition at line 1125 of file sed_process.c.

References __Sed_process_link::obj_list, and sed_process_summary().

Referenced by sed_epoch_queue_run(), and sed_epoch_queue_tic().

gboolean sed_process_queue_validate ( Sed_process_queue  q,
Sed_process_check  check[],
GError **  error 
)

Definition at line 1745 of file sed_process.c.

References eh_free, eh_require, eh_return_val_if_fail, eh_strv_append(), Sed_process_check::parent, SED_PROC_ERROR, SED_PROC_ERROR_BAD_INIT_FILE, sed_process_queue_check_family(), and sed_process_render_flag_str().

Referenced by sed_process_queue_init().

gchar* sed_process_render_flag_str ( gint  flag,
const gchar *  pre_s,
const gchar *  name 
)

Definition at line 1705 of file sed_process.c.

References eh_free, eh_strv_append(), SED_PROC_ACTIVE, SED_PROC_ACTIVE_CHILD, SED_PROC_ACTIVE_PARENT, SED_PROC_SAME_INTERVAL, SED_PROC_UNIQUE, SED_PROC_UNIQUE_CHILD, SED_PROC_UNIQUE_PARENT, and sed_process_flag_str().

Referenced by sed_process_queue_validate().

gboolean sed_process_run ( Sed_process  a,
Sed_cube  p 
)

Definition at line 842 of file sed_process.c.

References sed_cube_age(), sed_process_is_on(), sed_process_is_parent(), and sed_process_run_now().

Referenced by sed_process_array_run(), and sed_process_queue_run().

gboolean sed_process_run_at_end ( Sed_process  a,
Sed_cube  p 
)

Definition at line 851 of file sed_process.c.

References sed_process_interval_is_at_end(), sed_process_is_active(), sed_process_is_parent(), and sed_process_run_now().

Referenced by sed_process_queue_run_at_end().

gint sed_process_run_count ( Sed_process  p  ) 

Definition at line 1305 of file sed_process.c.

References eh_return_val_if_fail.

Referenced by run_avulsion(), run_bbl(), run_cpr(), run_failure(), run_isostasy(), run_met_station(), run_plume(), run_plume_hypo(), run_quake(), run_river(), run_sea_level(), run_storm(), run_subsidence(), and run_xshore().

gboolean sed_process_run_now ( Sed_process  a,
Sed_cube  p 
)

Definition at line 860 of file sed_process.c.

References DEFAULT_LOG, eh_redirect_log(), eh_reset_log(), Sed_process_info::error, Sed_process_info::mass_added, Sed_process_info::mass_lost, sed_cube_age_in_years(), sed_cube_mass(), sed_cube_mass_in_suspension(), sed_process_error(), and sed_process_fprint_info().

Referenced by run_failure(), run_plume(), sed_process_queue_run_process_now(), sed_process_run(), and sed_process_run_at_end().

GList* sed_process_scan ( Eh_key_file  k,
Sed_process  p,
GError **  error 
)

Definition at line 943 of file sed_process.c.

References eh_free, eh_key_file_get_all_values(), eh_key_file_get_bool_values(), eh_key_file_get_str_values(), eh_key_file_get_symbol_tables(), eh_key_file_group_size(), eh_key_file_has_group(), eh_logger(), eh_open_log_file(), eh_require, eh_return_val_if_fail, eh_str_is_boolean(), eh_str_to_boolean(), eh_str_to_time_in_years(), eh_str_to_time_range(), eh_symbol_table_destroy(), eh_symbol_table_require_labels(), SED_KEY_ACTIVE, SED_KEY_INTERVAL, SED_KEY_LOGGING, SED_KEY_TAG, SED_PROC_ERROR, SED_PROC_ERROR_NOT_FOUND, sed_process_destroy(), sed_process_dup(), and sed_process_init().

Referenced by sed_process_link_new(), and sed_process_queue_scan().

Sed_process sed_process_set_active ( Sed_process  p,
gboolean  val 
)

Definition at line 1597 of file sed_process.c.

Sed_process sed_process_set_next_event ( Sed_process  p,
double  new_next_event 
)

Definition at line 795 of file sed_process.c.

gssize sed_process_summary ( FILE *  fp,
Sed_process  p 
)

Definition at line 1422 of file sed_process.c.

References eh_render_time_str().

Referenced by sed_process_queue_summary().

gpointer sed_process_use ( Sed_process  p,
GQuark  key 
)

Definition at line 1280 of file sed_process.c.

Referenced by run_debris_flow(), run_plume_hyper_inflow(), run_plume_hyper_sakura(), run_plume_hypo(), run_slump(), run_turbidity_inflow(), and run_turbidity_sakura().

gpointer sed_process_user_data ( Sed_process  p  ) 

Definition at line 1318 of file sed_process.c.

References eh_return_val_if_fail.

Referenced by bio_destroy(), bio_run(), destroy_avulsion(), destroy_bbl(), destroy_bedload(), destroy_bioturbation(), destroy_constants(), destroy_cpr(), destroy_data_dump(), destroy_debris_flow(), destroy_diffusion(), destroy_erosion(), destroy_failure(), destroy_flow(), destroy_inflow(), destroy_isostasy(), destroy_met_station(), destroy_new_process(), destroy_plume(), destroy_plume_hypo(), destroy_quake(), destroy_river(), destroy_sea_level(), destroy_squall(), destroy_storm(), destroy_subsidence(), destroy_tide(), destroy_xshore(), init_avulsion_data(), init_bbl_data(), init_cpr_data(), init_failure_data(), init_isostasy_data(), init_met_station_data(), init_plume_data(), init_plume_hypo_data(), init_quake_data(), init_river_data(), init_sea_level_data(), init_storm_data(), init_subsidence_data(), init_xshore_data(), run_avulsion(), run_bbl(), run_bedload(), run_bioturbation(), run_constants(), run_cpr(), run_data_dump(), run_debris_flow(), run_diffusion(), run_erosion(), run_failure(), run_flow(), run_isostasy(), run_met_station(), run_new_process(), run_plume(), run_plume_hyper_inflow(), run_plume_hyper_sakura(), run_plume_hypo(), run_quake(), run_river(), run_sea_level(), run_slump(), run_squall(), run_storm(), run_subsidence(), run_tide(), run_turbidity_inflow(), run_turbidity_sakura(), and run_xshore().

void sed_process_withhold ( Sed_process  p,
GQuark  key 
)

Definition at line 1274 of file sed_process.c.

Referenced by run_failure(), and run_plume().


Generated on Fri Jan 4 18:04:18 2008 for sedflux by  doxygen 1.5.2