27 #include <libphidgets/phidget21.h> 36 CPhidget_DeviceClass cls;
38 CPhidget_getDeviceName (phid, &name);
39 CPhidget_getSerialNumber(phid, &serialNo);
40 CPhidget_getDeviceClass(phid, &cls);
41 CPhidget_getDeviceID(phid, &
id);
43 printf(
"%s %10d attached! (%d, %d) \n", name, serialNo, cls,
id);
55 CPhidget_getDeviceName (phid, &name);
56 CPhidget_getSerialNumber(phid, &serialNo);
57 printf(
"%s %10d detached!\n", name, serialNo);
62 int ErrorHandler(CPhidgetManagerHandle MAN,
void *usrptr,
int Code,
const char *Description)
64 printf(
"Error handled. %d - %s\n", Code, Description);
71 int serialNo, version, numDevices,
i;
74 CPhidgetHandle *devices;
76 CPhidgetManager_getAttachedDevices (MAN, &devices, &numDevices);
78 printf(
"|- # -|- Label -|- Type -|- Serial No. -|- Version -|\n");
79 printf(
"|-------|----------------------|----------------------------------|--------------|------------|\n");
82 for(i = 0; i < numDevices; i++)
84 CPhidget_getDeviceType(devices[i], &ptr);
85 CPhidget_getDeviceLabel(devices[i], &label);
86 CPhidget_getSerialNumber(devices[i], &serialNo);
87 CPhidget_getDeviceVersion(devices[i], &version);
89 printf(
"|- %3d -|- %18s -|- %30s -|- %10d -|- %8d -|\n", i, label, ptr, serialNo, version);
90 printf(
"|-------|----------------------|----------------------------------|--------------|------------|\n");
93 CPhidgetManager_freeAttachedDevicesArray(devices);
95 printf(
"\nPress r to rename\n");
96 printf(
"Press q to exit\n");
105 const char* label_old;
106 std::string label_new;
107 CPhidgetHandle *devices;
109 printf(
"index: %d\n", index);
111 CPhidgetManager_getAttachedDevices (MAN, &devices, &numDevices);
112 CPhidget_getDeviceLabel(devices[index], &label_old);
114 printf(
"\nenter new label: ");
115 getline(std::cin, label_new);
117 printf(
"\n old label: %s \n”", label_old);
118 printf(
"new label: %s \n", label_new.c_str());
119 printf(
"is this correct? [Y/n]: ");
127 if(CPhidget_setDeviceLabel(devices[index], label_new.c_str()) == EPHIDGET_OK)
128 printf(
"\nnew label is: %s \n", label_new.c_str());
130 printf(
"\nerror setting label!\n");
133 printf(
"\nlabel is still: %s \n", label_old);
145 CPhidgetManagerHandle man = 0;
147 CPhidget_enableLogging(PHIDGET_LOG_VERBOSE, NULL);
150 CPhidgetManager_create(&man);
158 CPhidgetManager_open(man);
162 if ((err = CPhidget_waitForAttachment((CPhidgetHandle) man, 10000))
166 CPhidget_getErrorDescription(err, &errStr);
167 printf(
"Error waiting for attachment: (%d): %s", err, errStr);
179 printf(
"Press index number of device you would like to rename\n");
190 printf(
"Closing...\n");
191 CPhidgetManager_close(man);
192 CPhidgetManager_delete(man);
198 int main(
int argc,
char* argv[])
int AttachHandler(CPhidgetHandle phid, void *userPtr)
int ErrorHandler(CPhidgetManagerHandle MAN, void *usrptr, int Code, const char *Description)
int main(int argc, char *argv[])
int display_devices(CPhidgetManagerHandle MAN)
int DetachHandler(CPhidgetHandle phid, void *userPtr)
void set_label(CPhidgetManagerHandle MAN, int index)