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_MODEL_RECOGNIZETABLERESULT_H_
18 #define ALIBABACLOUD_OCR_MODEL_RECOGNIZETABLERESULT_H_
19 
20 #include <string>
21 #include <vector>
22 #include <utility>
23 #include <alibabacloud/core/ServiceResult.h>
24 #include <alibabacloud/ocr/OcrExport.h>
25 
26 namespace AlibabaCloud
27 {
28 	namespace Ocr
29 	{
30 		namespace Model
31 		{
32 			class ALIBABACLOUD_OCR_EXPORT RecognizeTableResult : public ServiceResult
33 			{
34 			public:
35 				struct Data
36 				{
37 					struct Table
38 					{
39 						struct TableRow
40 						{
41 							struct TableColumn
42 							{
43 								int endRow;
44 								int endColumn;
45 								std::vector<std::string> texts;
46 								int height;
47 								int width;
48 								int startRow;
49 								int startColumn;
50 							};
51 							std::vector<TableRow::TableColumn> tableColumns;
52 						};
53 						std::vector<std::string> head;
54 						std::vector<std::string> tail;
55 						std::vector<Table::TableRow> tableRows;
56 					};
57 					std::string fileContent;
58 					std::vector<Table> tables;
59 				};
60 
61 
62 				RecognizeTableResult();
63 				explicit RecognizeTableResult(const std::string &payload);
64 				~RecognizeTableResult();
65 				Data getData()const;
66 
67 			protected:
68 				void parse(const std::string &payload);
69 			private:
70 				Data data_;
71 
72 			};
73 		}
74 	}
75 }
76 #endif // !ALIBABACLOUD_OCR_MODEL_RECOGNIZETABLERESULT_H_