SOAP_FMAC5 int SOAP_FMAC6 __tptz__GetPresets(struct soap* soap,
		struct _tptz__GetPresets *tptz__GetPresets,
		struct _tptz__GetPresetsResponse *tptz__GetPresetsResponse) {
	logInfo("__tptz__GetPresets");
	OnvifPTZAllPresets onvifPTZAllPresets;
	if (!isRetCodeSuccess(getPTZAllPresets(&onvifPTZAllPresets))) {
		logInfo("__tptz__GetPresets getPTZAllPresets failed");
		return getOnvifPTZSoapActionNotSupport(soap, "PTZ GetPresets",
				"getPTZAllPresets failed");
	}
	tptz__GetPresetsResponse->__sizePreset = onvifPTZAllPresets.size;
	if (onvifPTZAllPresets.size > 0) {
		tptz__GetPresetsResponse->Preset =
				(struct tt__PTZPreset*) my_soap_malloc(soap,
						sizeof(struct tt__PTZPreset) * onvifPTZAllPresets.size);
		int i;
		for (i = 0; i < onvifPTZAllPresets.size; i++) {
			getPreset(soap, &(tptz__GetPresetsResponse->Preset[i]),
					&(onvifPTZAllPresets.presets[i]));
		}
	} else
		tptz__GetPresetsResponse->Preset = NULL;
	return SOAP_OK;
}
void test_GetPresets() {
	OnvifPTZAllPresets onvifPTZAllPresets;
	memset(&onvifPTZAllPresets, 0, sizeof(OnvifPTZAllPresets));
	TEST_ASSERT_EQUAL(RET_CODE_SUCCESS, getPTZAllPresets(&onvifPTZAllPresets));
	TEST_ASSERT_EQUAL(9, onvifPTZAllPresets.size);
}