/Users/huttone/Devel/sedflux-new/sedflux/trunk/ew/utils/eh_sequence.c

Go to the documentation of this file.
00001 #include <eh_utils.h>
00002 
00003 Eh_sequence*
00004 eh_create_sequence( void )
00005 {
00006    Eh_sequence* s = eh_new( Eh_sequence , 1 );
00007    s->len  = 0;
00008    s->t    = NULL;
00009    s->data = NULL;
00010 
00011    return s;
00012 }
00013 
00014 Eh_sequence*
00015 eh_add_to_sequence( Eh_sequence* s , double t , gpointer data )
00016 {
00017    eh_require( s!=NULL );
00018 
00019    s->len++;
00020 
00021    s->t    = g_renew( double   , s->t    , s->len );
00022    s->data = g_renew( gpointer , s->data , s->len );
00023 
00024    s->t[s->len-1] = t;
00025    s->data[s->len-1] = data;
00026 
00027    return s;
00028 }
00029 
00030 void
00031 eh_destroy_sequence( Eh_sequence* s , gboolean free_mem )
00032 {
00033    gssize i;
00034    if ( s )
00035    {
00036       if ( free_mem )
00037          for ( i=0 ; i<s->len ; i++ )
00038             eh_free( s->data[i] );
00039       eh_free( s->data );
00040       eh_free( s->t    );
00041       eh_free( s       );
00042    }
00043 }
00044 

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