void QTSSModuleUtils::SetupSupportedMethods(QTSS_Object inServer, QTSS_RTSPMethod* inMethodArray, UInt32 inNumMethods) { // Report to the server that this module handles DESCRIBE, SETUP, PLAY, PAUSE, and TEARDOWN UInt32 theNumMethods = 0; (void)QTSS_GetNumValues(inServer, qtssSvrHandledMethods, &theNumMethods); for (UInt32 x = 0; x < inNumMethods; x++) (void)QTSS_SetValue(inServer, qtssSvrHandledMethods, theNumMethods++, (void*)&inMethodArray[x], sizeof(inMethodArray[x])); }
void APITests_DEBUG() { if (0) { qtss_printf("QTSSAdminModule start tests \n"); if (0) { qtss_printf("admin called locked \n"); const int ksleeptime = 15; qtss_printf("sleeping for %d seconds \n",ksleeptime); sleep(ksleeptime); qtss_printf("done sleeping \n"); qtss_printf("QTSS_GlobalUnLock \n"); (void) QTSS_GlobalUnLock(); qtss_printf("again sleeping for %d seconds \n",ksleeptime); sleep(ksleeptime); } if (0) { qtss_printf(" GET VALUE PTR TEST \n"); QTSS_Object *sessionsPtr = NULL; UInt32 paramLen = sizeof(sessionsPtr); UInt32 numValues = 0; QTSS_Error err = 0; err = QTSS_GetNumValues (sServer, qtssSvrClientSessions, &numValues); err = QTSS_GetValuePtr(sServer, qtssSvrClientSessions, 0, (void**)&sessionsPtr, ¶mLen); qtss_printf("Admin Module Num Sessions = %"_U32BITARG_" sessions[0] = %"_S32BITARG_" err = %"_S32BITARG_" paramLen =%"_U32BITARG_"\n", numValues, (SInt32) *sessionsPtr,err,paramLen); UInt32 numAttr = 0; if (sessionsPtr) { err = QTSS_GetNumAttributes (*sessionsPtr, &numAttr); qtss_printf("Admin Module Num attributes = %"_U32BITARG_" sessions[0] = %"_S32BITARG_" err = %"_S32BITARG_"\n", numAttr, (SInt32) *sessionsPtr,err); QTSS_Object theAttributeInfo; char nameBuff[128]; UInt32 len = 127; for (UInt32 i = 0; i < numAttr; i++) { err = QTSS_GetAttrInfoByIndex(*sessionsPtr, i, &theAttributeInfo); nameBuff[0] = 0;len = 127; err = QTSS_GetValue (theAttributeInfo, qtssAttrName,0, nameBuff,&len); nameBuff[len] = 0; qtss_printf("found %s \n",nameBuff); } } } if (0) { qtss_printf(" GET VALUE TEST \n"); QTSS_Object sessions = NULL; UInt32 paramLen = sizeof(sessions); UInt32 numValues = 0; QTSS_Error err = 0; err = QTSS_GetNumValues (sServer, qtssSvrClientSessions, &numValues); err = QTSS_GetValue(sServer, qtssSvrClientSessions, 0, (void*)&sessions, ¶mLen); qtss_printf("Admin Module Num Sessions = %"_U32BITARG_" sessions[0] = %"_S32BITARG_" err = %"_S32BITARG_" paramLen = %"_U32BITARG_"\n", numValues, (SInt32) sessions,err, paramLen); if (sessions) { UInt32 numAttr = 0; err = QTSS_GetNumAttributes (sessions, &numAttr); qtss_printf("Admin Module Num attributes = %"_U32BITARG_" sessions[0] = %"_S32BITARG_" err = %"_S32BITARG_"\n", numAttr,(SInt32) sessions,err); QTSS_Object theAttributeInfo; char nameBuff[128]; UInt32 len = 127; for (UInt32 i = 0; i < numAttr; i++) { err = QTSS_GetAttrInfoByIndex(sessions, i, &theAttributeInfo); nameBuff[0] = 0;len = 127; err = QTSS_GetValue (theAttributeInfo, qtssAttrName,0, nameBuff,&len); nameBuff[len] = 0; qtss_printf("found %s \n",nameBuff); } } } if (0) { qtss_printf("----------------- Start test ----------------- \n"); qtss_printf(" GET indexed pref TEST \n"); QTSS_Error err = 0; UInt32 numAttr = 1; err = QTSS_GetNumAttributes (sModulePrefs, &numAttr); qtss_printf("Admin Module Num preference attributes = %"_U32BITARG_" err = %"_S32BITARG_"\n", numAttr, err); QTSS_Object theAttributeInfo; char valueBuff[512]; char nameBuff[128]; QTSS_AttributeID theID; UInt32 len = 127; UInt32 i = 0; qtss_printf("first pass over preferences\n"); for ( i = 0; i < numAttr; i++) { err = QTSS_GetAttrInfoByIndex(sModulePrefs, i, &theAttributeInfo); nameBuff[0] = 0;len = 127; err = QTSS_GetValue (theAttributeInfo, qtssAttrName,0, nameBuff,&len); nameBuff[len]=0; theID = qtssIllegalAttrID; len = sizeof(theID); err = QTSS_GetValue (theAttributeInfo, qtssAttrID,0, &theID,&len); qtss_printf("found preference=%s \n",nameBuff); } valueBuff[0] = 0;len = 512; err = QTSS_GetValue (sModulePrefs, theID,0, valueBuff,&len);valueBuff[len] = 0; qtss_printf("Admin Module QTSS_GetValue name = %s id = %"_S32BITARG_" value=%s err = %"_S32BITARG_"\n", nameBuff,theID, valueBuff, err); err = QTSS_SetValue (sModulePrefs,theID,0, valueBuff,len); qtss_printf("Admin Module QTSS_SetValue name = %s id = %"_S32BITARG_" value=%s err = %"_S32BITARG_"\n", nameBuff,theID, valueBuff, err); { QTSS_ServiceID id; (void) QTSS_IDForService(QTSS_REREAD_PREFS_SERVICE, &id); (void) QTSS_DoService(id, NULL); } valueBuff[0] = 0;len = 512; err = QTSS_GetValue (sModulePrefs, theID,0, valueBuff,&len);valueBuff[len] = 0; qtss_printf("Admin Module QTSS_GetValue name = %s id = %"_S32BITARG_" value=%s err = %"_S32BITARG_"\n", nameBuff,theID, valueBuff, err); err = QTSS_SetValue (sModulePrefs,theID,0, valueBuff,len); qtss_printf("Admin Module QTSS_SetValue name = %s id = %"_S32BITARG_" value=%s err = %"_S32BITARG_"\n", nameBuff,theID, valueBuff, err); qtss_printf("second pass over preferences\n"); for ( i = 0; i < numAttr; i++) { err = QTSS_GetAttrInfoByIndex(sModulePrefs, i, &theAttributeInfo); nameBuff[0] = 0;len = 127; err = QTSS_GetValue (theAttributeInfo, qtssAttrName,0, nameBuff,&len); nameBuff[len]=0; theID = qtssIllegalAttrID; len = sizeof(theID); err = QTSS_GetValue (theAttributeInfo, qtssAttrID,0, &theID,&len); qtss_printf("found preference=%s \n",nameBuff); } qtss_printf("----------------- Done test ----------------- \n"); } } }