From bc4ce30725a54b8c14eeea908ad3253d5c89a850 Mon Sep 17 00:00:00 2001 From: sdk-team Date: Thu, 8 Apr 2021 06:21:50 +0000 Subject: [PATCH] Release DetectVideoIPCObject. --- CHANGELOG | 3 + VERSION | 2 +- .../2019-12-30/ClassifyVehicleInsurance.xml | 1 + objectdet/2019-12-30/DetectIPCObject.xml | 1 + objectdet/2019-12-30/DetectMainBody.xml | 1 + objectdet/2019-12-30/DetectObject.xml | 1 + .../2019-12-30/DetectTransparentImage.xml | 1 + objectdet/2019-12-30/DetectVehicle.xml | 1 + .../2019-12-30/DetectVehicleICongestion.xml | 1 + .../DetectVehicleIllegalParking.xml | 1 + objectdet/2019-12-30/DetectVideoIPCObject.xml | 1 + objectdet/2019-12-30/DetectWhiteBaseImage.xml | 1 + .../2019-12-30/GenerateVehicleRepairPlan.xml | 1 + objectdet/2019-12-30/GetAsyncJobResult.xml | 1 + objectdet/2019-12-30/GetVehicleRepairPlan.xml | 1 + .../2019-12-30/RecognizeVehicleDamage.xml | 1 + .../2019-12-30/RecognizeVehicleDashboard.xml | 1 + .../2019-12-30/RecognizeVehicleParts.xml | 1 + objectdet/CMakeLists.txt | 8 ++ .../alibabacloud/objectdet/ObjectdetClient.h | 16 ++++ .../objectdet/model/DetectIPCObjectResult.h | 1 + .../model/DetectVideoIPCObjectRequest.h | 51 ++++++++++ .../model/DetectVideoIPCObjectResult.h | 75 +++++++++++++++ .../model/GetAsyncJobResultRequest.h | 51 ++++++++++ .../objectdet/model/GetAsyncJobResultResult.h | 59 ++++++++++++ objectdet/src/ObjectdetClient.cc | 72 ++++++++++++++ objectdet/src/model/DetectIPCObjectResult.cc | 2 + .../src/model/DetectVideoIPCObjectRequest.cc | 51 ++++++++++ .../src/model/DetectVideoIPCObjectResult.cc | 94 +++++++++++++++++++ .../src/model/GetAsyncJobResultRequest.cc | 51 ++++++++++ .../src/model/GetAsyncJobResultResult.cc | 60 ++++++++++++ objectdet/version-2019-12-30.xml | 1 + 32 files changed, 612 insertions(+), 1 deletion(-) create mode 100644 objectdet/2019-12-30/ClassifyVehicleInsurance.xml create mode 100644 objectdet/2019-12-30/DetectIPCObject.xml create mode 100644 objectdet/2019-12-30/DetectMainBody.xml create mode 100644 objectdet/2019-12-30/DetectObject.xml create mode 100644 objectdet/2019-12-30/DetectTransparentImage.xml create mode 100644 objectdet/2019-12-30/DetectVehicle.xml create mode 100644 objectdet/2019-12-30/DetectVehicleICongestion.xml create mode 100644 objectdet/2019-12-30/DetectVehicleIllegalParking.xml create mode 100644 objectdet/2019-12-30/DetectVideoIPCObject.xml create mode 100644 objectdet/2019-12-30/DetectWhiteBaseImage.xml create mode 100644 objectdet/2019-12-30/GenerateVehicleRepairPlan.xml create mode 100644 objectdet/2019-12-30/GetAsyncJobResult.xml create mode 100644 objectdet/2019-12-30/GetVehicleRepairPlan.xml create mode 100644 objectdet/2019-12-30/RecognizeVehicleDamage.xml create mode 100644 objectdet/2019-12-30/RecognizeVehicleDashboard.xml create mode 100644 objectdet/2019-12-30/RecognizeVehicleParts.xml create mode 100644 objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectRequest.h create mode 100644 objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectResult.h create mode 100644 objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultRequest.h create mode 100644 objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultResult.h create mode 100644 objectdet/src/model/DetectVideoIPCObjectRequest.cc create mode 100644 objectdet/src/model/DetectVideoIPCObjectResult.cc create mode 100644 objectdet/src/model/GetAsyncJobResultRequest.cc create mode 100644 objectdet/src/model/GetAsyncJobResultResult.cc create mode 100644 objectdet/version-2019-12-30.xml diff --git a/CHANGELOG b/CHANGELOG index 74bd76d12..8cdc78c1a 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,6 @@ +2021-04-08 Version: 1.36.670 +- Release DetectVideoIPCObject. + 2021-04-06 Version: 1.36.669 - Release MonitorExamination. diff --git a/VERSION b/VERSION index 172aa948e..be94fbc8c 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.36.669 \ No newline at end of file +1.36.670 \ No newline at end of file diff --git a/objectdet/2019-12-30/ClassifyVehicleInsurance.xml b/objectdet/2019-12-30/ClassifyVehicleInsurance.xml new file mode 100644 index 000000000..6756ae021 --- /dev/null +++ b/objectdet/2019-12-30/ClassifyVehicleInsurance.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectIPCObject.xml b/objectdet/2019-12-30/DetectIPCObject.xml new file mode 100644 index 000000000..441b2fed4 --- /dev/null +++ b/objectdet/2019-12-30/DetectIPCObject.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectMainBody.xml b/objectdet/2019-12-30/DetectMainBody.xml new file mode 100644 index 000000000..e6327e7a6 --- /dev/null +++ b/objectdet/2019-12-30/DetectMainBody.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectObject.xml b/objectdet/2019-12-30/DetectObject.xml new file mode 100644 index 000000000..6de557d9b --- /dev/null +++ b/objectdet/2019-12-30/DetectObject.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectTransparentImage.xml b/objectdet/2019-12-30/DetectTransparentImage.xml new file mode 100644 index 000000000..c00090577 --- /dev/null +++ b/objectdet/2019-12-30/DetectTransparentImage.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectVehicle.xml b/objectdet/2019-12-30/DetectVehicle.xml new file mode 100644 index 000000000..ec0051d95 --- /dev/null +++ b/objectdet/2019-12-30/DetectVehicle.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectVehicleICongestion.xml b/objectdet/2019-12-30/DetectVehicleICongestion.xml new file mode 100644 index 000000000..deb8ae866 --- /dev/null +++ b/objectdet/2019-12-30/DetectVehicleICongestion.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectVehicleIllegalParking.xml b/objectdet/2019-12-30/DetectVehicleIllegalParking.xml new file mode 100644 index 000000000..b396750fc --- /dev/null +++ b/objectdet/2019-12-30/DetectVehicleIllegalParking.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectVideoIPCObject.xml b/objectdet/2019-12-30/DetectVideoIPCObject.xml new file mode 100644 index 000000000..ee169ff03 --- /dev/null +++ b/objectdet/2019-12-30/DetectVideoIPCObject.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/DetectWhiteBaseImage.xml b/objectdet/2019-12-30/DetectWhiteBaseImage.xml new file mode 100644 index 000000000..e191050ec --- /dev/null +++ b/objectdet/2019-12-30/DetectWhiteBaseImage.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/GenerateVehicleRepairPlan.xml b/objectdet/2019-12-30/GenerateVehicleRepairPlan.xml new file mode 100644 index 000000000..8424b1ead --- /dev/null +++ b/objectdet/2019-12-30/GenerateVehicleRepairPlan.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/GetAsyncJobResult.xml b/objectdet/2019-12-30/GetAsyncJobResult.xml new file mode 100644 index 000000000..0a1def641 --- /dev/null +++ b/objectdet/2019-12-30/GetAsyncJobResult.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/GetVehicleRepairPlan.xml b/objectdet/2019-12-30/GetVehicleRepairPlan.xml new file mode 100644 index 000000000..a3a8bc854 --- /dev/null +++ b/objectdet/2019-12-30/GetVehicleRepairPlan.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/RecognizeVehicleDamage.xml b/objectdet/2019-12-30/RecognizeVehicleDamage.xml new file mode 100644 index 000000000..592f2e5fa --- /dev/null +++ b/objectdet/2019-12-30/RecognizeVehicleDamage.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/RecognizeVehicleDashboard.xml b/objectdet/2019-12-30/RecognizeVehicleDashboard.xml new file mode 100644 index 000000000..c79516bcf --- /dev/null +++ b/objectdet/2019-12-30/RecognizeVehicleDashboard.xml @@ -0,0 +1 @@ + diff --git a/objectdet/2019-12-30/RecognizeVehicleParts.xml b/objectdet/2019-12-30/RecognizeVehicleParts.xml new file mode 100644 index 000000000..3e111ac73 --- /dev/null +++ b/objectdet/2019-12-30/RecognizeVehicleParts.xml @@ -0,0 +1 @@ + diff --git a/objectdet/CMakeLists.txt b/objectdet/CMakeLists.txt index b016a8c0a..e86d5b7d8 100644 --- a/objectdet/CMakeLists.txt +++ b/objectdet/CMakeLists.txt @@ -37,10 +37,14 @@ set(objectdet_public_header_model include/alibabacloud/objectdet/model/DetectVehicleICongestionResult.h include/alibabacloud/objectdet/model/DetectVehicleIllegalParkingRequest.h include/alibabacloud/objectdet/model/DetectVehicleIllegalParkingResult.h + include/alibabacloud/objectdet/model/DetectVideoIPCObjectRequest.h + include/alibabacloud/objectdet/model/DetectVideoIPCObjectResult.h include/alibabacloud/objectdet/model/DetectWhiteBaseImageRequest.h include/alibabacloud/objectdet/model/DetectWhiteBaseImageResult.h include/alibabacloud/objectdet/model/GenerateVehicleRepairPlanRequest.h include/alibabacloud/objectdet/model/GenerateVehicleRepairPlanResult.h + include/alibabacloud/objectdet/model/GetAsyncJobResultRequest.h + include/alibabacloud/objectdet/model/GetAsyncJobResultResult.h include/alibabacloud/objectdet/model/GetVehicleRepairPlanRequest.h include/alibabacloud/objectdet/model/GetVehicleRepairPlanResult.h include/alibabacloud/objectdet/model/RecognizeVehicleDamageRequest.h @@ -68,10 +72,14 @@ set(objectdet_src src/model/DetectVehicleICongestionResult.cc src/model/DetectVehicleIllegalParkingRequest.cc src/model/DetectVehicleIllegalParkingResult.cc + src/model/DetectVideoIPCObjectRequest.cc + src/model/DetectVideoIPCObjectResult.cc src/model/DetectWhiteBaseImageRequest.cc src/model/DetectWhiteBaseImageResult.cc src/model/GenerateVehicleRepairPlanRequest.cc src/model/GenerateVehicleRepairPlanResult.cc + src/model/GetAsyncJobResultRequest.cc + src/model/GetAsyncJobResultResult.cc src/model/GetVehicleRepairPlanRequest.cc src/model/GetVehicleRepairPlanResult.cc src/model/RecognizeVehicleDamageRequest.cc diff --git a/objectdet/include/alibabacloud/objectdet/ObjectdetClient.h b/objectdet/include/alibabacloud/objectdet/ObjectdetClient.h index 5ae02b33f..552c4e4e0 100644 --- a/objectdet/include/alibabacloud/objectdet/ObjectdetClient.h +++ b/objectdet/include/alibabacloud/objectdet/ObjectdetClient.h @@ -38,10 +38,14 @@ #include "model/DetectVehicleICongestionResult.h" #include "model/DetectVehicleIllegalParkingRequest.h" #include "model/DetectVehicleIllegalParkingResult.h" +#include "model/DetectVideoIPCObjectRequest.h" +#include "model/DetectVideoIPCObjectResult.h" #include "model/DetectWhiteBaseImageRequest.h" #include "model/DetectWhiteBaseImageResult.h" #include "model/GenerateVehicleRepairPlanRequest.h" #include "model/GenerateVehicleRepairPlanResult.h" +#include "model/GetAsyncJobResultRequest.h" +#include "model/GetAsyncJobResultResult.h" #include "model/GetVehicleRepairPlanRequest.h" #include "model/GetVehicleRepairPlanResult.h" #include "model/RecognizeVehicleDamageRequest.h" @@ -83,12 +87,18 @@ namespace AlibabaCloud typedef Outcome DetectVehicleIllegalParkingOutcome; typedef std::future DetectVehicleIllegalParkingOutcomeCallable; typedef std::function&)> DetectVehicleIllegalParkingAsyncHandler; + typedef Outcome DetectVideoIPCObjectOutcome; + typedef std::future DetectVideoIPCObjectOutcomeCallable; + typedef std::function&)> DetectVideoIPCObjectAsyncHandler; typedef Outcome DetectWhiteBaseImageOutcome; typedef std::future DetectWhiteBaseImageOutcomeCallable; typedef std::function&)> DetectWhiteBaseImageAsyncHandler; typedef Outcome GenerateVehicleRepairPlanOutcome; typedef std::future GenerateVehicleRepairPlanOutcomeCallable; typedef std::function&)> GenerateVehicleRepairPlanAsyncHandler; + typedef Outcome GetAsyncJobResultOutcome; + typedef std::future GetAsyncJobResultOutcomeCallable; + typedef std::function&)> GetAsyncJobResultAsyncHandler; typedef Outcome GetVehicleRepairPlanOutcome; typedef std::future GetVehicleRepairPlanOutcomeCallable; typedef std::function&)> GetVehicleRepairPlanAsyncHandler; @@ -130,12 +140,18 @@ namespace AlibabaCloud DetectVehicleIllegalParkingOutcome detectVehicleIllegalParking(const Model::DetectVehicleIllegalParkingRequest &request)const; void detectVehicleIllegalParkingAsync(const Model::DetectVehicleIllegalParkingRequest& request, const DetectVehicleIllegalParkingAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; DetectVehicleIllegalParkingOutcomeCallable detectVehicleIllegalParkingCallable(const Model::DetectVehicleIllegalParkingRequest& request) const; + DetectVideoIPCObjectOutcome detectVideoIPCObject(const Model::DetectVideoIPCObjectRequest &request)const; + void detectVideoIPCObjectAsync(const Model::DetectVideoIPCObjectRequest& request, const DetectVideoIPCObjectAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; + DetectVideoIPCObjectOutcomeCallable detectVideoIPCObjectCallable(const Model::DetectVideoIPCObjectRequest& request) const; DetectWhiteBaseImageOutcome detectWhiteBaseImage(const Model::DetectWhiteBaseImageRequest &request)const; void detectWhiteBaseImageAsync(const Model::DetectWhiteBaseImageRequest& request, const DetectWhiteBaseImageAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; DetectWhiteBaseImageOutcomeCallable detectWhiteBaseImageCallable(const Model::DetectWhiteBaseImageRequest& request) const; GenerateVehicleRepairPlanOutcome generateVehicleRepairPlan(const Model::GenerateVehicleRepairPlanRequest &request)const; void generateVehicleRepairPlanAsync(const Model::GenerateVehicleRepairPlanRequest& request, const GenerateVehicleRepairPlanAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; GenerateVehicleRepairPlanOutcomeCallable generateVehicleRepairPlanCallable(const Model::GenerateVehicleRepairPlanRequest& request) const; + GetAsyncJobResultOutcome getAsyncJobResult(const Model::GetAsyncJobResultRequest &request)const; + void getAsyncJobResultAsync(const Model::GetAsyncJobResultRequest& request, const GetAsyncJobResultAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; + GetAsyncJobResultOutcomeCallable getAsyncJobResultCallable(const Model::GetAsyncJobResultRequest& request) const; GetVehicleRepairPlanOutcome getVehicleRepairPlan(const Model::GetVehicleRepairPlanRequest &request)const; void getVehicleRepairPlanAsync(const Model::GetVehicleRepairPlanRequest& request, const GetVehicleRepairPlanAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; GetVehicleRepairPlanOutcomeCallable getVehicleRepairPlanCallable(const Model::GetVehicleRepairPlanRequest& request) const; diff --git a/objectdet/include/alibabacloud/objectdet/model/DetectIPCObjectResult.h b/objectdet/include/alibabacloud/objectdet/model/DetectIPCObjectResult.h index e7dec2ac5..b5690a173 100644 --- a/objectdet/include/alibabacloud/objectdet/model/DetectIPCObjectResult.h +++ b/objectdet/include/alibabacloud/objectdet/model/DetectIPCObjectResult.h @@ -36,6 +36,7 @@ namespace AlibabaCloud { struct Element { + float targetRate; float score; std::string type; std::vector box; diff --git a/objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectRequest.h b/objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectRequest.h new file mode 100644 index 000000000..78353cb83 --- /dev/null +++ b/objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectRequest.h @@ -0,0 +1,51 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_OBJECTDET_MODEL_DETECTVIDEOIPCOBJECTREQUEST_H_ +#define ALIBABACLOUD_OBJECTDET_MODEL_DETECTVIDEOIPCOBJECTREQUEST_H_ + +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Objectdet + { + namespace Model + { + class ALIBABACLOUD_OBJECTDET_EXPORT DetectVideoIPCObjectRequest : public RpcServiceRequest + { + + public: + DetectVideoIPCObjectRequest(); + ~DetectVideoIPCObjectRequest(); + + bool getAsync()const; + void setAsync(bool async); + std::string getVideoURL()const; + void setVideoURL(const std::string& videoURL); + + private: + bool async_; + std::string videoURL_; + + }; + } + } +} +#endif // !ALIBABACLOUD_OBJECTDET_MODEL_DETECTVIDEOIPCOBJECTREQUEST_H_ \ No newline at end of file diff --git a/objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectResult.h b/objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectResult.h new file mode 100644 index 000000000..74ef83588 --- /dev/null +++ b/objectdet/include/alibabacloud/objectdet/model/DetectVideoIPCObjectResult.h @@ -0,0 +1,75 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_OBJECTDET_MODEL_DETECTVIDEOIPCOBJECTRESULT_H_ +#define ALIBABACLOUD_OBJECTDET_MODEL_DETECTVIDEOIPCOBJECTRESULT_H_ + +#include +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Objectdet + { + namespace Model + { + class ALIBABACLOUD_OBJECTDET_EXPORT DetectVideoIPCObjectResult : public ServiceResult + { + public: + struct Data + { + struct Frame + { + struct ElementsItem + { + float score; + std::string type; + long x; + long y; + long height; + long width; + }; + long time; + std::vector elements; + }; + std::vector frames; + long height; + long width; + }; + + + DetectVideoIPCObjectResult(); + explicit DetectVideoIPCObjectResult(const std::string &payload); + ~DetectVideoIPCObjectResult(); + std::string getMessage()const; + Data getData()const; + std::string getCode()const; + + protected: + void parse(const std::string &payload); + private: + std::string message_; + Data data_; + std::string code_; + + }; + } + } +} +#endif // !ALIBABACLOUD_OBJECTDET_MODEL_DETECTVIDEOIPCOBJECTRESULT_H_ \ No newline at end of file diff --git a/objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultRequest.h b/objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultRequest.h new file mode 100644 index 000000000..5f61b311c --- /dev/null +++ b/objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultRequest.h @@ -0,0 +1,51 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_OBJECTDET_MODEL_GETASYNCJOBRESULTREQUEST_H_ +#define ALIBABACLOUD_OBJECTDET_MODEL_GETASYNCJOBRESULTREQUEST_H_ + +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Objectdet + { + namespace Model + { + class ALIBABACLOUD_OBJECTDET_EXPORT GetAsyncJobResultRequest : public RpcServiceRequest + { + + public: + GetAsyncJobResultRequest(); + ~GetAsyncJobResultRequest(); + + std::string getJobId()const; + void setJobId(const std::string& jobId); + bool getAsync()const; + void setAsync(bool async); + + private: + std::string jobId_; + bool async_; + + }; + } + } +} +#endif // !ALIBABACLOUD_OBJECTDET_MODEL_GETASYNCJOBRESULTREQUEST_H_ \ No newline at end of file diff --git a/objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultResult.h b/objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultResult.h new file mode 100644 index 000000000..e14bd3305 --- /dev/null +++ b/objectdet/include/alibabacloud/objectdet/model/GetAsyncJobResultResult.h @@ -0,0 +1,59 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_OBJECTDET_MODEL_GETASYNCJOBRESULTRESULT_H_ +#define ALIBABACLOUD_OBJECTDET_MODEL_GETASYNCJOBRESULTRESULT_H_ + +#include +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Objectdet + { + namespace Model + { + class ALIBABACLOUD_OBJECTDET_EXPORT GetAsyncJobResultResult : public ServiceResult + { + public: + struct Data + { + std::string status; + std::string errorCode; + std::string errorMessage; + std::string jobId; + std::string result; + }; + + + GetAsyncJobResultResult(); + explicit GetAsyncJobResultResult(const std::string &payload); + ~GetAsyncJobResultResult(); + Data getData()const; + + protected: + void parse(const std::string &payload); + private: + Data data_; + + }; + } + } +} +#endif // !ALIBABACLOUD_OBJECTDET_MODEL_GETASYNCJOBRESULTRESULT_H_ \ No newline at end of file diff --git a/objectdet/src/ObjectdetClient.cc b/objectdet/src/ObjectdetClient.cc index 123cb64f5..5cd8971e1 100644 --- a/objectdet/src/ObjectdetClient.cc +++ b/objectdet/src/ObjectdetClient.cc @@ -339,6 +339,42 @@ ObjectdetClient::DetectVehicleIllegalParkingOutcomeCallable ObjectdetClient::det return task->get_future(); } +ObjectdetClient::DetectVideoIPCObjectOutcome ObjectdetClient::detectVideoIPCObject(const DetectVideoIPCObjectRequest &request) const +{ + auto endpointOutcome = endpointProvider_->getEndpoint(); + if (!endpointOutcome.isSuccess()) + return DetectVideoIPCObjectOutcome(endpointOutcome.error()); + + auto outcome = makeRequest(endpointOutcome.result(), request); + + if (outcome.isSuccess()) + return DetectVideoIPCObjectOutcome(DetectVideoIPCObjectResult(outcome.result())); + else + return DetectVideoIPCObjectOutcome(outcome.error()); +} + +void ObjectdetClient::detectVideoIPCObjectAsync(const DetectVideoIPCObjectRequest& request, const DetectVideoIPCObjectAsyncHandler& handler, const std::shared_ptr& context) const +{ + auto fn = [this, request, handler, context]() + { + handler(this, request, detectVideoIPCObject(request), context); + }; + + asyncExecute(new Runnable(fn)); +} + +ObjectdetClient::DetectVideoIPCObjectOutcomeCallable ObjectdetClient::detectVideoIPCObjectCallable(const DetectVideoIPCObjectRequest &request) const +{ + auto task = std::make_shared>( + [this, request]() + { + return this->detectVideoIPCObject(request); + }); + + asyncExecute(new Runnable([task]() { (*task)(); })); + return task->get_future(); +} + ObjectdetClient::DetectWhiteBaseImageOutcome ObjectdetClient::detectWhiteBaseImage(const DetectWhiteBaseImageRequest &request) const { auto endpointOutcome = endpointProvider_->getEndpoint(); @@ -411,6 +447,42 @@ ObjectdetClient::GenerateVehicleRepairPlanOutcomeCallable ObjectdetClient::gener return task->get_future(); } +ObjectdetClient::GetAsyncJobResultOutcome ObjectdetClient::getAsyncJobResult(const GetAsyncJobResultRequest &request) const +{ + auto endpointOutcome = endpointProvider_->getEndpoint(); + if (!endpointOutcome.isSuccess()) + return GetAsyncJobResultOutcome(endpointOutcome.error()); + + auto outcome = makeRequest(endpointOutcome.result(), request); + + if (outcome.isSuccess()) + return GetAsyncJobResultOutcome(GetAsyncJobResultResult(outcome.result())); + else + return GetAsyncJobResultOutcome(outcome.error()); +} + +void ObjectdetClient::getAsyncJobResultAsync(const GetAsyncJobResultRequest& request, const GetAsyncJobResultAsyncHandler& handler, const std::shared_ptr& context) const +{ + auto fn = [this, request, handler, context]() + { + handler(this, request, getAsyncJobResult(request), context); + }; + + asyncExecute(new Runnable(fn)); +} + +ObjectdetClient::GetAsyncJobResultOutcomeCallable ObjectdetClient::getAsyncJobResultCallable(const GetAsyncJobResultRequest &request) const +{ + auto task = std::make_shared>( + [this, request]() + { + return this->getAsyncJobResult(request); + }); + + asyncExecute(new Runnable([task]() { (*task)(); })); + return task->get_future(); +} + ObjectdetClient::GetVehicleRepairPlanOutcome ObjectdetClient::getVehicleRepairPlan(const GetVehicleRepairPlanRequest &request) const { auto endpointOutcome = endpointProvider_->getEndpoint(); diff --git a/objectdet/src/model/DetectIPCObjectResult.cc b/objectdet/src/model/DetectIPCObjectResult.cc index 303b88364..78dc9f04a 100644 --- a/objectdet/src/model/DetectIPCObjectResult.cc +++ b/objectdet/src/model/DetectIPCObjectResult.cc @@ -48,6 +48,8 @@ void DetectIPCObjectResult::parse(const std::string &payload) for (auto dataNodeElementsElement : allElementsNode) { Data::Element elementObject; + if(!dataNodeElementsElement["TargetRate"].isNull()) + elementObject.targetRate = std::stof(dataNodeElementsElement["TargetRate"].asString()); if(!dataNodeElementsElement["Score"].isNull()) elementObject.score = std::stof(dataNodeElementsElement["Score"].asString()); if(!dataNodeElementsElement["Type"].isNull()) diff --git a/objectdet/src/model/DetectVideoIPCObjectRequest.cc b/objectdet/src/model/DetectVideoIPCObjectRequest.cc new file mode 100644 index 000000000..98cc4c2a8 --- /dev/null +++ b/objectdet/src/model/DetectVideoIPCObjectRequest.cc @@ -0,0 +1,51 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +using AlibabaCloud::Objectdet::Model::DetectVideoIPCObjectRequest; + +DetectVideoIPCObjectRequest::DetectVideoIPCObjectRequest() : + RpcServiceRequest("objectdet", "2019-12-30", "DetectVideoIPCObject") +{ + setMethod(HttpRequest::Method::Post); +} + +DetectVideoIPCObjectRequest::~DetectVideoIPCObjectRequest() +{} + +bool DetectVideoIPCObjectRequest::getAsync()const +{ + return async_; +} + +void DetectVideoIPCObjectRequest::setAsync(bool async) +{ + async_ = async; + setBodyParameter("Async", async ? "true" : "false"); +} + +std::string DetectVideoIPCObjectRequest::getVideoURL()const +{ + return videoURL_; +} + +void DetectVideoIPCObjectRequest::setVideoURL(const std::string& videoURL) +{ + videoURL_ = videoURL; + setBodyParameter("VideoURL", videoURL); +} + diff --git a/objectdet/src/model/DetectVideoIPCObjectResult.cc b/objectdet/src/model/DetectVideoIPCObjectResult.cc new file mode 100644 index 000000000..bcdb5b362 --- /dev/null +++ b/objectdet/src/model/DetectVideoIPCObjectResult.cc @@ -0,0 +1,94 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include + +using namespace AlibabaCloud::Objectdet; +using namespace AlibabaCloud::Objectdet::Model; + +DetectVideoIPCObjectResult::DetectVideoIPCObjectResult() : + ServiceResult() +{} + +DetectVideoIPCObjectResult::DetectVideoIPCObjectResult(const std::string &payload) : + ServiceResult() +{ + parse(payload); +} + +DetectVideoIPCObjectResult::~DetectVideoIPCObjectResult() +{} + +void DetectVideoIPCObjectResult::parse(const std::string &payload) +{ + Json::Reader reader; + Json::Value value; + reader.parse(payload, value); + setRequestId(value["RequestId"].asString()); + auto dataNode = value["Data"]; + if(!dataNode["Height"].isNull()) + data_.height = std::stol(dataNode["Height"].asString()); + if(!dataNode["Width"].isNull()) + data_.width = std::stol(dataNode["Width"].asString()); + auto allFramesNode = dataNode["Frames"]["Frame"]; + for (auto dataNodeFramesFrame : allFramesNode) + { + Data::Frame frameObject; + if(!dataNodeFramesFrame["Time"].isNull()) + frameObject.time = std::stol(dataNodeFramesFrame["Time"].asString()); + auto allElementsNode = dataNodeFramesFrame["Elements"]["elementsItem"]; + for (auto dataNodeFramesFrameElementselementsItem : allElementsNode) + { + Data::Frame::ElementsItem elementsObject; + if(!dataNodeFramesFrameElementselementsItem["Score"].isNull()) + elementsObject.score = std::stof(dataNodeFramesFrameElementselementsItem["Score"].asString()); + if(!dataNodeFramesFrameElementselementsItem["Type"].isNull()) + elementsObject.type = dataNodeFramesFrameElementselementsItem["Type"].asString(); + if(!dataNodeFramesFrameElementselementsItem["X"].isNull()) + elementsObject.x = std::stol(dataNodeFramesFrameElementselementsItem["X"].asString()); + if(!dataNodeFramesFrameElementselementsItem["Y"].isNull()) + elementsObject.y = std::stol(dataNodeFramesFrameElementselementsItem["Y"].asString()); + if(!dataNodeFramesFrameElementselementsItem["Height"].isNull()) + elementsObject.height = std::stol(dataNodeFramesFrameElementselementsItem["Height"].asString()); + if(!dataNodeFramesFrameElementselementsItem["Width"].isNull()) + elementsObject.width = std::stol(dataNodeFramesFrameElementselementsItem["Width"].asString()); + frameObject.elements.push_back(elementsObject); + } + data_.frames.push_back(frameObject); + } + if(!value["Message"].isNull()) + message_ = value["Message"].asString(); + if(!value["Code"].isNull()) + code_ = value["Code"].asString(); + +} + +std::string DetectVideoIPCObjectResult::getMessage()const +{ + return message_; +} + +DetectVideoIPCObjectResult::Data DetectVideoIPCObjectResult::getData()const +{ + return data_; +} + +std::string DetectVideoIPCObjectResult::getCode()const +{ + return code_; +} + diff --git a/objectdet/src/model/GetAsyncJobResultRequest.cc b/objectdet/src/model/GetAsyncJobResultRequest.cc new file mode 100644 index 000000000..4f030bac3 --- /dev/null +++ b/objectdet/src/model/GetAsyncJobResultRequest.cc @@ -0,0 +1,51 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +using AlibabaCloud::Objectdet::Model::GetAsyncJobResultRequest; + +GetAsyncJobResultRequest::GetAsyncJobResultRequest() : + RpcServiceRequest("objectdet", "2019-12-30", "GetAsyncJobResult") +{ + setMethod(HttpRequest::Method::Post); +} + +GetAsyncJobResultRequest::~GetAsyncJobResultRequest() +{} + +std::string GetAsyncJobResultRequest::getJobId()const +{ + return jobId_; +} + +void GetAsyncJobResultRequest::setJobId(const std::string& jobId) +{ + jobId_ = jobId; + setBodyParameter("JobId", jobId); +} + +bool GetAsyncJobResultRequest::getAsync()const +{ + return async_; +} + +void GetAsyncJobResultRequest::setAsync(bool async) +{ + async_ = async; + setBodyParameter("Async", async ? "true" : "false"); +} + diff --git a/objectdet/src/model/GetAsyncJobResultResult.cc b/objectdet/src/model/GetAsyncJobResultResult.cc new file mode 100644 index 000000000..82609924e --- /dev/null +++ b/objectdet/src/model/GetAsyncJobResultResult.cc @@ -0,0 +1,60 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include + +using namespace AlibabaCloud::Objectdet; +using namespace AlibabaCloud::Objectdet::Model; + +GetAsyncJobResultResult::GetAsyncJobResultResult() : + ServiceResult() +{} + +GetAsyncJobResultResult::GetAsyncJobResultResult(const std::string &payload) : + ServiceResult() +{ + parse(payload); +} + +GetAsyncJobResultResult::~GetAsyncJobResultResult() +{} + +void GetAsyncJobResultResult::parse(const std::string &payload) +{ + Json::Reader reader; + Json::Value value; + reader.parse(payload, value); + setRequestId(value["RequestId"].asString()); + auto dataNode = value["Data"]; + if(!dataNode["Status"].isNull()) + data_.status = dataNode["Status"].asString(); + if(!dataNode["ErrorCode"].isNull()) + data_.errorCode = dataNode["ErrorCode"].asString(); + if(!dataNode["ErrorMessage"].isNull()) + data_.errorMessage = dataNode["ErrorMessage"].asString(); + if(!dataNode["JobId"].isNull()) + data_.jobId = dataNode["JobId"].asString(); + if(!dataNode["Result"].isNull()) + data_.result = dataNode["Result"].asString(); + +} + +GetAsyncJobResultResult::Data GetAsyncJobResultResult::getData()const +{ + return data_; +} + diff --git a/objectdet/version-2019-12-30.xml b/objectdet/version-2019-12-30.xml new file mode 100644 index 000000000..63dbbc568 --- /dev/null +++ b/objectdet/version-2019-12-30.xml @@ -0,0 +1 @@ +