| byte | : | 8 bit unsigned integer, a value from 0 to 255 |
| uint16 | : | 16 bit unsigned integer, value 0 to 65535 |
| uint32 | : | 32 bit unsigned integer, value 0 to 4294967295 |
| int16 | : | 16 bit signed integer, valeur de -32768 to 32767 |
| int32 | : | 32 bit signed integer, valeur de -2147483648 to 2147483647 |
| float | : | single precision floating point number stored in 4 bytes. |
| File header |
| List of variables |
| Header variable 1 |
| Data for variable 1 |
| Header variable 2 |
| Data for variable 2 |
| ........ |
| ........ |
| Header of the last variable |
| Data from the last variable |
| File header |
| Header variable |
| Data for variable |
| Type | Name | Description |
|---|---|---|
| 3-byte | signature | Allow to control that the file is a cyloop file with the right
format. Contains in this order : |
| byte | nb_var | Number of variables stored in the cyloop file. |
| byte | caract_gen | Bit field which defines the general characteristics of the
cyloop file. Every indication is stored on one bit. |
| cycle_decl | Triggered cycle. |
|
| temps_utc | Beginning of cycles counted in universal time (UTC or GMT). |
|
| cycle_ireg | Using irregular cycle length based on the calendar. |
|
| cycle_annuel | Choice between monthly or yearly cycle. This bit is meaningful only if bitt cycle_ireg is 1 |
|
| They must be left to 0. | ||
| byte | etat_cyloop | Status bits of the cyloop file. |
| heure_ete | This bit stores if it was summer time (bit to 1) or winter time
when data was updated for the last time. It is meaningful only if bit temps_utc = 0 (local time). |
|
| They must be left to 0. | ||
| uint16 | nb_don_cycle | Number of data per measurement cycle. It is the number of intervals of the same duration (potentially to second near) in which each cycle is divided. |
| uint32 | deb_cycle | Moment when start of the current cycle. It is the value returned by function time() at the beginning of this cycle (number of seconds since 1 January 1970-0 H UTC). |
| uint32 | duree_cycle | Duration in seconds of the current cycle. |
| Variable name 16 bytes |
Position int32 |
| Type | Name | Description |
|---|---|---|
| uint16 | der_enreg | Number of the last data updated in the current cycle. |
| byte | typedon | Bit field that defines the characteristics of the variable. Each indication is stored on one bit. |
| cmoy_sep | Separate coefficient coef_moy for each moment of the cycle. |
|
| cpt_cycle_vide | Empty cycles taken into account in the weighting calculations. This bit is meaningful only if the value of ponderation field is different from 0. |
|
| cumul_donnees | Allow multiple updates at every moment of the cycle. |
|
| compteur | Choice between a variable containing values or a counter. |
|
| donnees_32bits | Data format for the counter variable. This bit is only meaningful if bit compteur is 1. |
|
| val_float | Data format for the standard variable. This bit is only meaningful if bit compteur is 0. |
|
| mem_min_max | Storing minimum and maximum values of data input at every moment
of the cycle. This bit is only meaningful if bit compteur is 0. |
|
| cpt_toute_don |
This bit is only meaningful if cmoy_sep = 1 and
cumul_donnees = 1. |
|
| byte | ponderation | Weighting factor for the values of previous cycles. Thus, data of the last cycles become more important for calculating the average value than those of the older cycles. |
| uint16 | extention | Available field for possible future use. Presently set to 0. |
| uint16 | coef_moy | (optional) Coefficient used to calculate the average value of
data stored for each moment of the cycle. |
| Counter uint16 |
| Counter uint32 |
| coef_moy uint16 |
Counter uint16 |
| coef_moy uint16 |
Counter uint32 |
| Value int32 |
| Value float |
| coef_moy uint16 |
Value int32 |
| coef_moy uint16 |
Value float |
| Value int32 |
Minimum int32 |
Maximum int32 |
| Value float |
Minimum float |
Maximum float |
| coef_moy uint16 |
Value int32 |
Minimum int32 |
Maximum int32 |
| coef_moy uint16 |
Value float |
Minimum float |
Maximum float |