2 OBJECT INTERFACE FOR CONTROL
10 #define I_HUMIDIFIER 500
11 #define I_HUMIDIFIER_CID 510
12 #define I_HUMIDIFIER_SLOT 520
14 #define I_LIGHT_CID 610
15 #define I_LIGHT_SLOT 620
18 unsigned int status_val;
20 int status_rdfnc(ULOI_PARAM_coninfo void *context)
22 return uloi_uint_rdfnc(ULOI_ARG_coninfo &status_val);
25 int errclr_wrfnc(ULOI_PARAM_coninfo void *context)
31 /* description of input objects */
32 const ULOI_CODE uloi_objdes_t uloid_objdes_DOII =
33 ULOI_GENOBJDES_RAW(ULOI_DOII,NULL,NULL_CODE,NULL,uloi_doii_fnc,(void*)&uloi_objdes_main)
34 /* description of output objects */
35 const ULOI_CODE uloi_objdes_t uloid_objdes_DOIO =
36 ULOI_GENOBJDES_RAW(ULOI_DOIO,NULL,NULL_CODE,NULL,uloi_doio_fnc,(void*)&uloi_objdes_main)
37 /* ID numbers of recognized input objects */
38 const ULOI_CODE uloi_objdes_t uloid_objdes_QOII =
39 ULOI_GENOBJDES_RAW(ULOI_QOII,NULL,NULL_CODE,NULL,uloi_qoii_fnc,(void*)&uloi_objdes_main)
40 /* ID numbers of recognized output objects */
41 const ULOI_CODE uloi_objdes_t uloid_objdes_QOIO =
42 ULOI_GENOBJDES_RAW(ULOI_QOIO,NULL,NULL_CODE,NULL,uloi_qoio_fnc,(void*)&uloi_objdes_main)
43 /* object values read request */
44 const ULOI_CODE uloi_objdes_t uloid_objdes_RDRQ =
45 ULOI_GENOBJDES_RAW(ULOI_RDRQ,NULL,NULL_CODE,NULL,uloi_rdrq_fnc,(void*)&uloi_objdes_main)
47 ULOI_GENOBJDES(STATUS,ULOI_STATUS,"u2",status_rdfnc,&status_val,NULL_CODE,NULL)
48 ULOI_GENOBJDES(ERRCLR,ULOI_ERRCLR,"e",NULL_CODE,NULL,errclr_wrfnc,&status_val)
50 ULOI_GENOBJDES(FAN,I_FAN,"u2/bool",uloi_uint_rdfnc,&oi_fan,oi_fan_wrfnc,&oi_fan)
51 ULOI_GENOBJDES(FAN_CID,I_FAN_CID,"u2/cid",uloi_uint_rdfnc,&oi_cid_fan,oi_cid_fan_wrfnc,&oi_cid_fan)
52 ULOI_GENOBJDES(FAN_SLOT,I_FAN_SLOT,"u2/slot",uloi_uint_rdfnc,&oi_slot_fan,oi_slot_fan_wrfnc,&oi_slot_fan)
54 ULOI_GENOBJDES(HUMIDIFIER,I_HUMIDIFIER,"u2/bool",uloi_uint_rdfnc,&oi_humidifier,oi_humidifier_wrfnc,&oi_humidifier)
55 ULOI_GENOBJDES(HUMIDIFIER_CID,I_HUMIDIFIER_CID,"u2/cid",uloi_uint_rdfnc,&oi_cid_humidifier,oi_cid_humidifier_wrfnc,&oi_cid_humidifier)
56 ULOI_GENOBJDES(HUMIDIFIER_SLOT,I_HUMIDIFIER_SLOT,"u2/slot",uloi_uint_rdfnc,&oi_slot_humidifier,oi_slot_humidifier_wrfnc,&oi_slot_humidifier)
58 ULOI_GENOBJDES(LIGHT,I_LIGHT,"u2/bool",uloi_uint_rdfnc,&oi_light,oi_light_wrfnc,&oi_light)
59 ULOI_GENOBJDES(LIGHT_CID,I_LIGHT_CID,"u2/cid",uloi_uint_rdfnc,&oi_cid_light,oi_cid_light_wrfnc,&oi_cid_light)
60 ULOI_GENOBJDES(LIGHT_SLOT,I_LIGHT_SLOT,"u2/slot",uloi_uint_rdfnc,&oi_slot_light,oi_slot_light_wrfnc,&oi_slot_light)
62 ULOI_GENOBJDES(PERIOD,I_PERIOD,"u2",uloi_uint_rdfnc,&oi_period,NULL_CODE,NULL/*oi_period_wrfnc,&oi_period*/)
64 const uloi_objdes_t * ULOI_CODE uloi_objdes_main_items[]={
74 &uloid_objdes_FAN_CID,
75 &uloid_objdes_FAN_SLOT,
76 &uloid_objdes_HUMIDIFIER,
77 &uloid_objdes_HUMIDIFIER_CID,
78 &uloid_objdes_HUMIDIFIER_SLOT,
80 &uloid_objdes_LIGHT_CID,
81 &uloid_objdes_LIGHT_SLOT,
86 const ULOI_CODE uloi_objdes_array_t uloi_objdes_main={
88 (uloi_objdes_t **)uloi_objdes_main_items,
89 sizeof(uloi_objdes_main_items)/sizeof(uloi_objdes_main_items[0]),