1 /* 2 * Copyright 2009-2017 Alibaba Cloud All rights reserved. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef ALIBABACLOUD_OCR_OCRCLIENT_H_ 18 #define ALIBABACLOUD_OCR_OCRCLIENT_H_ 19 20 #include <future> 21 #include <alibabacloud/core/AsyncCallerContext.h> 22 #include <alibabacloud/core/EndpointProvider.h> 23 #include <alibabacloud/core/RpcServiceClient.h> 24 #include "OcrExport.h" 25 #include "model/DetectCardScreenshotRequest.h" 26 #include "model/DetectCardScreenshotResult.h" 27 #include "model/GetAsyncJobResultRequest.h" 28 #include "model/GetAsyncJobResultResult.h" 29 #include "model/RecognizeAccountPageRequest.h" 30 #include "model/RecognizeAccountPageResult.h" 31 #include "model/RecognizeBankCardRequest.h" 32 #include "model/RecognizeBankCardResult.h" 33 #include "model/RecognizeBusinessCardRequest.h" 34 #include "model/RecognizeBusinessCardResult.h" 35 #include "model/RecognizeBusinessLicenseRequest.h" 36 #include "model/RecognizeBusinessLicenseResult.h" 37 #include "model/RecognizeCharacterRequest.h" 38 #include "model/RecognizeCharacterResult.h" 39 #include "model/RecognizeChinapassportRequest.h" 40 #include "model/RecognizeChinapassportResult.h" 41 #include "model/RecognizeDriverLicenseRequest.h" 42 #include "model/RecognizeDriverLicenseResult.h" 43 #include "model/RecognizeDrivingLicenseRequest.h" 44 #include "model/RecognizeDrivingLicenseResult.h" 45 #include "model/RecognizeIdentityCardRequest.h" 46 #include "model/RecognizeIdentityCardResult.h" 47 #include "model/RecognizeLicensePlateRequest.h" 48 #include "model/RecognizeLicensePlateResult.h" 49 #include "model/RecognizePassportMRZRequest.h" 50 #include "model/RecognizePassportMRZResult.h" 51 #include "model/RecognizePoiNameRequest.h" 52 #include "model/RecognizePoiNameResult.h" 53 #include "model/RecognizeQrCodeRequest.h" 54 #include "model/RecognizeQrCodeResult.h" 55 #include "model/RecognizeStampRequest.h" 56 #include "model/RecognizeStampResult.h" 57 #include "model/RecognizeTableRequest.h" 58 #include "model/RecognizeTableResult.h" 59 #include "model/RecognizeTakeoutOrderRequest.h" 60 #include "model/RecognizeTakeoutOrderResult.h" 61 #include "model/RecognizeTaxiInvoiceRequest.h" 62 #include "model/RecognizeTaxiInvoiceResult.h" 63 #include "model/RecognizeTrainTicketRequest.h" 64 #include "model/RecognizeTrainTicketResult.h" 65 #include "model/RecognizeVATInvoiceRequest.h" 66 #include "model/RecognizeVATInvoiceResult.h" 67 #include "model/RecognizeVINCodeRequest.h" 68 #include "model/RecognizeVINCodeResult.h" 69 #include "model/RecognizeVerificationcodeRequest.h" 70 #include "model/RecognizeVerificationcodeResult.h" 71 #include "model/TrimDocumentRequest.h" 72 #include "model/TrimDocumentResult.h" 73 74 75 namespace AlibabaCloud 76 { 77 namespace Ocr 78 { 79 class ALIBABACLOUD_OCR_EXPORT OcrClient : public RpcServiceClient 80 { 81 public: 82 typedef Outcome<Error, Model::DetectCardScreenshotResult> DetectCardScreenshotOutcome; 83 typedef std::future<DetectCardScreenshotOutcome> DetectCardScreenshotOutcomeCallable; 84 typedef std::function<void(const OcrClient*, const Model::DetectCardScreenshotRequest&, const DetectCardScreenshotOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectCardScreenshotAsyncHandler; 85 typedef Outcome<Error, Model::GetAsyncJobResultResult> GetAsyncJobResultOutcome; 86 typedef std::future<GetAsyncJobResultOutcome> GetAsyncJobResultOutcomeCallable; 87 typedef std::function<void(const OcrClient*, const Model::GetAsyncJobResultRequest&, const GetAsyncJobResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAsyncJobResultAsyncHandler; 88 typedef Outcome<Error, Model::RecognizeAccountPageResult> RecognizeAccountPageOutcome; 89 typedef std::future<RecognizeAccountPageOutcome> RecognizeAccountPageOutcomeCallable; 90 typedef std::function<void(const OcrClient*, const Model::RecognizeAccountPageRequest&, const RecognizeAccountPageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeAccountPageAsyncHandler; 91 typedef Outcome<Error, Model::RecognizeBankCardResult> RecognizeBankCardOutcome; 92 typedef std::future<RecognizeBankCardOutcome> RecognizeBankCardOutcomeCallable; 93 typedef std::function<void(const OcrClient*, const Model::RecognizeBankCardRequest&, const RecognizeBankCardOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeBankCardAsyncHandler; 94 typedef Outcome<Error, Model::RecognizeBusinessCardResult> RecognizeBusinessCardOutcome; 95 typedef std::future<RecognizeBusinessCardOutcome> RecognizeBusinessCardOutcomeCallable; 96 typedef std::function<void(const OcrClient*, const Model::RecognizeBusinessCardRequest&, const RecognizeBusinessCardOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeBusinessCardAsyncHandler; 97 typedef Outcome<Error, Model::RecognizeBusinessLicenseResult> RecognizeBusinessLicenseOutcome; 98 typedef std::future<RecognizeBusinessLicenseOutcome> RecognizeBusinessLicenseOutcomeCallable; 99 typedef std::function<void(const OcrClient*, const Model::RecognizeBusinessLicenseRequest&, const RecognizeBusinessLicenseOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeBusinessLicenseAsyncHandler; 100 typedef Outcome<Error, Model::RecognizeCharacterResult> RecognizeCharacterOutcome; 101 typedef std::future<RecognizeCharacterOutcome> RecognizeCharacterOutcomeCallable; 102 typedef std::function<void(const OcrClient*, const Model::RecognizeCharacterRequest&, const RecognizeCharacterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeCharacterAsyncHandler; 103 typedef Outcome<Error, Model::RecognizeChinapassportResult> RecognizeChinapassportOutcome; 104 typedef std::future<RecognizeChinapassportOutcome> RecognizeChinapassportOutcomeCallable; 105 typedef std::function<void(const OcrClient*, const Model::RecognizeChinapassportRequest&, const RecognizeChinapassportOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeChinapassportAsyncHandler; 106 typedef Outcome<Error, Model::RecognizeDriverLicenseResult> RecognizeDriverLicenseOutcome; 107 typedef std::future<RecognizeDriverLicenseOutcome> RecognizeDriverLicenseOutcomeCallable; 108 typedef std::function<void(const OcrClient*, const Model::RecognizeDriverLicenseRequest&, const RecognizeDriverLicenseOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeDriverLicenseAsyncHandler; 109 typedef Outcome<Error, Model::RecognizeDrivingLicenseResult> RecognizeDrivingLicenseOutcome; 110 typedef std::future<RecognizeDrivingLicenseOutcome> RecognizeDrivingLicenseOutcomeCallable; 111 typedef std::function<void(const OcrClient*, const Model::RecognizeDrivingLicenseRequest&, const RecognizeDrivingLicenseOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeDrivingLicenseAsyncHandler; 112 typedef Outcome<Error, Model::RecognizeIdentityCardResult> RecognizeIdentityCardOutcome; 113 typedef std::future<RecognizeIdentityCardOutcome> RecognizeIdentityCardOutcomeCallable; 114 typedef std::function<void(const OcrClient*, const Model::RecognizeIdentityCardRequest&, const RecognizeIdentityCardOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeIdentityCardAsyncHandler; 115 typedef Outcome<Error, Model::RecognizeLicensePlateResult> RecognizeLicensePlateOutcome; 116 typedef std::future<RecognizeLicensePlateOutcome> RecognizeLicensePlateOutcomeCallable; 117 typedef std::function<void(const OcrClient*, const Model::RecognizeLicensePlateRequest&, const RecognizeLicensePlateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeLicensePlateAsyncHandler; 118 typedef Outcome<Error, Model::RecognizePassportMRZResult> RecognizePassportMRZOutcome; 119 typedef std::future<RecognizePassportMRZOutcome> RecognizePassportMRZOutcomeCallable; 120 typedef std::function<void(const OcrClient*, const Model::RecognizePassportMRZRequest&, const RecognizePassportMRZOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizePassportMRZAsyncHandler; 121 typedef Outcome<Error, Model::RecognizePoiNameResult> RecognizePoiNameOutcome; 122 typedef std::future<RecognizePoiNameOutcome> RecognizePoiNameOutcomeCallable; 123 typedef std::function<void(const OcrClient*, const Model::RecognizePoiNameRequest&, const RecognizePoiNameOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizePoiNameAsyncHandler; 124 typedef Outcome<Error, Model::RecognizeQrCodeResult> RecognizeQrCodeOutcome; 125 typedef std::future<RecognizeQrCodeOutcome> RecognizeQrCodeOutcomeCallable; 126 typedef std::function<void(const OcrClient*, const Model::RecognizeQrCodeRequest&, const RecognizeQrCodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeQrCodeAsyncHandler; 127 typedef Outcome<Error, Model::RecognizeStampResult> RecognizeStampOutcome; 128 typedef std::future<RecognizeStampOutcome> RecognizeStampOutcomeCallable; 129 typedef std::function<void(const OcrClient*, const Model::RecognizeStampRequest&, const RecognizeStampOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeStampAsyncHandler; 130 typedef Outcome<Error, Model::RecognizeTableResult> RecognizeTableOutcome; 131 typedef std::future<RecognizeTableOutcome> RecognizeTableOutcomeCallable; 132 typedef std::function<void(const OcrClient*, const Model::RecognizeTableRequest&, const RecognizeTableOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeTableAsyncHandler; 133 typedef Outcome<Error, Model::RecognizeTakeoutOrderResult> RecognizeTakeoutOrderOutcome; 134 typedef std::future<RecognizeTakeoutOrderOutcome> RecognizeTakeoutOrderOutcomeCallable; 135 typedef std::function<void(const OcrClient*, const Model::RecognizeTakeoutOrderRequest&, const RecognizeTakeoutOrderOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeTakeoutOrderAsyncHandler; 136 typedef Outcome<Error, Model::RecognizeTaxiInvoiceResult> RecognizeTaxiInvoiceOutcome; 137 typedef std::future<RecognizeTaxiInvoiceOutcome> RecognizeTaxiInvoiceOutcomeCallable; 138 typedef std::function<void(const OcrClient*, const Model::RecognizeTaxiInvoiceRequest&, const RecognizeTaxiInvoiceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeTaxiInvoiceAsyncHandler; 139 typedef Outcome<Error, Model::RecognizeTrainTicketResult> RecognizeTrainTicketOutcome; 140 typedef std::future<RecognizeTrainTicketOutcome> RecognizeTrainTicketOutcomeCallable; 141 typedef std::function<void(const OcrClient*, const Model::RecognizeTrainTicketRequest&, const RecognizeTrainTicketOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeTrainTicketAsyncHandler; 142 typedef Outcome<Error, Model::RecognizeVATInvoiceResult> RecognizeVATInvoiceOutcome; 143 typedef std::future<RecognizeVATInvoiceOutcome> RecognizeVATInvoiceOutcomeCallable; 144 typedef std::function<void(const OcrClient*, const Model::RecognizeVATInvoiceRequest&, const RecognizeVATInvoiceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeVATInvoiceAsyncHandler; 145 typedef Outcome<Error, Model::RecognizeVINCodeResult> RecognizeVINCodeOutcome; 146 typedef std::future<RecognizeVINCodeOutcome> RecognizeVINCodeOutcomeCallable; 147 typedef std::function<void(const OcrClient*, const Model::RecognizeVINCodeRequest&, const RecognizeVINCodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeVINCodeAsyncHandler; 148 typedef Outcome<Error, Model::RecognizeVerificationcodeResult> RecognizeVerificationcodeOutcome; 149 typedef std::future<RecognizeVerificationcodeOutcome> RecognizeVerificationcodeOutcomeCallable; 150 typedef std::function<void(const OcrClient*, const Model::RecognizeVerificationcodeRequest&, const RecognizeVerificationcodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RecognizeVerificationcodeAsyncHandler; 151 typedef Outcome<Error, Model::TrimDocumentResult> TrimDocumentOutcome; 152 typedef std::future<TrimDocumentOutcome> TrimDocumentOutcomeCallable; 153 typedef std::function<void(const OcrClient*, const Model::TrimDocumentRequest&, const TrimDocumentOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> TrimDocumentAsyncHandler; 154 155 OcrClient(const Credentials &credentials, const ClientConfiguration &configuration); 156 OcrClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration); 157 OcrClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration); 158 ~OcrClient(); 159 DetectCardScreenshotOutcome detectCardScreenshot(const Model::DetectCardScreenshotRequest &request)const; 160 void detectCardScreenshotAsync(const Model::DetectCardScreenshotRequest& request, const DetectCardScreenshotAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 161 DetectCardScreenshotOutcomeCallable detectCardScreenshotCallable(const Model::DetectCardScreenshotRequest& request) const; 162 GetAsyncJobResultOutcome getAsyncJobResult(const Model::GetAsyncJobResultRequest &request)const; 163 void getAsyncJobResultAsync(const Model::GetAsyncJobResultRequest& request, const GetAsyncJobResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 164 GetAsyncJobResultOutcomeCallable getAsyncJobResultCallable(const Model::GetAsyncJobResultRequest& request) const; 165 RecognizeAccountPageOutcome recognizeAccountPage(const Model::RecognizeAccountPageRequest &request)const; 166 void recognizeAccountPageAsync(const Model::RecognizeAccountPageRequest& request, const RecognizeAccountPageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 167 RecognizeAccountPageOutcomeCallable recognizeAccountPageCallable(const Model::RecognizeAccountPageRequest& request) const; 168 RecognizeBankCardOutcome recognizeBankCard(const Model::RecognizeBankCardRequest &request)const; 169 void recognizeBankCardAsync(const Model::RecognizeBankCardRequest& request, const RecognizeBankCardAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 170 RecognizeBankCardOutcomeCallable recognizeBankCardCallable(const Model::RecognizeBankCardRequest& request) const; 171 RecognizeBusinessCardOutcome recognizeBusinessCard(const Model::RecognizeBusinessCardRequest &request)const; 172 void recognizeBusinessCardAsync(const Model::RecognizeBusinessCardRequest& request, const RecognizeBusinessCardAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 173 RecognizeBusinessCardOutcomeCallable recognizeBusinessCardCallable(const Model::RecognizeBusinessCardRequest& request) const; 174 RecognizeBusinessLicenseOutcome recognizeBusinessLicense(const Model::RecognizeBusinessLicenseRequest &request)const; 175 void recognizeBusinessLicenseAsync(const Model::RecognizeBusinessLicenseRequest& request, const RecognizeBusinessLicenseAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 176 RecognizeBusinessLicenseOutcomeCallable recognizeBusinessLicenseCallable(const Model::RecognizeBusinessLicenseRequest& request) const; 177 RecognizeCharacterOutcome recognizeCharacter(const Model::RecognizeCharacterRequest &request)const; 178 void recognizeCharacterAsync(const Model::RecognizeCharacterRequest& request, const RecognizeCharacterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 179 RecognizeCharacterOutcomeCallable recognizeCharacterCallable(const Model::RecognizeCharacterRequest& request) const; 180 RecognizeChinapassportOutcome recognizeChinapassport(const Model::RecognizeChinapassportRequest &request)const; 181 void recognizeChinapassportAsync(const Model::RecognizeChinapassportRequest& request, const RecognizeChinapassportAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 182 RecognizeChinapassportOutcomeCallable recognizeChinapassportCallable(const Model::RecognizeChinapassportRequest& request) const; 183 RecognizeDriverLicenseOutcome recognizeDriverLicense(const Model::RecognizeDriverLicenseRequest &request)const; 184 void recognizeDriverLicenseAsync(const Model::RecognizeDriverLicenseRequest& request, const RecognizeDriverLicenseAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 185 RecognizeDriverLicenseOutcomeCallable recognizeDriverLicenseCallable(const Model::RecognizeDriverLicenseRequest& request) const; 186 RecognizeDrivingLicenseOutcome recognizeDrivingLicense(const Model::RecognizeDrivingLicenseRequest &request)const; 187 void recognizeDrivingLicenseAsync(const Model::RecognizeDrivingLicenseRequest& request, const RecognizeDrivingLicenseAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 188 RecognizeDrivingLicenseOutcomeCallable recognizeDrivingLicenseCallable(const Model::RecognizeDrivingLicenseRequest& request) const; 189 RecognizeIdentityCardOutcome recognizeIdentityCard(const Model::RecognizeIdentityCardRequest &request)const; 190 void recognizeIdentityCardAsync(const Model::RecognizeIdentityCardRequest& request, const RecognizeIdentityCardAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 191 RecognizeIdentityCardOutcomeCallable recognizeIdentityCardCallable(const Model::RecognizeIdentityCardRequest& request) const; 192 RecognizeLicensePlateOutcome recognizeLicensePlate(const Model::RecognizeLicensePlateRequest &request)const; 193 void recognizeLicensePlateAsync(const Model::RecognizeLicensePlateRequest& request, const RecognizeLicensePlateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 194 RecognizeLicensePlateOutcomeCallable recognizeLicensePlateCallable(const Model::RecognizeLicensePlateRequest& request) const; 195 RecognizePassportMRZOutcome recognizePassportMRZ(const Model::RecognizePassportMRZRequest &request)const; 196 void recognizePassportMRZAsync(const Model::RecognizePassportMRZRequest& request, const RecognizePassportMRZAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 197 RecognizePassportMRZOutcomeCallable recognizePassportMRZCallable(const Model::RecognizePassportMRZRequest& request) const; 198 RecognizePoiNameOutcome recognizePoiName(const Model::RecognizePoiNameRequest &request)const; 199 void recognizePoiNameAsync(const Model::RecognizePoiNameRequest& request, const RecognizePoiNameAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 200 RecognizePoiNameOutcomeCallable recognizePoiNameCallable(const Model::RecognizePoiNameRequest& request) const; 201 RecognizeQrCodeOutcome recognizeQrCode(const Model::RecognizeQrCodeRequest &request)const; 202 void recognizeQrCodeAsync(const Model::RecognizeQrCodeRequest& request, const RecognizeQrCodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 203 RecognizeQrCodeOutcomeCallable recognizeQrCodeCallable(const Model::RecognizeQrCodeRequest& request) const; 204 RecognizeStampOutcome recognizeStamp(const Model::RecognizeStampRequest &request)const; 205 void recognizeStampAsync(const Model::RecognizeStampRequest& request, const RecognizeStampAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 206 RecognizeStampOutcomeCallable recognizeStampCallable(const Model::RecognizeStampRequest& request) const; 207 RecognizeTableOutcome recognizeTable(const Model::RecognizeTableRequest &request)const; 208 void recognizeTableAsync(const Model::RecognizeTableRequest& request, const RecognizeTableAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 209 RecognizeTableOutcomeCallable recognizeTableCallable(const Model::RecognizeTableRequest& request) const; 210 RecognizeTakeoutOrderOutcome recognizeTakeoutOrder(const Model::RecognizeTakeoutOrderRequest &request)const; 211 void recognizeTakeoutOrderAsync(const Model::RecognizeTakeoutOrderRequest& request, const RecognizeTakeoutOrderAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 212 RecognizeTakeoutOrderOutcomeCallable recognizeTakeoutOrderCallable(const Model::RecognizeTakeoutOrderRequest& request) const; 213 RecognizeTaxiInvoiceOutcome recognizeTaxiInvoice(const Model::RecognizeTaxiInvoiceRequest &request)const; 214 void recognizeTaxiInvoiceAsync(const Model::RecognizeTaxiInvoiceRequest& request, const RecognizeTaxiInvoiceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 215 RecognizeTaxiInvoiceOutcomeCallable recognizeTaxiInvoiceCallable(const Model::RecognizeTaxiInvoiceRequest& request) const; 216 RecognizeTrainTicketOutcome recognizeTrainTicket(const Model::RecognizeTrainTicketRequest &request)const; 217 void recognizeTrainTicketAsync(const Model::RecognizeTrainTicketRequest& request, const RecognizeTrainTicketAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 218 RecognizeTrainTicketOutcomeCallable recognizeTrainTicketCallable(const Model::RecognizeTrainTicketRequest& request) const; 219 RecognizeVATInvoiceOutcome recognizeVATInvoice(const Model::RecognizeVATInvoiceRequest &request)const; 220 void recognizeVATInvoiceAsync(const Model::RecognizeVATInvoiceRequest& request, const RecognizeVATInvoiceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 221 RecognizeVATInvoiceOutcomeCallable recognizeVATInvoiceCallable(const Model::RecognizeVATInvoiceRequest& request) const; 222 RecognizeVINCodeOutcome recognizeVINCode(const Model::RecognizeVINCodeRequest &request)const; 223 void recognizeVINCodeAsync(const Model::RecognizeVINCodeRequest& request, const RecognizeVINCodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 224 RecognizeVINCodeOutcomeCallable recognizeVINCodeCallable(const Model::RecognizeVINCodeRequest& request) const; 225 RecognizeVerificationcodeOutcome recognizeVerificationcode(const Model::RecognizeVerificationcodeRequest &request)const; 226 void recognizeVerificationcodeAsync(const Model::RecognizeVerificationcodeRequest& request, const RecognizeVerificationcodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 227 RecognizeVerificationcodeOutcomeCallable recognizeVerificationcodeCallable(const Model::RecognizeVerificationcodeRequest& request) const; 228 TrimDocumentOutcome trimDocument(const Model::TrimDocumentRequest &request)const; 229 void trimDocumentAsync(const Model::TrimDocumentRequest& request, const TrimDocumentAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const; 230 TrimDocumentOutcomeCallable trimDocumentCallable(const Model::TrimDocumentRequest& request) const; 231 232 private: 233 std::shared_ptr<EndpointProvider> endpointProvider_; 234 }; 235 } 236 } 237 238 #endif // !ALIBABACLOUD_OCR_OCRCLIENT_H_ 239