settings/src/iLiadTimediDSData.c File Reference

settings - timed-iDS connection settings data More...

#include <stdio.h>
#include <string.h>
#include <gtk/gtk.h>
#include "setupLog.h"
#include "iLiadTimediDSData.h"
#include "settings.h"

Go to the source code of this file.

Functions

static gboolean compare_settings (regTimedIds_t *settings_l, regTimedIds_t *settings_r)
void iLiad_timedids_data_init (void)
void iLiad_timedids_data_destroy (void)
void iLiad_timedids_data_store (void)
regTimedIds_tget_current_timedids_settings (void)

Variables

static regTimedIds_tg_timedids_settings = NULL
static regTimedIds_tg_stored_settings = NULL


Detailed Description

settings - timed-iDS connection settings data

Copyright (C) 2005-2008 iRex Technologies B.V. All rights reserved.

Handling timed-iDS connection settings data.

Definition in file iLiadTimediDSData.c.


Function Documentation

gboolean compare_settings ( regTimedIds_t settings_l,
regTimedIds_t settings_r 
) [static]

Definition at line 90 of file iLiadTimediDSData.c.

00091 {
00092     if (settings_l->enable != settings_r->enable)
00093     {
00094         return FALSE;
00095     }
00096 
00097     if (settings_l->timeCnt != settings_r->timeCnt)
00098     {
00099         return FALSE;
00100     }
00101 
00102     int i;
00103     for (i=0; i<g_stored_settings->timeCnt; i++)
00104     {
00105         if (settings_l->timeSet[i] != settings_r->timeSet[i])
00106         {
00107             return FALSE;
00108         }
00109     }
00110 
00111     if (settings_l->swUpdate != settings_r->swUpdate)
00112     {
00113         return FALSE;
00114     }
00115 
00116     if (settings_l->switchOff != settings_r->switchOff)
00117     {
00118         return FALSE;
00119     }
00120 
00121     return TRUE;    
00122 }

regTimedIds_t* get_current_timedids_settings ( void   ) 

Definition at line 146 of file iLiadTimediDSData.c.

00147 {
00148     return g_timedids_settings;
00149 }

void iLiad_timedids_data_destroy ( void   ) 

Definition at line 73 of file iLiadTimediDSData.c.

00074 {
00075     ST_LOGPRINTF("entry");
00076 
00077     if (g_timedids_settings)
00078     {
00079         erRegFreeTimedIds(g_timedids_settings);
00080         g_timedids_settings = NULL;
00081     }
00082     if (g_stored_settings)
00083     {
00084         erRegFreeTimedIds(g_stored_settings);
00085         g_stored_settings = NULL;
00086     }
00087 }

Here is the call graph for this function:

void iLiad_timedids_data_init ( void   ) 

Definition at line 48 of file iLiadTimediDSData.c.

00049 {
00050     ST_LOGPRINTF("entry");
00051     
00052     iLiad_timedids_data_destroy();
00053     
00054     g_timedids_settings = erRegGetTimedIds();
00055     if (NULL == g_timedids_settings)
00056     {
00057         ST_WARNPRINTF("use default values");
00058         
00059         g_timedids_settings = g_new0(regTimedIds_t, 1);
00060         g_timedids_settings->enable = FALSE;
00061         g_timedids_settings->timeCnt = 0;
00062         g_timedids_settings->timeSet[0] = 46800;
00063         g_timedids_settings->swUpdate = FALSE;
00064         g_timedids_settings->switchOff = FALSE;
00065     }
00066     else
00067     {
00068         g_stored_settings = g_new0(regTimedIds_t, 1);
00069         *g_stored_settings = *g_timedids_settings;
00070     }
00071 }

Here is the call graph for this function:

void iLiad_timedids_data_store ( void   ) 

Definition at line 124 of file iLiadTimediDSData.c.

00125 {
00126     ST_LOGPRINTF("entry");
00127     g_return_if_fail(NULL != g_timedids_settings);
00128     
00129     // Check if anything changed
00130     if (g_stored_settings != NULL && compare_settings(g_stored_settings, g_timedids_settings))
00131     {
00132         // Nothing changed, nothing to save
00133         return;
00134     }
00135 
00136     prepare_registry_write();
00137 
00138     ST_STOREPRINTF("calling erRegSetTimediDS");
00139     erRegSetTimedIds(g_timedids_settings);
00140 
00141     *g_stored_settings = *g_timedids_settings;
00142 
00143     do_registry_write();
00144 }

Here is the call graph for this function:


Variable Documentation

regTimedIds_t* g_stored_settings = NULL [static]

Definition at line 43 of file iLiadTimediDSData.c.

Definition at line 42 of file iLiadTimediDSData.c.


Generated on Sun Dec 14 17:17:22 2008 by  doxygen 1.5.6