cphidgetmanager.h
Go to the documentation of this file.
00001 #ifndef __CPHIDGETMANAGER
00002 #define __CPHIDGETMANAGER
00003 #include "cphidget.h"
00004 
00014 DPHANDLE(Manager)
00015 
00016 #ifndef EXTERNALPROTO
00017 
00018 typedef enum
00019 {
00020         PHIDGETMANAGER_INACTIVE = 1,
00021         PHIDGETMANAGER_ACTIVE,
00022         PHIDGETMANAGER_ACTIVATING
00023 } CPhidgetManagerState;
00024 
00025 typedef struct _CPhidgetManager
00026 {
00027         CPhidgetRemoteHandle networkInfo;
00028         int(CCONV *fptrError)(CPhidgetManagerHandle , void *, int, const char *);
00029         void *fptrErrorptr;
00030         int(CCONV *fptrServerConnect)(CPhidgetManagerHandle , void *);
00031         void *fptrServerConnectptr; 
00032         int(CCONV *fptrServerDisconnect)(CPhidgetManagerHandle , void *);
00033         void *fptrServerDisconnectptr;
00034         CThread_mutex_t lock; /* protects status */
00035         int status;
00036         CThread_mutex_t openCloseLock; /* protects open / close */
00037         CPhidgetManagerState state;
00038         CPhidgetList *AttachedPhidgets;
00039         int (CCONV *fptrAttachChange)(CPhidgetHandle phid, void *userPtr);
00040         void *fptrAttachChangeptr;
00041         int (CCONV *fptrDetachChange)(CPhidgetHandle phid, void *userPtr);
00042         void *fptrDetachChangeptr;
00043 } CPhidgetManager;
00044 
00045 typedef struct _CPhidgetManagerList
00046 {
00047         struct _CPhidgetManagerList *next;
00048         CPhidgetManager *phidm;
00049 } CPhidgetManagerList, *CPhidgetManagerListHandle;
00050 
00051 extern CPhidgetManagerListHandle localPhidgetManagers;
00052 extern int ActivePhidgetManagers;
00053 
00054 int CPhidgetManager_poll();
00055 int CPhidgetAttachEvent(CPhidgetHandle phid);
00056 int CPhidgetDetachEvent(CPhidgetHandle phid);
00057 
00058 int CPhidgetManager_areEqual(void *arg1, void *arg2);
00059 void CPhidgetManager_free(void *arg);
00060 #endif
00061 
00066 PHIDGET21_API int CCONV CPhidgetManager_create(CPhidgetManagerHandle *phidm);
00071 PHIDGET21_API int CCONV CPhidgetManager_open(CPhidgetManagerHandle phidm);
00076 PHIDGET21_API int CCONV CPhidgetManager_close(CPhidgetManagerHandle phidm);
00081 PHIDGET21_API int CCONV CPhidgetManager_delete(CPhidgetManagerHandle phidm);
00088 PHIDGET21_API int CCONV CPhidgetManager_set_OnAttach_Handler(CPhidgetManagerHandle phidm, int (CCONV *fptr)(CPhidgetHandle phid, void *userPtr), void *userPtr);
00095 PHIDGET21_API int CCONV CPhidgetManager_set_OnDetach_Handler(CPhidgetManagerHandle phidm, int (CCONV *fptr)(CPhidgetHandle phid, void *userPtr), void *userPtr);
00102 PHIDGET21_API int CCONV CPhidgetManager_getAttachedDevices(CPhidgetManagerHandle phidm, CPhidgetHandle *phidArray[], int *count);
00108 PHIDGET21_API int CCONV CPhidgetManager_freeAttachedDevicesArray(CPhidgetHandle phidArray[]);
00115 PHIDGET21_API int CCONV CPhidgetManager_set_OnError_Handler(CPhidgetManagerHandle phidm, int(CCONV *fptr)(CPhidgetManagerHandle phidm, void *userPtr, int errorCode, const char *errorString), void *userPtr);
00122 PHIDGET21_API int CCONV CPhidgetManager_set_OnServerConnect_Handler(CPhidgetManagerHandle phidm, int (CCONV *fptr)(CPhidgetManagerHandle phidm, void *userPtr), void *userPtr);
00129 PHIDGET21_API int CCONV CPhidgetManager_set_OnServerDisconnect_Handler(CPhidgetManagerHandle phidm, int (CCONV *fptr)(CPhidgetManagerHandle phidm, void *userPtr), void *userPtr);
00135 PHIDGET21_API int CCONV CPhidgetManager_getServerID(CPhidgetManagerHandle phidm, const char **serverID);
00142 PHIDGET21_API int CCONV CPhidgetManager_getServerAddress(CPhidgetManagerHandle phidm, const char **address, int *port);
00148 PHIDGET21_API int CCONV CPhidgetManager_getServerStatus(CPhidgetManagerHandle phidm, int *serverStatus);
00149 
00152 #endif
00153 


pedal_monitor
Author(s): Pedro Mendes
autogenerated on Fri Jun 6 2014 18:37:20