[Tinyos-contrib-commits] CVS: tinyos-1.x/contrib/imote2/tos/include
GenericSampling.h, NONE, 1.1 UOM.h, NONE, 1.1
Robbie Adler
radler at users.sourceforge.net
Wed Oct 25 08:03:55 PDT 2006
Update of /cvsroot/tinyos/tinyos-1.x/contrib/imote2/tos/include
In directory sc8-pr-cvs10.sourceforge.net:/tmp/cvs-serv27317/include
Added Files:
GenericSampling.h UOM.h
Log Message:
initial release of driver framework and basicsensorboard driver
--- NEW FILE: GenericSampling.h ---
#ifndef __GENERICSAMPLING_H__
#define __GENERICSAMPLING_H__
/******
functionInfo_t structure
field: function
description: describes the function of the board that the paramname and paramval should be associated with
field: paramname
description: unique parameter that is part of the "function field" namespace
field: paramval
description: paramter associated with the paramname in question
****/
typedef struct{
uint16_t function;
uint16_t paramname;
uint32_t paramval;
} __attribute__((packed)) functionInfo_t;
/******
TypeValItem structure
field: count
description: number of functionInfo_t structures in the array pointed to by functionInfo
field: functionInfo
description: array of length count of functionInfo_t structures
****/
typedef struct{
uint32_t count; //number of entries in the functionInfo structure array that follows.
functionInfo_t *functionInfo; //array of functionInfo_t's
} __attribute__((packed)) TypeValItem;
//functionInfo_t function field defines
#define FI_FUNCTION_BOARD (0xFFFF)
#define FI_FUNCTION_FFT (0x0)
#define FI_FUNCTION_GSE (0x1)
#define FI_FUNCTION_AVG (0x2)
//parmname defs for BOARD FUNCTIONS
#define FIF_BOARD_LOGICALNODEID (0x0)
#define FIF_BOARD_QUERYGROUPID (0x1)
#define FIF_BOARD_ACQUISITIONNUM (0x2)
#define FIF_BOARD_ACQUISITIONCOUNT (0x3)
#define FIF_BOARD_DESIREDUOM (0x4)
#define FIF_BOARD_ENGINEERINGUOM (0x5)
#define FIF_BOARD_OUTPUTUOM (0x6)
#define FIF_BOARD_CONVERSIONVAL (0x7)
#define FIF_BOARD_SENSORZERO (0x8)
//parmname defs for FFT FUNCTIONS
#define FIF_FFT_NUMOUTPUTSAMPLES (0x0)
//parmname defs for gSE FUNCTIONS
#define FIF_GSE_FILTERFREQ (0x0)
//parmname defs for AVG FUNCTIONS
#define FIF_AVG_NUMAVERAGES (0x0)
#endif
--- NEW FILE: UOM.h ---
/** Created: Robbie Adler
* Modified: Rahul Shah (Oct 15, 2005)
* - Changed some values so that they are valid C identifiers
* Modified: Phil Muse (Oct 22, 2005)
* - Changed name to UOM (UnitsOfMeasure)
* Modified: Phil Muse (Jul 20, 2006)
* - Added UOM_ENUM_COUNT as number of elements in enum for data
* validation purposes in the gateway.
* Modified: Phil Muse (Aug 16, 2006)
* - Removed macro expansion and wrote code out long-hand
**/
#ifndef UOM_ENUM_COUNT
#define UOM_ENUM_COUNT 87
#endif
enum UOM_t{
unknown,
ft,
in,
um,
mils,
microns,
mm,
ips,
mm_sec,
m_s,
m_min,
um_min,
um_sec,
ft_min,
gs,
m_s2,
Amp,
Amperage,
bars,
BOV,
BTU,
BTU_h,
BTU_min,
CFH,
cfu_ml_log,
count,
CPM,
deg_C,
deg_F,
deg_K,
dynes,
Ergs,
fathoms,
ft_lb,
ft_lb_min,
ft_lb_s,
Gallons,
gpm,
hrs,
Hz,
Inches_H2O,
inches_HG,
J,
J_s,
kA,
kg,
kg_Cal,
kg_Cal_min,
kg_m,
kg_cm2,
Knots,
kPa,
kV,
kva,
kW,
kWh,
lbs,
lbs_of_F,
load,
Loaded_Hours,
Loaded_PSI,
mA,
min,
minutes,
Mohm,
Moisture_PPM,
mV,
MW,
N,
Pa,
Percent,
pH,
ppb,
ppm,
prtcls_mL,
PSF,
PSI,
PSID,
RPM,
Torrs,
Total_Acid_Number,
uMhos,
uS,
uS_cm,
V,
Vdc,
watts };
const char* UOM_tasString(int UOM)
{
switch (UOM) {
case 0: return "unknown";
case 1: return "ft";
case 2: return "in";
case 3: return "um";
case 4: return "mils";
case 5: return "microns";
case 6: return "mm";
case 7: return "ips";
case 8: return "mm_sec";
case 9: return "m_s";
case 10: return "m_min";
case 11: return "um_min";
case 12: return "um_sec";
case 13: return "ft_min";
case 14: return "gs";
case 15: return "m_s2";
case 16: return "Amp";
case 17: return "Amperage";
case 18: return "bars";
case 19: return "BOV";
case 20: return "BTU";
case 21: return "BTU_h";
case 22: return "BTU_min";
case 23: return "CFH";
case 24: return "cfu_ml_log";
case 25: return "count";
case 26: return "CPM";
case 27: return "deg_C";
case 28: return "deg_F";
case 29: return "deg_K";
case 30: return "dynes";
case 31: return "Ergs";
case 32: return "fathoms";
case 33: return "ft_lb";
case 34: return "ft_lb_min";
case 35: return "ft_lb_s";
case 36: return "Gallons";
case 37: return "gpm";
case 38: return "hrs";
case 39: return "Hz";
case 40: return "Inches_H2O";
case 41: return "inches_HG";
case 42: return "J";
case 43: return "J_s";
case 44: return "kA";
case 45: return "kg";
case 46: return "kg_Cal";
case 47: return "kg_Cal_min";
case 48: return "kg_m";
case 49: return "kg_cm2";
case 50: return "Knots";
case 51: return "kPa";
case 52: return "kV";
case 53: return "kva";
case 54: return "kW";
case 55: return "kWh";
case 56: return "lbs";
case 57: return "lbs_of_F";
case 58: return "load";
case 59: return "Loaded_Hours";
case 60: return "Loaded_PSI";
case 61: return "mA";
case 62: return "min";
case 63: return "minutes";
case 64: return "Mohm";
case 65: return "Moisture_PPM";
case 66: return "mV";
case 67: return "MW";
case 68: return "N";
case 69: return "Pa";
case 70: return "Percent";
case 71: return "pH";
case 72: return "ppb";
case 73: return "ppm";
case 74: return "prtcls_mL";
case 75: return "PSF";
case 76: return "PSI";
case 77: return "PSID";
case 78: return "RPM";
case 79: return "Torrs";
case 80: return "Total_Acid_Number";
case 81: return "uMhos";
case 82: return "uS";
case 83: return "uS_cm";
case 84: return "V";
case 85: return "Vdc";
case 86: return "watts";
default: return "";
}
}
int UOM_tfromString(char * UOM)
{
if (strcmp(UOM, "unknown") == 0) {
return 0;
}
if (strcmp(UOM, "ft") == 0) {
return 1;
}
if (strcmp(UOM, "in") == 0) {
return 2;
}
if (strcmp(UOM, "um") == 0) {
return 3;
}
if (strcmp(UOM, "mils") == 0) {
return 4;
}
if (strcmp(UOM, "microns") == 0) {
return 5;
}
if (strcmp(UOM, "mm") == 0) {
return 6;
}
if (strcmp(UOM, "ips") == 0) {
return 7;
}
if (strcmp(UOM, "mm_sec") == 0) {
return 8;
}
if (strcmp(UOM, "m_s") == 0) {
return 9;
}
if (strcmp(UOM, "m_min") == 0) {
return 10;
}
if (strcmp(UOM, "um_min") == 0) {
return 11;
}
if (strcmp(UOM, "um_sec") == 0) {
return 12;
}
if (strcmp(UOM, "ft_min") == 0) {
return 13;
}
if (strcmp(UOM, "gs") == 0) {
return 14;
}
if (strcmp(UOM, "m_s2") == 0) {
return 15;
}
if (strcmp(UOM, "Amp") == 0) {
return 16;
}
if (strcmp(UOM, "Amperage") == 0) {
return 17;
}
if (strcmp(UOM, "bars") == 0) {
return 18;
}
if (strcmp(UOM, "BOV") == 0) {
return 19;
}
if (strcmp(UOM, "BTU") == 0) {
return 20;
}
if (strcmp(UOM, "BTU_h") == 0) {
return 21;
}
if (strcmp(UOM, "BTU_min") == 0) {
return 22;
}
if (strcmp(UOM, "CFH") == 0) {
return 23;
}
if (strcmp(UOM, "cfu_ml_log") == 0) {
return 24;
}
if (strcmp(UOM, "count") == 0) {
return 25;
}
if (strcmp(UOM, "CPM") == 0) {
return 26;
}
if (strcmp(UOM, "deg_C") == 0) {
return 27;
}
if (strcmp(UOM, "deg_F") == 0) {
return 28;
}
if (strcmp(UOM, "deg_K") == 0) {
return 29;
}
if (strcmp(UOM, "dynes") == 0) {
return 30;
}
if (strcmp(UOM, "Ergs") == 0) {
return 31;
}
if (strcmp(UOM, "fathoms") == 0) {
return 32;
}
if (strcmp(UOM, "ft_lb") == 0) {
return 33;
}
if (strcmp(UOM, "ft_lb_min") == 0) {
return 34;
}
if (strcmp(UOM, "ft_lb_s") == 0) {
return 35;
}
if (strcmp(UOM, "Gallons") == 0) {
return 36;
}
if (strcmp(UOM, "gpm") == 0) {
return 37;
}
if (strcmp(UOM, "hrs") == 0) {
return 38;
}
if (strcmp(UOM, "Hz") == 0) {
return 39;
}
if (strcmp(UOM, "Inches_H2O") == 0) {
return 40;
}
if (strcmp(UOM, "inches_HG") == 0) {
return 41;
}
if (strcmp(UOM, "J") == 0) {
return 42;
}
if (strcmp(UOM, "J_s") == 0) {
return 43;
}
if (strcmp(UOM, "kA") == 0) {
return 44;
}
if (strcmp(UOM, "kg") == 0) {
return 45;
}
if (strcmp(UOM, "kg_Cal") == 0) {
return 46;
}
if (strcmp(UOM, "kg_Cal_min") == 0) {
return 47;
}
if (strcmp(UOM, "kg_m") == 0) {
return 48;
}
if (strcmp(UOM, "kg_cm2") == 0) {
return 49;
}
if (strcmp(UOM, "Knots") == 0) {
return 50;
}
if (strcmp(UOM, "kPa") == 0) {
return 51;
}
if (strcmp(UOM, "kV") == 0) {
return 52;
}
if (strcmp(UOM, "kva") == 0) {
return 53;
}
if (strcmp(UOM, "kW") == 0) {
return 54;
}
if (strcmp(UOM, "kWh") == 0) {
return 55;
}
if (strcmp(UOM, "lbs") == 0) {
return 56;
}
if (strcmp(UOM, "lbs_of_F") == 0) {
return 57;
}
if (strcmp(UOM, "load") == 0) {
return 58;
}
if (strcmp(UOM, "Loaded_Hours") == 0) {
return 59;
}
if (strcmp(UOM, "Loaded_PSI") == 0) {
return 60;
}
if (strcmp(UOM, "mA") == 0) {
return 61;
}
if (strcmp(UOM, "min") == 0) {
return 62;
}
if (strcmp(UOM, "minutes") == 0) {
return 63;
}
if (strcmp(UOM, "Mohm") == 0) {
return 64;
}
if (strcmp(UOM, "Moisture_PPM") == 0) {
return 65;
}
if (strcmp(UOM, "mV") == 0) {
return 66;
}
if (strcmp(UOM, "MW") == 0) {
return 67;
}
if (strcmp(UOM, "N") == 0) {
return 68;
}
if (strcmp(UOM, "Pa") == 0) {
return 69;
}
if (strcmp(UOM, "Percent") == 0) {
return 70;
}
if (strcmp(UOM, "pH") == 0) {
return 71;
}
if (strcmp(UOM, "ppb") == 0) {
return 72;
}
if (strcmp(UOM, "ppm") == 0) {
return 73;
}
if (strcmp(UOM, "prtcls_mL") == 0) {
return 74;
}
if (strcmp(UOM, "PSF") == 0) {
return 75;
}
if (strcmp(UOM, "PSI") == 0) {
return 76;
}
if (strcmp(UOM, "PSID") == 0) {
return 77;
}
if (strcmp(UOM, "RPM") == 0) {
return 78;
}
if (strcmp(UOM, "Torrs") == 0) {
return 79;
}
if (strcmp(UOM, "Total_Acid_Number") == 0) {
return 80;
}
if (strcmp(UOM, "uMhos") == 0) {
return 81;
}
if (strcmp(UOM, "uS") == 0) {
return 82;
}
if (strcmp(UOM, "uS_cm") == 0) {
return 83;
}
if (strcmp(UOM, "V") == 0) {
return 84;
}
if (strcmp(UOM, "Vdc") == 0) {
return 85;
}
if (strcmp(UOM, "watts") == 0) {
return 86;
}
return 0;
}
More information about the Tinyos-contrib-commits
mailing list