Răsfoiți Sursa

IMM SDK Auto Released By zhengrui.lj,Version:1.35.0

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 7 ani în urmă
părinte
comite
1befab93b1
100 a modificat fișierele cu 7368 adăugiri și 2 ștergeri
  1. 3 0
      CHANGELOG
  2. 2 1
      CMakeLists.txt
  3. 1 1
      VERSION
  4. 446 0
      imm/CMakeLists.txt
  5. 774 0
      imm/include/alibabacloud/imm/ImmClient.h
  6. 32 0
      imm/include/alibabacloud/imm/ImmExport.h
  7. 60 0
      imm/include/alibabacloud/imm/model/CompareFaceRequest.h
  8. 67 0
      imm/include/alibabacloud/imm/model/CompareFaceResult.h
  9. 69 0
      imm/include/alibabacloud/imm/model/CompareImageFacesRequest.h
  10. 89 0
      imm/include/alibabacloud/imm/model/CompareImageFacesResult.h
  11. 111 0
      imm/include/alibabacloud/imm/model/ConvertOfficeFormatRequest.h
  12. 51 0
      imm/include/alibabacloud/imm/model/ConvertOfficeFormatResult.h
  13. 96 0
      imm/include/alibabacloud/imm/model/CreateCADConversionTaskRequest.h
  14. 59 0
      imm/include/alibabacloud/imm/model/CreateCADConversionTaskResult.h
  15. 84 0
      imm/include/alibabacloud/imm/model/CreateDocIndexTaskRequest.h
  16. 55 0
      imm/include/alibabacloud/imm/model/CreateDocIndexTaskResult.h
  17. 54 0
      imm/include/alibabacloud/imm/model/CreateFaceSetRequest.h
  18. 61 0
      imm/include/alibabacloud/imm/model/CreateFaceSetResult.h
  19. 63 0
      imm/include/alibabacloud/imm/model/CreateGroupFacesJobRequest.h
  20. 55 0
      imm/include/alibabacloud/imm/model/CreateGroupFacesJobResult.h
  21. 123 0
      imm/include/alibabacloud/imm/model/CreateOfficeConversionTaskRequest.h
  22. 59 0
      imm/include/alibabacloud/imm/model/CreateOfficeConversionTaskResult.h
  23. 69 0
      imm/include/alibabacloud/imm/model/CreatePornBatchDetectJobRequest.h
  24. 59 0
      imm/include/alibabacloud/imm/model/CreatePornBatchDetectJobResult.h
  25. 60 0
      imm/include/alibabacloud/imm/model/CreateSetRequest.h
  26. 65 0
      imm/include/alibabacloud/imm/model/CreateSetResult.h
  27. 66 0
      imm/include/alibabacloud/imm/model/CreateTagJobRequest.h
  28. 63 0
      imm/include/alibabacloud/imm/model/CreateTagJobResult.h
  29. 54 0
      imm/include/alibabacloud/imm/model/CreateTagSetRequest.h
  30. 59 0
      imm/include/alibabacloud/imm/model/CreateTagSetResult.h
  31. 81 0
      imm/include/alibabacloud/imm/model/CreateVideoAnalyseTaskRequest.h
  32. 53 0
      imm/include/alibabacloud/imm/model/CreateVideoAnalyseTaskResult.h
  33. 60 0
      imm/include/alibabacloud/imm/model/DeleteDocIndexRequest.h
  34. 49 0
      imm/include/alibabacloud/imm/model/DeleteDocIndexResult.h
  35. 60 0
      imm/include/alibabacloud/imm/model/DeleteFaceJobRequest.h
  36. 49 0
      imm/include/alibabacloud/imm/model/DeleteFaceJobResult.h
  37. 57 0
      imm/include/alibabacloud/imm/model/DeleteFaceSearchGroupRequest.h
  38. 49 0
      imm/include/alibabacloud/imm/model/DeleteFaceSearchGroupResult.h
  39. 66 0
      imm/include/alibabacloud/imm/model/DeleteFaceSearchImageByIdRequest.h
  40. 49 0
      imm/include/alibabacloud/imm/model/DeleteFaceSearchImageByIdResult.h
  41. 60 0
      imm/include/alibabacloud/imm/model/DeleteFaceSearchUserRequest.h
  42. 49 0
      imm/include/alibabacloud/imm/model/DeleteFaceSearchUserResult.h
  43. 60 0
      imm/include/alibabacloud/imm/model/DeleteImageJobRequest.h
  44. 49 0
      imm/include/alibabacloud/imm/model/DeleteImageJobResult.h
  45. 60 0
      imm/include/alibabacloud/imm/model/DeleteImageRequest.h
  46. 53 0
      imm/include/alibabacloud/imm/model/DeleteImageResult.h
  47. 57 0
      imm/include/alibabacloud/imm/model/DeleteOfficeConversionTaskRequest.h
  48. 49 0
      imm/include/alibabacloud/imm/model/DeleteOfficeConversionTaskResult.h
  49. 57 0
      imm/include/alibabacloud/imm/model/DeletePhotoProcessTaskRequest.h
  50. 49 0
      imm/include/alibabacloud/imm/model/DeletePhotoProcessTaskResult.h
  51. 57 0
      imm/include/alibabacloud/imm/model/DeletePornBatchDetectJobRequest.h
  52. 49 0
      imm/include/alibabacloud/imm/model/DeletePornBatchDetectJobResult.h
  53. 54 0
      imm/include/alibabacloud/imm/model/DeleteProjectRequest.h
  54. 49 0
      imm/include/alibabacloud/imm/model/DeleteProjectResult.h
  55. 57 0
      imm/include/alibabacloud/imm/model/DeleteSetRequest.h
  56. 51 0
      imm/include/alibabacloud/imm/model/DeleteSetResult.h
  57. 63 0
      imm/include/alibabacloud/imm/model/DeleteTagByNameRequest.h
  58. 49 0
      imm/include/alibabacloud/imm/model/DeleteTagByNameResult.h
  59. 60 0
      imm/include/alibabacloud/imm/model/DeleteTagByUrlRequest.h
  60. 49 0
      imm/include/alibabacloud/imm/model/DeleteTagByUrlResult.h
  61. 60 0
      imm/include/alibabacloud/imm/model/DeleteTagJobRequest.h
  62. 49 0
      imm/include/alibabacloud/imm/model/DeleteTagJobResult.h
  63. 63 0
      imm/include/alibabacloud/imm/model/DeleteTagSetRequest.h
  64. 49 0
      imm/include/alibabacloud/imm/model/DeleteTagSetResult.h
  65. 63 0
      imm/include/alibabacloud/imm/model/DeleteVideoRequest.h
  66. 53 0
      imm/include/alibabacloud/imm/model/DeleteVideoResult.h
  67. 60 0
      imm/include/alibabacloud/imm/model/DeleteVideoTaskRequest.h
  68. 49 0
      imm/include/alibabacloud/imm/model/DeleteVideoTaskResult.h
  69. 51 0
      imm/include/alibabacloud/imm/model/DescribeRegionsRequest.h
  70. 60 0
      imm/include/alibabacloud/imm/model/DescribeRegionsResult.h
  71. 57 0
      imm/include/alibabacloud/imm/model/DetectClothesRequest.h
  72. 75 0
      imm/include/alibabacloud/imm/model/DetectClothesResult.h
  73. 60 0
      imm/include/alibabacloud/imm/model/DetectImageCelebrityRequest.h
  74. 68 0
      imm/include/alibabacloud/imm/model/DetectImageCelebrityResult.h
  75. 57 0
      imm/include/alibabacloud/imm/model/DetectImageFacesRequest.h
  76. 105 0
      imm/include/alibabacloud/imm/model/DetectImageFacesResult.h
  77. 57 0
      imm/include/alibabacloud/imm/model/DetectImageLogosRequest.h
  78. 66 0
      imm/include/alibabacloud/imm/model/DetectImageLogosResult.h
  79. 57 0
      imm/include/alibabacloud/imm/model/DetectImageTagsRequest.h
  80. 62 0
      imm/include/alibabacloud/imm/model/DetectImageTagsResult.h
  81. 57 0
      imm/include/alibabacloud/imm/model/DetectImageTextsRequest.h
  82. 66 0
      imm/include/alibabacloud/imm/model/DetectImageTextsResult.h
  83. 57 0
      imm/include/alibabacloud/imm/model/DetectLogoRequest.h
  84. 75 0
      imm/include/alibabacloud/imm/model/DetectLogoResult.h
  85. 57 0
      imm/include/alibabacloud/imm/model/DetectQRCodesRequest.h
  86. 76 0
      imm/include/alibabacloud/imm/model/DetectQRCodesResult.h
  87. 60 0
      imm/include/alibabacloud/imm/model/DetectTagRequest.h
  88. 74 0
      imm/include/alibabacloud/imm/model/DetectTagResult.h
  89. 66 0
      imm/include/alibabacloud/imm/model/FindImagesByTagNamesRequest.h
  90. 179 0
      imm/include/alibabacloud/imm/model/FindImagesByTagNamesResult.h
  91. 123 0
      imm/include/alibabacloud/imm/model/FindImagesRequest.h
  92. 179 0
      imm/include/alibabacloud/imm/model/FindImagesResult.h
  93. 69 0
      imm/include/alibabacloud/imm/model/FindSimilarFacesRequest.h
  94. 69 0
      imm/include/alibabacloud/imm/model/FindSimilarFacesResult.h
  95. 60 0
      imm/include/alibabacloud/imm/model/GetDocIndexRequest.h
  96. 79 0
      imm/include/alibabacloud/imm/model/GetDocIndexResult.h
  97. 57 0
      imm/include/alibabacloud/imm/model/GetDocIndexTaskRequest.h
  98. 63 0
      imm/include/alibabacloud/imm/model/GetDocIndexTaskResult.h
  99. 57 0
      imm/include/alibabacloud/imm/model/GetFaceSearchGroupRequest.h
  100. 61 0
      imm/include/alibabacloud/imm/model/GetFaceSearchGroupResult.h

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2019-03-28 Version: 1.35.0
+1, Add logo detect.
+
 2019-03-27 Version: 1.34.66
 1, Add Project interface.
 2, Add Tag interface.

+ 2 - 1
CMakeLists.txt

@@ -115,4 +115,5 @@ add_subdirectory(jarvis-public)
 add_subdirectory(mts)
 add_subdirectory(dysmsapi)
 add_subdirectory(ons)
-add_subdirectory(ivision)
+add_subdirectory(ivision)
+add_subdirectory(imm)

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.34.66
+1.35.0

+ 446 - 0
imm/CMakeLists.txt

@@ -0,0 +1,446 @@
+#
+# 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.
+#
+
+set(public_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/../include)
+
+set(imm_public_header 
+	include/alibabacloud/imm/ImmClient.h
+	include/alibabacloud/imm/ImmExport.h )
+
+set(imm_public_header_model 
+	include/alibabacloud/imm/model/ListPornBatchDetectJobsRequest.h
+	include/alibabacloud/imm/model/ListPornBatchDetectJobsResult.h
+	include/alibabacloud/imm/model/DetectImageFacesRequest.h
+	include/alibabacloud/imm/model/DetectImageFacesResult.h
+	include/alibabacloud/imm/model/DetectImageTagsRequest.h
+	include/alibabacloud/imm/model/DetectImageTagsResult.h
+	include/alibabacloud/imm/model/DeleteImageRequest.h
+	include/alibabacloud/imm/model/DeleteImageResult.h
+	include/alibabacloud/imm/model/CreateTagJobRequest.h
+	include/alibabacloud/imm/model/CreateTagJobResult.h
+	include/alibabacloud/imm/model/IndexTagRequest.h
+	include/alibabacloud/imm/model/IndexTagResult.h
+	include/alibabacloud/imm/model/ListProjectsRequest.h
+	include/alibabacloud/imm/model/ListProjectsResult.h
+	include/alibabacloud/imm/model/DeleteSetRequest.h
+	include/alibabacloud/imm/model/DeleteSetResult.h
+	include/alibabacloud/imm/model/GetFaceSearchImageRequest.h
+	include/alibabacloud/imm/model/GetFaceSearchImageResult.h
+	include/alibabacloud/imm/model/CreateVideoAnalyseTaskRequest.h
+	include/alibabacloud/imm/model/CreateVideoAnalyseTaskResult.h
+	include/alibabacloud/imm/model/CompareFaceRequest.h
+	include/alibabacloud/imm/model/CompareFaceResult.h
+	include/alibabacloud/imm/model/DetectTagRequest.h
+	include/alibabacloud/imm/model/DetectTagResult.h
+	include/alibabacloud/imm/model/ListFaceSearchGroupUsersRequest.h
+	include/alibabacloud/imm/model/ListFaceSearchGroupUsersResult.h
+	include/alibabacloud/imm/model/ListFaceSearchGroupImagesRequest.h
+	include/alibabacloud/imm/model/ListFaceSearchGroupImagesResult.h
+	include/alibabacloud/imm/model/CreateCADConversionTaskRequest.h
+	include/alibabacloud/imm/model/CreateCADConversionTaskResult.h
+	include/alibabacloud/imm/model/GetTagJobRequest.h
+	include/alibabacloud/imm/model/GetTagJobResult.h
+	include/alibabacloud/imm/model/DeleteFaceJobRequest.h
+	include/alibabacloud/imm/model/DeleteFaceJobResult.h
+	include/alibabacloud/imm/model/CreateDocIndexTaskRequest.h
+	include/alibabacloud/imm/model/CreateDocIndexTaskResult.h
+	include/alibabacloud/imm/model/PutProjectRequest.h
+	include/alibabacloud/imm/model/PutProjectResult.h
+	include/alibabacloud/imm/model/GetSetRequest.h
+	include/alibabacloud/imm/model/GetSetResult.h
+	include/alibabacloud/imm/model/GetVideoTaskRequest.h
+	include/alibabacloud/imm/model/GetVideoTaskResult.h
+	include/alibabacloud/imm/model/ListSetsRequest.h
+	include/alibabacloud/imm/model/ListSetsResult.h
+	include/alibabacloud/imm/model/SearchDocIndexRequest.h
+	include/alibabacloud/imm/model/SearchDocIndexResult.h
+	include/alibabacloud/imm/model/ListPhotoProcessTasksRequest.h
+	include/alibabacloud/imm/model/ListPhotoProcessTasksResult.h
+	include/alibabacloud/imm/model/ListVideosRequest.h
+	include/alibabacloud/imm/model/ListVideosResult.h
+	include/alibabacloud/imm/model/CreatePornBatchDetectJobRequest.h
+	include/alibabacloud/imm/model/CreatePornBatchDetectJobResult.h
+	include/alibabacloud/imm/model/FindImagesRequest.h
+	include/alibabacloud/imm/model/FindImagesResult.h
+	include/alibabacloud/imm/model/DeleteTagByNameRequest.h
+	include/alibabacloud/imm/model/DeleteTagByNameResult.h
+	include/alibabacloud/imm/model/DetectImageLogosRequest.h
+	include/alibabacloud/imm/model/DetectImageLogosResult.h
+	include/alibabacloud/imm/model/GetProjectRequest.h
+	include/alibabacloud/imm/model/GetProjectResult.h
+	include/alibabacloud/imm/model/DeletePhotoProcessTaskRequest.h
+	include/alibabacloud/imm/model/DeletePhotoProcessTaskResult.h
+	include/alibabacloud/imm/model/ListSetTagsRequest.h
+	include/alibabacloud/imm/model/ListSetTagsResult.h
+	include/alibabacloud/imm/model/DeleteVideoTaskRequest.h
+	include/alibabacloud/imm/model/DeleteVideoTaskResult.h
+	include/alibabacloud/imm/model/FindImagesByTagNamesRequest.h
+	include/alibabacloud/imm/model/FindImagesByTagNamesResult.h
+	include/alibabacloud/imm/model/DeleteTagSetRequest.h
+	include/alibabacloud/imm/model/DeleteTagSetResult.h
+	include/alibabacloud/imm/model/DeleteProjectRequest.h
+	include/alibabacloud/imm/model/DeleteProjectResult.h
+	include/alibabacloud/imm/model/UpdateDocIndexMetaRequest.h
+	include/alibabacloud/imm/model/UpdateDocIndexMetaResult.h
+	include/alibabacloud/imm/model/SearchFaceRequest.h
+	include/alibabacloud/imm/model/SearchFaceResult.h
+	include/alibabacloud/imm/model/GetImageRequest.h
+	include/alibabacloud/imm/model/GetImageResult.h
+	include/alibabacloud/imm/model/DetectImageCelebrityRequest.h
+	include/alibabacloud/imm/model/DetectImageCelebrityResult.h
+	include/alibabacloud/imm/model/CreateSetRequest.h
+	include/alibabacloud/imm/model/CreateSetResult.h
+	include/alibabacloud/imm/model/DeletePornBatchDetectJobRequest.h
+	include/alibabacloud/imm/model/DeletePornBatchDetectJobResult.h
+	include/alibabacloud/imm/model/ListFaceSearchGroupsRequest.h
+	include/alibabacloud/imm/model/ListFaceSearchGroupsResult.h
+	include/alibabacloud/imm/model/GetTagSetRequest.h
+	include/alibabacloud/imm/model/GetTagSetResult.h
+	include/alibabacloud/imm/model/ConvertOfficeFormatRequest.h
+	include/alibabacloud/imm/model/ConvertOfficeFormatResult.h
+	include/alibabacloud/imm/model/ListTagPhotosRequest.h
+	include/alibabacloud/imm/model/ListTagPhotosResult.h
+	include/alibabacloud/imm/model/DeleteFaceSearchImageByIdRequest.h
+	include/alibabacloud/imm/model/DeleteFaceSearchImageByIdResult.h
+	include/alibabacloud/imm/model/IndexVideoRequest.h
+	include/alibabacloud/imm/model/IndexVideoResult.h
+	include/alibabacloud/imm/model/DeleteDocIndexRequest.h
+	include/alibabacloud/imm/model/DeleteDocIndexResult.h
+	include/alibabacloud/imm/model/GetDocIndexTaskRequest.h
+	include/alibabacloud/imm/model/GetDocIndexTaskResult.h
+	include/alibabacloud/imm/model/GetImageJobRequest.h
+	include/alibabacloud/imm/model/GetImageJobResult.h
+	include/alibabacloud/imm/model/ListVideoAudiosRequest.h
+	include/alibabacloud/imm/model/ListVideoAudiosResult.h
+	include/alibabacloud/imm/model/DeleteTagByUrlRequest.h
+	include/alibabacloud/imm/model/DeleteTagByUrlResult.h
+	include/alibabacloud/imm/model/ListTagSetsRequest.h
+	include/alibabacloud/imm/model/ListTagSetsResult.h
+	include/alibabacloud/imm/model/ListTagNamesRequest.h
+	include/alibabacloud/imm/model/ListTagNamesResult.h
+	include/alibabacloud/imm/model/CreateOfficeConversionTaskRequest.h
+	include/alibabacloud/imm/model/CreateOfficeConversionTaskResult.h
+	include/alibabacloud/imm/model/DetectQRCodesRequest.h
+	include/alibabacloud/imm/model/DetectQRCodesResult.h
+	include/alibabacloud/imm/model/GetFaceSearchGroupRequest.h
+	include/alibabacloud/imm/model/GetFaceSearchGroupResult.h
+	include/alibabacloud/imm/model/GetVideoRequest.h
+	include/alibabacloud/imm/model/GetVideoResult.h
+	include/alibabacloud/imm/model/ListImagesRequest.h
+	include/alibabacloud/imm/model/ListImagesResult.h
+	include/alibabacloud/imm/model/CompareImageFacesRequest.h
+	include/alibabacloud/imm/model/CompareImageFacesResult.h
+	include/alibabacloud/imm/model/DeleteTagJobRequest.h
+	include/alibabacloud/imm/model/DeleteTagJobResult.h
+	include/alibabacloud/imm/model/DeleteOfficeConversionTaskRequest.h
+	include/alibabacloud/imm/model/DeleteOfficeConversionTaskResult.h
+	include/alibabacloud/imm/model/PhotoProcessRequest.h
+	include/alibabacloud/imm/model/PhotoProcessResult.h
+	include/alibabacloud/imm/model/GetPhotoProcessTaskRequest.h
+	include/alibabacloud/imm/model/GetPhotoProcessTaskResult.h
+	include/alibabacloud/imm/model/ListVideoFramesRequest.h
+	include/alibabacloud/imm/model/ListVideoFramesResult.h
+	include/alibabacloud/imm/model/GetPornBatchDetectJobRequest.h
+	include/alibabacloud/imm/model/GetPornBatchDetectJobResult.h
+	include/alibabacloud/imm/model/DetectLogoRequest.h
+	include/alibabacloud/imm/model/DetectLogoResult.h
+	include/alibabacloud/imm/model/DetectClothesRequest.h
+	include/alibabacloud/imm/model/DetectClothesResult.h
+	include/alibabacloud/imm/model/ListTagJobsRequest.h
+	include/alibabacloud/imm/model/ListTagJobsResult.h
+	include/alibabacloud/imm/model/DescribeRegionsRequest.h
+	include/alibabacloud/imm/model/DescribeRegionsResult.h
+	include/alibabacloud/imm/model/DeleteFaceSearchUserRequest.h
+	include/alibabacloud/imm/model/DeleteFaceSearchUserResult.h
+	include/alibabacloud/imm/model/GetOfficeConversionTaskRequest.h
+	include/alibabacloud/imm/model/GetOfficeConversionTaskResult.h
+	include/alibabacloud/imm/model/CreateTagSetRequest.h
+	include/alibabacloud/imm/model/CreateTagSetResult.h
+	include/alibabacloud/imm/model/RegistFaceRequest.h
+	include/alibabacloud/imm/model/RegistFaceResult.h
+	include/alibabacloud/imm/model/FindSimilarFacesRequest.h
+	include/alibabacloud/imm/model/FindSimilarFacesResult.h
+	include/alibabacloud/imm/model/GetFaceSearchUserRequest.h
+	include/alibabacloud/imm/model/GetFaceSearchUserResult.h
+	include/alibabacloud/imm/model/DeleteImageJobRequest.h
+	include/alibabacloud/imm/model/DeleteImageJobResult.h
+	include/alibabacloud/imm/model/CreateFaceSetRequest.h
+	include/alibabacloud/imm/model/CreateFaceSetResult.h
+	include/alibabacloud/imm/model/DeleteFaceSearchGroupRequest.h
+	include/alibabacloud/imm/model/DeleteFaceSearchGroupResult.h
+	include/alibabacloud/imm/model/GetDocIndexRequest.h
+	include/alibabacloud/imm/model/GetDocIndexResult.h
+	include/alibabacloud/imm/model/IndexImageRequest.h
+	include/alibabacloud/imm/model/IndexImageResult.h
+	include/alibabacloud/imm/model/DetectImageTextsRequest.h
+	include/alibabacloud/imm/model/DetectImageTextsResult.h
+	include/alibabacloud/imm/model/ListImageJobsRequest.h
+	include/alibabacloud/imm/model/ListImageJobsResult.h
+	include/alibabacloud/imm/model/CreateGroupFacesJobRequest.h
+	include/alibabacloud/imm/model/CreateGroupFacesJobResult.h
+	include/alibabacloud/imm/model/UpdateImageRequest.h
+	include/alibabacloud/imm/model/UpdateImageResult.h
+	include/alibabacloud/imm/model/ListVideoTasksRequest.h
+	include/alibabacloud/imm/model/ListVideoTasksResult.h
+	include/alibabacloud/imm/model/UpdateProjectRequest.h
+	include/alibabacloud/imm/model/UpdateProjectResult.h
+	include/alibabacloud/imm/model/DeleteVideoRequest.h
+	include/alibabacloud/imm/model/DeleteVideoResult.h
+	include/alibabacloud/imm/model/ListOfficeConversionTaskRequest.h
+	include/alibabacloud/imm/model/ListOfficeConversionTaskResult.h
+	include/alibabacloud/imm/model/UpdateSetRequest.h
+	include/alibabacloud/imm/model/UpdateSetResult.h )
+
+set(imm_src 
+	src/ImmClient.cc
+	src/model/ListPornBatchDetectJobsRequest.cc
+	src/model/ListPornBatchDetectJobsResult.cc
+	src/model/DetectImageFacesRequest.cc
+	src/model/DetectImageFacesResult.cc
+	src/model/DetectImageTagsRequest.cc
+	src/model/DetectImageTagsResult.cc
+	src/model/DeleteImageRequest.cc
+	src/model/DeleteImageResult.cc
+	src/model/CreateTagJobRequest.cc
+	src/model/CreateTagJobResult.cc
+	src/model/IndexTagRequest.cc
+	src/model/IndexTagResult.cc
+	src/model/ListProjectsRequest.cc
+	src/model/ListProjectsResult.cc
+	src/model/DeleteSetRequest.cc
+	src/model/DeleteSetResult.cc
+	src/model/GetFaceSearchImageRequest.cc
+	src/model/GetFaceSearchImageResult.cc
+	src/model/CreateVideoAnalyseTaskRequest.cc
+	src/model/CreateVideoAnalyseTaskResult.cc
+	src/model/CompareFaceRequest.cc
+	src/model/CompareFaceResult.cc
+	src/model/DetectTagRequest.cc
+	src/model/DetectTagResult.cc
+	src/model/ListFaceSearchGroupUsersRequest.cc
+	src/model/ListFaceSearchGroupUsersResult.cc
+	src/model/ListFaceSearchGroupImagesRequest.cc
+	src/model/ListFaceSearchGroupImagesResult.cc
+	src/model/CreateCADConversionTaskRequest.cc
+	src/model/CreateCADConversionTaskResult.cc
+	src/model/GetTagJobRequest.cc
+	src/model/GetTagJobResult.cc
+	src/model/DeleteFaceJobRequest.cc
+	src/model/DeleteFaceJobResult.cc
+	src/model/CreateDocIndexTaskRequest.cc
+	src/model/CreateDocIndexTaskResult.cc
+	src/model/PutProjectRequest.cc
+	src/model/PutProjectResult.cc
+	src/model/GetSetRequest.cc
+	src/model/GetSetResult.cc
+	src/model/GetVideoTaskRequest.cc
+	src/model/GetVideoTaskResult.cc
+	src/model/ListSetsRequest.cc
+	src/model/ListSetsResult.cc
+	src/model/SearchDocIndexRequest.cc
+	src/model/SearchDocIndexResult.cc
+	src/model/ListPhotoProcessTasksRequest.cc
+	src/model/ListPhotoProcessTasksResult.cc
+	src/model/ListVideosRequest.cc
+	src/model/ListVideosResult.cc
+	src/model/CreatePornBatchDetectJobRequest.cc
+	src/model/CreatePornBatchDetectJobResult.cc
+	src/model/FindImagesRequest.cc
+	src/model/FindImagesResult.cc
+	src/model/DeleteTagByNameRequest.cc
+	src/model/DeleteTagByNameResult.cc
+	src/model/DetectImageLogosRequest.cc
+	src/model/DetectImageLogosResult.cc
+	src/model/GetProjectRequest.cc
+	src/model/GetProjectResult.cc
+	src/model/DeletePhotoProcessTaskRequest.cc
+	src/model/DeletePhotoProcessTaskResult.cc
+	src/model/ListSetTagsRequest.cc
+	src/model/ListSetTagsResult.cc
+	src/model/DeleteVideoTaskRequest.cc
+	src/model/DeleteVideoTaskResult.cc
+	src/model/FindImagesByTagNamesRequest.cc
+	src/model/FindImagesByTagNamesResult.cc
+	src/model/DeleteTagSetRequest.cc
+	src/model/DeleteTagSetResult.cc
+	src/model/DeleteProjectRequest.cc
+	src/model/DeleteProjectResult.cc
+	src/model/UpdateDocIndexMetaRequest.cc
+	src/model/UpdateDocIndexMetaResult.cc
+	src/model/SearchFaceRequest.cc
+	src/model/SearchFaceResult.cc
+	src/model/GetImageRequest.cc
+	src/model/GetImageResult.cc
+	src/model/DetectImageCelebrityRequest.cc
+	src/model/DetectImageCelebrityResult.cc
+	src/model/CreateSetRequest.cc
+	src/model/CreateSetResult.cc
+	src/model/DeletePornBatchDetectJobRequest.cc
+	src/model/DeletePornBatchDetectJobResult.cc
+	src/model/ListFaceSearchGroupsRequest.cc
+	src/model/ListFaceSearchGroupsResult.cc
+	src/model/GetTagSetRequest.cc
+	src/model/GetTagSetResult.cc
+	src/model/ConvertOfficeFormatRequest.cc
+	src/model/ConvertOfficeFormatResult.cc
+	src/model/ListTagPhotosRequest.cc
+	src/model/ListTagPhotosResult.cc
+	src/model/DeleteFaceSearchImageByIdRequest.cc
+	src/model/DeleteFaceSearchImageByIdResult.cc
+	src/model/IndexVideoRequest.cc
+	src/model/IndexVideoResult.cc
+	src/model/DeleteDocIndexRequest.cc
+	src/model/DeleteDocIndexResult.cc
+	src/model/GetDocIndexTaskRequest.cc
+	src/model/GetDocIndexTaskResult.cc
+	src/model/GetImageJobRequest.cc
+	src/model/GetImageJobResult.cc
+	src/model/ListVideoAudiosRequest.cc
+	src/model/ListVideoAudiosResult.cc
+	src/model/DeleteTagByUrlRequest.cc
+	src/model/DeleteTagByUrlResult.cc
+	src/model/ListTagSetsRequest.cc
+	src/model/ListTagSetsResult.cc
+	src/model/ListTagNamesRequest.cc
+	src/model/ListTagNamesResult.cc
+	src/model/CreateOfficeConversionTaskRequest.cc
+	src/model/CreateOfficeConversionTaskResult.cc
+	src/model/DetectQRCodesRequest.cc
+	src/model/DetectQRCodesResult.cc
+	src/model/GetFaceSearchGroupRequest.cc
+	src/model/GetFaceSearchGroupResult.cc
+	src/model/GetVideoRequest.cc
+	src/model/GetVideoResult.cc
+	src/model/ListImagesRequest.cc
+	src/model/ListImagesResult.cc
+	src/model/CompareImageFacesRequest.cc
+	src/model/CompareImageFacesResult.cc
+	src/model/DeleteTagJobRequest.cc
+	src/model/DeleteTagJobResult.cc
+	src/model/DeleteOfficeConversionTaskRequest.cc
+	src/model/DeleteOfficeConversionTaskResult.cc
+	src/model/PhotoProcessRequest.cc
+	src/model/PhotoProcessResult.cc
+	src/model/GetPhotoProcessTaskRequest.cc
+	src/model/GetPhotoProcessTaskResult.cc
+	src/model/ListVideoFramesRequest.cc
+	src/model/ListVideoFramesResult.cc
+	src/model/GetPornBatchDetectJobRequest.cc
+	src/model/GetPornBatchDetectJobResult.cc
+	src/model/DetectLogoRequest.cc
+	src/model/DetectLogoResult.cc
+	src/model/DetectClothesRequest.cc
+	src/model/DetectClothesResult.cc
+	src/model/ListTagJobsRequest.cc
+	src/model/ListTagJobsResult.cc
+	src/model/DescribeRegionsRequest.cc
+	src/model/DescribeRegionsResult.cc
+	src/model/DeleteFaceSearchUserRequest.cc
+	src/model/DeleteFaceSearchUserResult.cc
+	src/model/GetOfficeConversionTaskRequest.cc
+	src/model/GetOfficeConversionTaskResult.cc
+	src/model/CreateTagSetRequest.cc
+	src/model/CreateTagSetResult.cc
+	src/model/RegistFaceRequest.cc
+	src/model/RegistFaceResult.cc
+	src/model/FindSimilarFacesRequest.cc
+	src/model/FindSimilarFacesResult.cc
+	src/model/GetFaceSearchUserRequest.cc
+	src/model/GetFaceSearchUserResult.cc
+	src/model/DeleteImageJobRequest.cc
+	src/model/DeleteImageJobResult.cc
+	src/model/CreateFaceSetRequest.cc
+	src/model/CreateFaceSetResult.cc
+	src/model/DeleteFaceSearchGroupRequest.cc
+	src/model/DeleteFaceSearchGroupResult.cc
+	src/model/GetDocIndexRequest.cc
+	src/model/GetDocIndexResult.cc
+	src/model/IndexImageRequest.cc
+	src/model/IndexImageResult.cc
+	src/model/DetectImageTextsRequest.cc
+	src/model/DetectImageTextsResult.cc
+	src/model/ListImageJobsRequest.cc
+	src/model/ListImageJobsResult.cc
+	src/model/CreateGroupFacesJobRequest.cc
+	src/model/CreateGroupFacesJobResult.cc
+	src/model/UpdateImageRequest.cc
+	src/model/UpdateImageResult.cc
+	src/model/ListVideoTasksRequest.cc
+	src/model/ListVideoTasksResult.cc
+	src/model/UpdateProjectRequest.cc
+	src/model/UpdateProjectResult.cc
+	src/model/DeleteVideoRequest.cc
+	src/model/DeleteVideoResult.cc
+	src/model/ListOfficeConversionTaskRequest.cc
+	src/model/ListOfficeConversionTaskResult.cc
+	src/model/UpdateSetRequest.cc
+	src/model/UpdateSetResult.cc )
+
+add_library(imm ${LIB_TYPE}
+	${imm_public_header}
+	${imm_public_header_model}
+	${imm_src})
+
+set_target_properties(imm
+	PROPERTIES
+	LINKER_LANGUAGE CXX
+	ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
+	OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX}imm
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(imm
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_IMM_LIBRARY)
+endif()
+
+target_include_directories(imm
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(imm
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(imm
+		jsoncpp)
+	target_include_directories(imm
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(imm
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(imm
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(imm
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(imm
+		jsoncpp)
+endif()
+
+install(FILES ${imm_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/imm)
+install(FILES ${imm_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/imm/model)
+install(TARGETS imm
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 774 - 0
imm/include/alibabacloud/imm/ImmClient.h

@@ -0,0 +1,774 @@
+/*
+ * 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_IMM_IMMCLIENT_H_
+#define ALIBABACLOUD_IMM_IMMCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "ImmExport.h"
+#include "model/ListPornBatchDetectJobsRequest.h"
+#include "model/ListPornBatchDetectJobsResult.h"
+#include "model/DetectImageFacesRequest.h"
+#include "model/DetectImageFacesResult.h"
+#include "model/DetectImageTagsRequest.h"
+#include "model/DetectImageTagsResult.h"
+#include "model/DeleteImageRequest.h"
+#include "model/DeleteImageResult.h"
+#include "model/CreateTagJobRequest.h"
+#include "model/CreateTagJobResult.h"
+#include "model/IndexTagRequest.h"
+#include "model/IndexTagResult.h"
+#include "model/ListProjectsRequest.h"
+#include "model/ListProjectsResult.h"
+#include "model/DeleteSetRequest.h"
+#include "model/DeleteSetResult.h"
+#include "model/GetFaceSearchImageRequest.h"
+#include "model/GetFaceSearchImageResult.h"
+#include "model/CreateVideoAnalyseTaskRequest.h"
+#include "model/CreateVideoAnalyseTaskResult.h"
+#include "model/CompareFaceRequest.h"
+#include "model/CompareFaceResult.h"
+#include "model/DetectTagRequest.h"
+#include "model/DetectTagResult.h"
+#include "model/ListFaceSearchGroupUsersRequest.h"
+#include "model/ListFaceSearchGroupUsersResult.h"
+#include "model/ListFaceSearchGroupImagesRequest.h"
+#include "model/ListFaceSearchGroupImagesResult.h"
+#include "model/CreateCADConversionTaskRequest.h"
+#include "model/CreateCADConversionTaskResult.h"
+#include "model/GetTagJobRequest.h"
+#include "model/GetTagJobResult.h"
+#include "model/DeleteFaceJobRequest.h"
+#include "model/DeleteFaceJobResult.h"
+#include "model/CreateDocIndexTaskRequest.h"
+#include "model/CreateDocIndexTaskResult.h"
+#include "model/PutProjectRequest.h"
+#include "model/PutProjectResult.h"
+#include "model/GetSetRequest.h"
+#include "model/GetSetResult.h"
+#include "model/GetVideoTaskRequest.h"
+#include "model/GetVideoTaskResult.h"
+#include "model/ListSetsRequest.h"
+#include "model/ListSetsResult.h"
+#include "model/SearchDocIndexRequest.h"
+#include "model/SearchDocIndexResult.h"
+#include "model/ListPhotoProcessTasksRequest.h"
+#include "model/ListPhotoProcessTasksResult.h"
+#include "model/ListVideosRequest.h"
+#include "model/ListVideosResult.h"
+#include "model/CreatePornBatchDetectJobRequest.h"
+#include "model/CreatePornBatchDetectJobResult.h"
+#include "model/FindImagesRequest.h"
+#include "model/FindImagesResult.h"
+#include "model/DeleteTagByNameRequest.h"
+#include "model/DeleteTagByNameResult.h"
+#include "model/DetectImageLogosRequest.h"
+#include "model/DetectImageLogosResult.h"
+#include "model/GetProjectRequest.h"
+#include "model/GetProjectResult.h"
+#include "model/DeletePhotoProcessTaskRequest.h"
+#include "model/DeletePhotoProcessTaskResult.h"
+#include "model/ListSetTagsRequest.h"
+#include "model/ListSetTagsResult.h"
+#include "model/DeleteVideoTaskRequest.h"
+#include "model/DeleteVideoTaskResult.h"
+#include "model/FindImagesByTagNamesRequest.h"
+#include "model/FindImagesByTagNamesResult.h"
+#include "model/DeleteTagSetRequest.h"
+#include "model/DeleteTagSetResult.h"
+#include "model/DeleteProjectRequest.h"
+#include "model/DeleteProjectResult.h"
+#include "model/UpdateDocIndexMetaRequest.h"
+#include "model/UpdateDocIndexMetaResult.h"
+#include "model/SearchFaceRequest.h"
+#include "model/SearchFaceResult.h"
+#include "model/GetImageRequest.h"
+#include "model/GetImageResult.h"
+#include "model/DetectImageCelebrityRequest.h"
+#include "model/DetectImageCelebrityResult.h"
+#include "model/CreateSetRequest.h"
+#include "model/CreateSetResult.h"
+#include "model/DeletePornBatchDetectJobRequest.h"
+#include "model/DeletePornBatchDetectJobResult.h"
+#include "model/ListFaceSearchGroupsRequest.h"
+#include "model/ListFaceSearchGroupsResult.h"
+#include "model/GetTagSetRequest.h"
+#include "model/GetTagSetResult.h"
+#include "model/ConvertOfficeFormatRequest.h"
+#include "model/ConvertOfficeFormatResult.h"
+#include "model/ListTagPhotosRequest.h"
+#include "model/ListTagPhotosResult.h"
+#include "model/DeleteFaceSearchImageByIdRequest.h"
+#include "model/DeleteFaceSearchImageByIdResult.h"
+#include "model/IndexVideoRequest.h"
+#include "model/IndexVideoResult.h"
+#include "model/DeleteDocIndexRequest.h"
+#include "model/DeleteDocIndexResult.h"
+#include "model/GetDocIndexTaskRequest.h"
+#include "model/GetDocIndexTaskResult.h"
+#include "model/GetImageJobRequest.h"
+#include "model/GetImageJobResult.h"
+#include "model/ListVideoAudiosRequest.h"
+#include "model/ListVideoAudiosResult.h"
+#include "model/DeleteTagByUrlRequest.h"
+#include "model/DeleteTagByUrlResult.h"
+#include "model/ListTagSetsRequest.h"
+#include "model/ListTagSetsResult.h"
+#include "model/ListTagNamesRequest.h"
+#include "model/ListTagNamesResult.h"
+#include "model/CreateOfficeConversionTaskRequest.h"
+#include "model/CreateOfficeConversionTaskResult.h"
+#include "model/DetectQRCodesRequest.h"
+#include "model/DetectQRCodesResult.h"
+#include "model/GetFaceSearchGroupRequest.h"
+#include "model/GetFaceSearchGroupResult.h"
+#include "model/GetVideoRequest.h"
+#include "model/GetVideoResult.h"
+#include "model/ListImagesRequest.h"
+#include "model/ListImagesResult.h"
+#include "model/CompareImageFacesRequest.h"
+#include "model/CompareImageFacesResult.h"
+#include "model/DeleteTagJobRequest.h"
+#include "model/DeleteTagJobResult.h"
+#include "model/DeleteOfficeConversionTaskRequest.h"
+#include "model/DeleteOfficeConversionTaskResult.h"
+#include "model/PhotoProcessRequest.h"
+#include "model/PhotoProcessResult.h"
+#include "model/GetPhotoProcessTaskRequest.h"
+#include "model/GetPhotoProcessTaskResult.h"
+#include "model/ListVideoFramesRequest.h"
+#include "model/ListVideoFramesResult.h"
+#include "model/GetPornBatchDetectJobRequest.h"
+#include "model/GetPornBatchDetectJobResult.h"
+#include "model/DetectLogoRequest.h"
+#include "model/DetectLogoResult.h"
+#include "model/DetectClothesRequest.h"
+#include "model/DetectClothesResult.h"
+#include "model/ListTagJobsRequest.h"
+#include "model/ListTagJobsResult.h"
+#include "model/DescribeRegionsRequest.h"
+#include "model/DescribeRegionsResult.h"
+#include "model/DeleteFaceSearchUserRequest.h"
+#include "model/DeleteFaceSearchUserResult.h"
+#include "model/GetOfficeConversionTaskRequest.h"
+#include "model/GetOfficeConversionTaskResult.h"
+#include "model/CreateTagSetRequest.h"
+#include "model/CreateTagSetResult.h"
+#include "model/RegistFaceRequest.h"
+#include "model/RegistFaceResult.h"
+#include "model/FindSimilarFacesRequest.h"
+#include "model/FindSimilarFacesResult.h"
+#include "model/GetFaceSearchUserRequest.h"
+#include "model/GetFaceSearchUserResult.h"
+#include "model/DeleteImageJobRequest.h"
+#include "model/DeleteImageJobResult.h"
+#include "model/CreateFaceSetRequest.h"
+#include "model/CreateFaceSetResult.h"
+#include "model/DeleteFaceSearchGroupRequest.h"
+#include "model/DeleteFaceSearchGroupResult.h"
+#include "model/GetDocIndexRequest.h"
+#include "model/GetDocIndexResult.h"
+#include "model/IndexImageRequest.h"
+#include "model/IndexImageResult.h"
+#include "model/DetectImageTextsRequest.h"
+#include "model/DetectImageTextsResult.h"
+#include "model/ListImageJobsRequest.h"
+#include "model/ListImageJobsResult.h"
+#include "model/CreateGroupFacesJobRequest.h"
+#include "model/CreateGroupFacesJobResult.h"
+#include "model/UpdateImageRequest.h"
+#include "model/UpdateImageResult.h"
+#include "model/ListVideoTasksRequest.h"
+#include "model/ListVideoTasksResult.h"
+#include "model/UpdateProjectRequest.h"
+#include "model/UpdateProjectResult.h"
+#include "model/DeleteVideoRequest.h"
+#include "model/DeleteVideoResult.h"
+#include "model/ListOfficeConversionTaskRequest.h"
+#include "model/ListOfficeConversionTaskResult.h"
+#include "model/UpdateSetRequest.h"
+#include "model/UpdateSetResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		class ALIBABACLOUD_IMM_EXPORT ImmClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::ListPornBatchDetectJobsResult> ListPornBatchDetectJobsOutcome;
+			typedef std::future<ListPornBatchDetectJobsOutcome> ListPornBatchDetectJobsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListPornBatchDetectJobsRequest&, const ListPornBatchDetectJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListPornBatchDetectJobsAsyncHandler;
+			typedef Outcome<Error, Model::DetectImageFacesResult> DetectImageFacesOutcome;
+			typedef std::future<DetectImageFacesOutcome> DetectImageFacesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectImageFacesRequest&, const DetectImageFacesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectImageFacesAsyncHandler;
+			typedef Outcome<Error, Model::DetectImageTagsResult> DetectImageTagsOutcome;
+			typedef std::future<DetectImageTagsOutcome> DetectImageTagsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectImageTagsRequest&, const DetectImageTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectImageTagsAsyncHandler;
+			typedef Outcome<Error, Model::DeleteImageResult> DeleteImageOutcome;
+			typedef std::future<DeleteImageOutcome> DeleteImageOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteImageRequest&, const DeleteImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteImageAsyncHandler;
+			typedef Outcome<Error, Model::CreateTagJobResult> CreateTagJobOutcome;
+			typedef std::future<CreateTagJobOutcome> CreateTagJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateTagJobRequest&, const CreateTagJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTagJobAsyncHandler;
+			typedef Outcome<Error, Model::IndexTagResult> IndexTagOutcome;
+			typedef std::future<IndexTagOutcome> IndexTagOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::IndexTagRequest&, const IndexTagOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> IndexTagAsyncHandler;
+			typedef Outcome<Error, Model::ListProjectsResult> ListProjectsOutcome;
+			typedef std::future<ListProjectsOutcome> ListProjectsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListProjectsRequest&, const ListProjectsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListProjectsAsyncHandler;
+			typedef Outcome<Error, Model::DeleteSetResult> DeleteSetOutcome;
+			typedef std::future<DeleteSetOutcome> DeleteSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteSetRequest&, const DeleteSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteSetAsyncHandler;
+			typedef Outcome<Error, Model::GetFaceSearchImageResult> GetFaceSearchImageOutcome;
+			typedef std::future<GetFaceSearchImageOutcome> GetFaceSearchImageOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetFaceSearchImageRequest&, const GetFaceSearchImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetFaceSearchImageAsyncHandler;
+			typedef Outcome<Error, Model::CreateVideoAnalyseTaskResult> CreateVideoAnalyseTaskOutcome;
+			typedef std::future<CreateVideoAnalyseTaskOutcome> CreateVideoAnalyseTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateVideoAnalyseTaskRequest&, const CreateVideoAnalyseTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateVideoAnalyseTaskAsyncHandler;
+			typedef Outcome<Error, Model::CompareFaceResult> CompareFaceOutcome;
+			typedef std::future<CompareFaceOutcome> CompareFaceOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CompareFaceRequest&, const CompareFaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CompareFaceAsyncHandler;
+			typedef Outcome<Error, Model::DetectTagResult> DetectTagOutcome;
+			typedef std::future<DetectTagOutcome> DetectTagOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectTagRequest&, const DetectTagOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectTagAsyncHandler;
+			typedef Outcome<Error, Model::ListFaceSearchGroupUsersResult> ListFaceSearchGroupUsersOutcome;
+			typedef std::future<ListFaceSearchGroupUsersOutcome> ListFaceSearchGroupUsersOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListFaceSearchGroupUsersRequest&, const ListFaceSearchGroupUsersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListFaceSearchGroupUsersAsyncHandler;
+			typedef Outcome<Error, Model::ListFaceSearchGroupImagesResult> ListFaceSearchGroupImagesOutcome;
+			typedef std::future<ListFaceSearchGroupImagesOutcome> ListFaceSearchGroupImagesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListFaceSearchGroupImagesRequest&, const ListFaceSearchGroupImagesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListFaceSearchGroupImagesAsyncHandler;
+			typedef Outcome<Error, Model::CreateCADConversionTaskResult> CreateCADConversionTaskOutcome;
+			typedef std::future<CreateCADConversionTaskOutcome> CreateCADConversionTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateCADConversionTaskRequest&, const CreateCADConversionTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateCADConversionTaskAsyncHandler;
+			typedef Outcome<Error, Model::GetTagJobResult> GetTagJobOutcome;
+			typedef std::future<GetTagJobOutcome> GetTagJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetTagJobRequest&, const GetTagJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetTagJobAsyncHandler;
+			typedef Outcome<Error, Model::DeleteFaceJobResult> DeleteFaceJobOutcome;
+			typedef std::future<DeleteFaceJobOutcome> DeleteFaceJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteFaceJobRequest&, const DeleteFaceJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteFaceJobAsyncHandler;
+			typedef Outcome<Error, Model::CreateDocIndexTaskResult> CreateDocIndexTaskOutcome;
+			typedef std::future<CreateDocIndexTaskOutcome> CreateDocIndexTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateDocIndexTaskRequest&, const CreateDocIndexTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateDocIndexTaskAsyncHandler;
+			typedef Outcome<Error, Model::PutProjectResult> PutProjectOutcome;
+			typedef std::future<PutProjectOutcome> PutProjectOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::PutProjectRequest&, const PutProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PutProjectAsyncHandler;
+			typedef Outcome<Error, Model::GetSetResult> GetSetOutcome;
+			typedef std::future<GetSetOutcome> GetSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetSetRequest&, const GetSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetSetAsyncHandler;
+			typedef Outcome<Error, Model::GetVideoTaskResult> GetVideoTaskOutcome;
+			typedef std::future<GetVideoTaskOutcome> GetVideoTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetVideoTaskRequest&, const GetVideoTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetVideoTaskAsyncHandler;
+			typedef Outcome<Error, Model::ListSetsResult> ListSetsOutcome;
+			typedef std::future<ListSetsOutcome> ListSetsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListSetsRequest&, const ListSetsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSetsAsyncHandler;
+			typedef Outcome<Error, Model::SearchDocIndexResult> SearchDocIndexOutcome;
+			typedef std::future<SearchDocIndexOutcome> SearchDocIndexOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::SearchDocIndexRequest&, const SearchDocIndexOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SearchDocIndexAsyncHandler;
+			typedef Outcome<Error, Model::ListPhotoProcessTasksResult> ListPhotoProcessTasksOutcome;
+			typedef std::future<ListPhotoProcessTasksOutcome> ListPhotoProcessTasksOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListPhotoProcessTasksRequest&, const ListPhotoProcessTasksOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListPhotoProcessTasksAsyncHandler;
+			typedef Outcome<Error, Model::ListVideosResult> ListVideosOutcome;
+			typedef std::future<ListVideosOutcome> ListVideosOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListVideosRequest&, const ListVideosOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListVideosAsyncHandler;
+			typedef Outcome<Error, Model::CreatePornBatchDetectJobResult> CreatePornBatchDetectJobOutcome;
+			typedef std::future<CreatePornBatchDetectJobOutcome> CreatePornBatchDetectJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreatePornBatchDetectJobRequest&, const CreatePornBatchDetectJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreatePornBatchDetectJobAsyncHandler;
+			typedef Outcome<Error, Model::FindImagesResult> FindImagesOutcome;
+			typedef std::future<FindImagesOutcome> FindImagesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::FindImagesRequest&, const FindImagesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> FindImagesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTagByNameResult> DeleteTagByNameOutcome;
+			typedef std::future<DeleteTagByNameOutcome> DeleteTagByNameOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteTagByNameRequest&, const DeleteTagByNameOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTagByNameAsyncHandler;
+			typedef Outcome<Error, Model::DetectImageLogosResult> DetectImageLogosOutcome;
+			typedef std::future<DetectImageLogosOutcome> DetectImageLogosOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectImageLogosRequest&, const DetectImageLogosOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectImageLogosAsyncHandler;
+			typedef Outcome<Error, Model::GetProjectResult> GetProjectOutcome;
+			typedef std::future<GetProjectOutcome> GetProjectOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetProjectRequest&, const GetProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetProjectAsyncHandler;
+			typedef Outcome<Error, Model::DeletePhotoProcessTaskResult> DeletePhotoProcessTaskOutcome;
+			typedef std::future<DeletePhotoProcessTaskOutcome> DeletePhotoProcessTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeletePhotoProcessTaskRequest&, const DeletePhotoProcessTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeletePhotoProcessTaskAsyncHandler;
+			typedef Outcome<Error, Model::ListSetTagsResult> ListSetTagsOutcome;
+			typedef std::future<ListSetTagsOutcome> ListSetTagsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListSetTagsRequest&, const ListSetTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSetTagsAsyncHandler;
+			typedef Outcome<Error, Model::DeleteVideoTaskResult> DeleteVideoTaskOutcome;
+			typedef std::future<DeleteVideoTaskOutcome> DeleteVideoTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteVideoTaskRequest&, const DeleteVideoTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVideoTaskAsyncHandler;
+			typedef Outcome<Error, Model::FindImagesByTagNamesResult> FindImagesByTagNamesOutcome;
+			typedef std::future<FindImagesByTagNamesOutcome> FindImagesByTagNamesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::FindImagesByTagNamesRequest&, const FindImagesByTagNamesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> FindImagesByTagNamesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTagSetResult> DeleteTagSetOutcome;
+			typedef std::future<DeleteTagSetOutcome> DeleteTagSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteTagSetRequest&, const DeleteTagSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTagSetAsyncHandler;
+			typedef Outcome<Error, Model::DeleteProjectResult> DeleteProjectOutcome;
+			typedef std::future<DeleteProjectOutcome> DeleteProjectOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteProjectRequest&, const DeleteProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteProjectAsyncHandler;
+			typedef Outcome<Error, Model::UpdateDocIndexMetaResult> UpdateDocIndexMetaOutcome;
+			typedef std::future<UpdateDocIndexMetaOutcome> UpdateDocIndexMetaOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::UpdateDocIndexMetaRequest&, const UpdateDocIndexMetaOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateDocIndexMetaAsyncHandler;
+			typedef Outcome<Error, Model::SearchFaceResult> SearchFaceOutcome;
+			typedef std::future<SearchFaceOutcome> SearchFaceOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::SearchFaceRequest&, const SearchFaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SearchFaceAsyncHandler;
+			typedef Outcome<Error, Model::GetImageResult> GetImageOutcome;
+			typedef std::future<GetImageOutcome> GetImageOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetImageRequest&, const GetImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetImageAsyncHandler;
+			typedef Outcome<Error, Model::DetectImageCelebrityResult> DetectImageCelebrityOutcome;
+			typedef std::future<DetectImageCelebrityOutcome> DetectImageCelebrityOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectImageCelebrityRequest&, const DetectImageCelebrityOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectImageCelebrityAsyncHandler;
+			typedef Outcome<Error, Model::CreateSetResult> CreateSetOutcome;
+			typedef std::future<CreateSetOutcome> CreateSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateSetRequest&, const CreateSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateSetAsyncHandler;
+			typedef Outcome<Error, Model::DeletePornBatchDetectJobResult> DeletePornBatchDetectJobOutcome;
+			typedef std::future<DeletePornBatchDetectJobOutcome> DeletePornBatchDetectJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeletePornBatchDetectJobRequest&, const DeletePornBatchDetectJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeletePornBatchDetectJobAsyncHandler;
+			typedef Outcome<Error, Model::ListFaceSearchGroupsResult> ListFaceSearchGroupsOutcome;
+			typedef std::future<ListFaceSearchGroupsOutcome> ListFaceSearchGroupsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListFaceSearchGroupsRequest&, const ListFaceSearchGroupsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListFaceSearchGroupsAsyncHandler;
+			typedef Outcome<Error, Model::GetTagSetResult> GetTagSetOutcome;
+			typedef std::future<GetTagSetOutcome> GetTagSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetTagSetRequest&, const GetTagSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetTagSetAsyncHandler;
+			typedef Outcome<Error, Model::ConvertOfficeFormatResult> ConvertOfficeFormatOutcome;
+			typedef std::future<ConvertOfficeFormatOutcome> ConvertOfficeFormatOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ConvertOfficeFormatRequest&, const ConvertOfficeFormatOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ConvertOfficeFormatAsyncHandler;
+			typedef Outcome<Error, Model::ListTagPhotosResult> ListTagPhotosOutcome;
+			typedef std::future<ListTagPhotosOutcome> ListTagPhotosOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListTagPhotosRequest&, const ListTagPhotosOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagPhotosAsyncHandler;
+			typedef Outcome<Error, Model::DeleteFaceSearchImageByIdResult> DeleteFaceSearchImageByIdOutcome;
+			typedef std::future<DeleteFaceSearchImageByIdOutcome> DeleteFaceSearchImageByIdOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteFaceSearchImageByIdRequest&, const DeleteFaceSearchImageByIdOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteFaceSearchImageByIdAsyncHandler;
+			typedef Outcome<Error, Model::IndexVideoResult> IndexVideoOutcome;
+			typedef std::future<IndexVideoOutcome> IndexVideoOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::IndexVideoRequest&, const IndexVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> IndexVideoAsyncHandler;
+			typedef Outcome<Error, Model::DeleteDocIndexResult> DeleteDocIndexOutcome;
+			typedef std::future<DeleteDocIndexOutcome> DeleteDocIndexOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteDocIndexRequest&, const DeleteDocIndexOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteDocIndexAsyncHandler;
+			typedef Outcome<Error, Model::GetDocIndexTaskResult> GetDocIndexTaskOutcome;
+			typedef std::future<GetDocIndexTaskOutcome> GetDocIndexTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetDocIndexTaskRequest&, const GetDocIndexTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDocIndexTaskAsyncHandler;
+			typedef Outcome<Error, Model::GetImageJobResult> GetImageJobOutcome;
+			typedef std::future<GetImageJobOutcome> GetImageJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetImageJobRequest&, const GetImageJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetImageJobAsyncHandler;
+			typedef Outcome<Error, Model::ListVideoAudiosResult> ListVideoAudiosOutcome;
+			typedef std::future<ListVideoAudiosOutcome> ListVideoAudiosOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListVideoAudiosRequest&, const ListVideoAudiosOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListVideoAudiosAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTagByUrlResult> DeleteTagByUrlOutcome;
+			typedef std::future<DeleteTagByUrlOutcome> DeleteTagByUrlOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteTagByUrlRequest&, const DeleteTagByUrlOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTagByUrlAsyncHandler;
+			typedef Outcome<Error, Model::ListTagSetsResult> ListTagSetsOutcome;
+			typedef std::future<ListTagSetsOutcome> ListTagSetsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListTagSetsRequest&, const ListTagSetsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagSetsAsyncHandler;
+			typedef Outcome<Error, Model::ListTagNamesResult> ListTagNamesOutcome;
+			typedef std::future<ListTagNamesOutcome> ListTagNamesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListTagNamesRequest&, const ListTagNamesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagNamesAsyncHandler;
+			typedef Outcome<Error, Model::CreateOfficeConversionTaskResult> CreateOfficeConversionTaskOutcome;
+			typedef std::future<CreateOfficeConversionTaskOutcome> CreateOfficeConversionTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateOfficeConversionTaskRequest&, const CreateOfficeConversionTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateOfficeConversionTaskAsyncHandler;
+			typedef Outcome<Error, Model::DetectQRCodesResult> DetectQRCodesOutcome;
+			typedef std::future<DetectQRCodesOutcome> DetectQRCodesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectQRCodesRequest&, const DetectQRCodesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectQRCodesAsyncHandler;
+			typedef Outcome<Error, Model::GetFaceSearchGroupResult> GetFaceSearchGroupOutcome;
+			typedef std::future<GetFaceSearchGroupOutcome> GetFaceSearchGroupOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetFaceSearchGroupRequest&, const GetFaceSearchGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetFaceSearchGroupAsyncHandler;
+			typedef Outcome<Error, Model::GetVideoResult> GetVideoOutcome;
+			typedef std::future<GetVideoOutcome> GetVideoOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetVideoRequest&, const GetVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetVideoAsyncHandler;
+			typedef Outcome<Error, Model::ListImagesResult> ListImagesOutcome;
+			typedef std::future<ListImagesOutcome> ListImagesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListImagesRequest&, const ListImagesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListImagesAsyncHandler;
+			typedef Outcome<Error, Model::CompareImageFacesResult> CompareImageFacesOutcome;
+			typedef std::future<CompareImageFacesOutcome> CompareImageFacesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CompareImageFacesRequest&, const CompareImageFacesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CompareImageFacesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTagJobResult> DeleteTagJobOutcome;
+			typedef std::future<DeleteTagJobOutcome> DeleteTagJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteTagJobRequest&, const DeleteTagJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTagJobAsyncHandler;
+			typedef Outcome<Error, Model::DeleteOfficeConversionTaskResult> DeleteOfficeConversionTaskOutcome;
+			typedef std::future<DeleteOfficeConversionTaskOutcome> DeleteOfficeConversionTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteOfficeConversionTaskRequest&, const DeleteOfficeConversionTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteOfficeConversionTaskAsyncHandler;
+			typedef Outcome<Error, Model::PhotoProcessResult> PhotoProcessOutcome;
+			typedef std::future<PhotoProcessOutcome> PhotoProcessOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::PhotoProcessRequest&, const PhotoProcessOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PhotoProcessAsyncHandler;
+			typedef Outcome<Error, Model::GetPhotoProcessTaskResult> GetPhotoProcessTaskOutcome;
+			typedef std::future<GetPhotoProcessTaskOutcome> GetPhotoProcessTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetPhotoProcessTaskRequest&, const GetPhotoProcessTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetPhotoProcessTaskAsyncHandler;
+			typedef Outcome<Error, Model::ListVideoFramesResult> ListVideoFramesOutcome;
+			typedef std::future<ListVideoFramesOutcome> ListVideoFramesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListVideoFramesRequest&, const ListVideoFramesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListVideoFramesAsyncHandler;
+			typedef Outcome<Error, Model::GetPornBatchDetectJobResult> GetPornBatchDetectJobOutcome;
+			typedef std::future<GetPornBatchDetectJobOutcome> GetPornBatchDetectJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetPornBatchDetectJobRequest&, const GetPornBatchDetectJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetPornBatchDetectJobAsyncHandler;
+			typedef Outcome<Error, Model::DetectLogoResult> DetectLogoOutcome;
+			typedef std::future<DetectLogoOutcome> DetectLogoOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectLogoRequest&, const DetectLogoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectLogoAsyncHandler;
+			typedef Outcome<Error, Model::DetectClothesResult> DetectClothesOutcome;
+			typedef std::future<DetectClothesOutcome> DetectClothesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectClothesRequest&, const DetectClothesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectClothesAsyncHandler;
+			typedef Outcome<Error, Model::ListTagJobsResult> ListTagJobsOutcome;
+			typedef std::future<ListTagJobsOutcome> ListTagJobsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListTagJobsRequest&, const ListTagJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagJobsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRegionsResult> DescribeRegionsOutcome;
+			typedef std::future<DescribeRegionsOutcome> DescribeRegionsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DescribeRegionsRequest&, const DescribeRegionsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRegionsAsyncHandler;
+			typedef Outcome<Error, Model::DeleteFaceSearchUserResult> DeleteFaceSearchUserOutcome;
+			typedef std::future<DeleteFaceSearchUserOutcome> DeleteFaceSearchUserOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteFaceSearchUserRequest&, const DeleteFaceSearchUserOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteFaceSearchUserAsyncHandler;
+			typedef Outcome<Error, Model::GetOfficeConversionTaskResult> GetOfficeConversionTaskOutcome;
+			typedef std::future<GetOfficeConversionTaskOutcome> GetOfficeConversionTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetOfficeConversionTaskRequest&, const GetOfficeConversionTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetOfficeConversionTaskAsyncHandler;
+			typedef Outcome<Error, Model::CreateTagSetResult> CreateTagSetOutcome;
+			typedef std::future<CreateTagSetOutcome> CreateTagSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateTagSetRequest&, const CreateTagSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTagSetAsyncHandler;
+			typedef Outcome<Error, Model::RegistFaceResult> RegistFaceOutcome;
+			typedef std::future<RegistFaceOutcome> RegistFaceOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::RegistFaceRequest&, const RegistFaceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RegistFaceAsyncHandler;
+			typedef Outcome<Error, Model::FindSimilarFacesResult> FindSimilarFacesOutcome;
+			typedef std::future<FindSimilarFacesOutcome> FindSimilarFacesOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::FindSimilarFacesRequest&, const FindSimilarFacesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> FindSimilarFacesAsyncHandler;
+			typedef Outcome<Error, Model::GetFaceSearchUserResult> GetFaceSearchUserOutcome;
+			typedef std::future<GetFaceSearchUserOutcome> GetFaceSearchUserOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetFaceSearchUserRequest&, const GetFaceSearchUserOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetFaceSearchUserAsyncHandler;
+			typedef Outcome<Error, Model::DeleteImageJobResult> DeleteImageJobOutcome;
+			typedef std::future<DeleteImageJobOutcome> DeleteImageJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteImageJobRequest&, const DeleteImageJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteImageJobAsyncHandler;
+			typedef Outcome<Error, Model::CreateFaceSetResult> CreateFaceSetOutcome;
+			typedef std::future<CreateFaceSetOutcome> CreateFaceSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateFaceSetRequest&, const CreateFaceSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateFaceSetAsyncHandler;
+			typedef Outcome<Error, Model::DeleteFaceSearchGroupResult> DeleteFaceSearchGroupOutcome;
+			typedef std::future<DeleteFaceSearchGroupOutcome> DeleteFaceSearchGroupOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteFaceSearchGroupRequest&, const DeleteFaceSearchGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteFaceSearchGroupAsyncHandler;
+			typedef Outcome<Error, Model::GetDocIndexResult> GetDocIndexOutcome;
+			typedef std::future<GetDocIndexOutcome> GetDocIndexOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::GetDocIndexRequest&, const GetDocIndexOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDocIndexAsyncHandler;
+			typedef Outcome<Error, Model::IndexImageResult> IndexImageOutcome;
+			typedef std::future<IndexImageOutcome> IndexImageOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::IndexImageRequest&, const IndexImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> IndexImageAsyncHandler;
+			typedef Outcome<Error, Model::DetectImageTextsResult> DetectImageTextsOutcome;
+			typedef std::future<DetectImageTextsOutcome> DetectImageTextsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DetectImageTextsRequest&, const DetectImageTextsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DetectImageTextsAsyncHandler;
+			typedef Outcome<Error, Model::ListImageJobsResult> ListImageJobsOutcome;
+			typedef std::future<ListImageJobsOutcome> ListImageJobsOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListImageJobsRequest&, const ListImageJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListImageJobsAsyncHandler;
+			typedef Outcome<Error, Model::CreateGroupFacesJobResult> CreateGroupFacesJobOutcome;
+			typedef std::future<CreateGroupFacesJobOutcome> CreateGroupFacesJobOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::CreateGroupFacesJobRequest&, const CreateGroupFacesJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateGroupFacesJobAsyncHandler;
+			typedef Outcome<Error, Model::UpdateImageResult> UpdateImageOutcome;
+			typedef std::future<UpdateImageOutcome> UpdateImageOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::UpdateImageRequest&, const UpdateImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateImageAsyncHandler;
+			typedef Outcome<Error, Model::ListVideoTasksResult> ListVideoTasksOutcome;
+			typedef std::future<ListVideoTasksOutcome> ListVideoTasksOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListVideoTasksRequest&, const ListVideoTasksOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListVideoTasksAsyncHandler;
+			typedef Outcome<Error, Model::UpdateProjectResult> UpdateProjectOutcome;
+			typedef std::future<UpdateProjectOutcome> UpdateProjectOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::UpdateProjectRequest&, const UpdateProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateProjectAsyncHandler;
+			typedef Outcome<Error, Model::DeleteVideoResult> DeleteVideoOutcome;
+			typedef std::future<DeleteVideoOutcome> DeleteVideoOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::DeleteVideoRequest&, const DeleteVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVideoAsyncHandler;
+			typedef Outcome<Error, Model::ListOfficeConversionTaskResult> ListOfficeConversionTaskOutcome;
+			typedef std::future<ListOfficeConversionTaskOutcome> ListOfficeConversionTaskOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::ListOfficeConversionTaskRequest&, const ListOfficeConversionTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListOfficeConversionTaskAsyncHandler;
+			typedef Outcome<Error, Model::UpdateSetResult> UpdateSetOutcome;
+			typedef std::future<UpdateSetOutcome> UpdateSetOutcomeCallable;
+			typedef std::function<void(const ImmClient*, const Model::UpdateSetRequest&, const UpdateSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateSetAsyncHandler;
+
+			ImmClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			ImmClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			ImmClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~ImmClient();
+			ListPornBatchDetectJobsOutcome listPornBatchDetectJobs(const Model::ListPornBatchDetectJobsRequest &request)const;
+			void listPornBatchDetectJobsAsync(const Model::ListPornBatchDetectJobsRequest& request, const ListPornBatchDetectJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListPornBatchDetectJobsOutcomeCallable listPornBatchDetectJobsCallable(const Model::ListPornBatchDetectJobsRequest& request) const;
+			DetectImageFacesOutcome detectImageFaces(const Model::DetectImageFacesRequest &request)const;
+			void detectImageFacesAsync(const Model::DetectImageFacesRequest& request, const DetectImageFacesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectImageFacesOutcomeCallable detectImageFacesCallable(const Model::DetectImageFacesRequest& request) const;
+			DetectImageTagsOutcome detectImageTags(const Model::DetectImageTagsRequest &request)const;
+			void detectImageTagsAsync(const Model::DetectImageTagsRequest& request, const DetectImageTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectImageTagsOutcomeCallable detectImageTagsCallable(const Model::DetectImageTagsRequest& request) const;
+			DeleteImageOutcome deleteImage(const Model::DeleteImageRequest &request)const;
+			void deleteImageAsync(const Model::DeleteImageRequest& request, const DeleteImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteImageOutcomeCallable deleteImageCallable(const Model::DeleteImageRequest& request) const;
+			CreateTagJobOutcome createTagJob(const Model::CreateTagJobRequest &request)const;
+			void createTagJobAsync(const Model::CreateTagJobRequest& request, const CreateTagJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTagJobOutcomeCallable createTagJobCallable(const Model::CreateTagJobRequest& request) const;
+			IndexTagOutcome indexTag(const Model::IndexTagRequest &request)const;
+			void indexTagAsync(const Model::IndexTagRequest& request, const IndexTagAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			IndexTagOutcomeCallable indexTagCallable(const Model::IndexTagRequest& request) const;
+			ListProjectsOutcome listProjects(const Model::ListProjectsRequest &request)const;
+			void listProjectsAsync(const Model::ListProjectsRequest& request, const ListProjectsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListProjectsOutcomeCallable listProjectsCallable(const Model::ListProjectsRequest& request) const;
+			DeleteSetOutcome deleteSet(const Model::DeleteSetRequest &request)const;
+			void deleteSetAsync(const Model::DeleteSetRequest& request, const DeleteSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteSetOutcomeCallable deleteSetCallable(const Model::DeleteSetRequest& request) const;
+			GetFaceSearchImageOutcome getFaceSearchImage(const Model::GetFaceSearchImageRequest &request)const;
+			void getFaceSearchImageAsync(const Model::GetFaceSearchImageRequest& request, const GetFaceSearchImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetFaceSearchImageOutcomeCallable getFaceSearchImageCallable(const Model::GetFaceSearchImageRequest& request) const;
+			CreateVideoAnalyseTaskOutcome createVideoAnalyseTask(const Model::CreateVideoAnalyseTaskRequest &request)const;
+			void createVideoAnalyseTaskAsync(const Model::CreateVideoAnalyseTaskRequest& request, const CreateVideoAnalyseTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateVideoAnalyseTaskOutcomeCallable createVideoAnalyseTaskCallable(const Model::CreateVideoAnalyseTaskRequest& request) const;
+			CompareFaceOutcome compareFace(const Model::CompareFaceRequest &request)const;
+			void compareFaceAsync(const Model::CompareFaceRequest& request, const CompareFaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CompareFaceOutcomeCallable compareFaceCallable(const Model::CompareFaceRequest& request) const;
+			DetectTagOutcome detectTag(const Model::DetectTagRequest &request)const;
+			void detectTagAsync(const Model::DetectTagRequest& request, const DetectTagAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectTagOutcomeCallable detectTagCallable(const Model::DetectTagRequest& request) const;
+			ListFaceSearchGroupUsersOutcome listFaceSearchGroupUsers(const Model::ListFaceSearchGroupUsersRequest &request)const;
+			void listFaceSearchGroupUsersAsync(const Model::ListFaceSearchGroupUsersRequest& request, const ListFaceSearchGroupUsersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListFaceSearchGroupUsersOutcomeCallable listFaceSearchGroupUsersCallable(const Model::ListFaceSearchGroupUsersRequest& request) const;
+			ListFaceSearchGroupImagesOutcome listFaceSearchGroupImages(const Model::ListFaceSearchGroupImagesRequest &request)const;
+			void listFaceSearchGroupImagesAsync(const Model::ListFaceSearchGroupImagesRequest& request, const ListFaceSearchGroupImagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListFaceSearchGroupImagesOutcomeCallable listFaceSearchGroupImagesCallable(const Model::ListFaceSearchGroupImagesRequest& request) const;
+			CreateCADConversionTaskOutcome createCADConversionTask(const Model::CreateCADConversionTaskRequest &request)const;
+			void createCADConversionTaskAsync(const Model::CreateCADConversionTaskRequest& request, const CreateCADConversionTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateCADConversionTaskOutcomeCallable createCADConversionTaskCallable(const Model::CreateCADConversionTaskRequest& request) const;
+			GetTagJobOutcome getTagJob(const Model::GetTagJobRequest &request)const;
+			void getTagJobAsync(const Model::GetTagJobRequest& request, const GetTagJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetTagJobOutcomeCallable getTagJobCallable(const Model::GetTagJobRequest& request) const;
+			DeleteFaceJobOutcome deleteFaceJob(const Model::DeleteFaceJobRequest &request)const;
+			void deleteFaceJobAsync(const Model::DeleteFaceJobRequest& request, const DeleteFaceJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteFaceJobOutcomeCallable deleteFaceJobCallable(const Model::DeleteFaceJobRequest& request) const;
+			CreateDocIndexTaskOutcome createDocIndexTask(const Model::CreateDocIndexTaskRequest &request)const;
+			void createDocIndexTaskAsync(const Model::CreateDocIndexTaskRequest& request, const CreateDocIndexTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateDocIndexTaskOutcomeCallable createDocIndexTaskCallable(const Model::CreateDocIndexTaskRequest& request) const;
+			PutProjectOutcome putProject(const Model::PutProjectRequest &request)const;
+			void putProjectAsync(const Model::PutProjectRequest& request, const PutProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			PutProjectOutcomeCallable putProjectCallable(const Model::PutProjectRequest& request) const;
+			GetSetOutcome getSet(const Model::GetSetRequest &request)const;
+			void getSetAsync(const Model::GetSetRequest& request, const GetSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetSetOutcomeCallable getSetCallable(const Model::GetSetRequest& request) const;
+			GetVideoTaskOutcome getVideoTask(const Model::GetVideoTaskRequest &request)const;
+			void getVideoTaskAsync(const Model::GetVideoTaskRequest& request, const GetVideoTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetVideoTaskOutcomeCallable getVideoTaskCallable(const Model::GetVideoTaskRequest& request) const;
+			ListSetsOutcome listSets(const Model::ListSetsRequest &request)const;
+			void listSetsAsync(const Model::ListSetsRequest& request, const ListSetsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListSetsOutcomeCallable listSetsCallable(const Model::ListSetsRequest& request) const;
+			SearchDocIndexOutcome searchDocIndex(const Model::SearchDocIndexRequest &request)const;
+			void searchDocIndexAsync(const Model::SearchDocIndexRequest& request, const SearchDocIndexAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SearchDocIndexOutcomeCallable searchDocIndexCallable(const Model::SearchDocIndexRequest& request) const;
+			ListPhotoProcessTasksOutcome listPhotoProcessTasks(const Model::ListPhotoProcessTasksRequest &request)const;
+			void listPhotoProcessTasksAsync(const Model::ListPhotoProcessTasksRequest& request, const ListPhotoProcessTasksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListPhotoProcessTasksOutcomeCallable listPhotoProcessTasksCallable(const Model::ListPhotoProcessTasksRequest& request) const;
+			ListVideosOutcome listVideos(const Model::ListVideosRequest &request)const;
+			void listVideosAsync(const Model::ListVideosRequest& request, const ListVideosAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListVideosOutcomeCallable listVideosCallable(const Model::ListVideosRequest& request) const;
+			CreatePornBatchDetectJobOutcome createPornBatchDetectJob(const Model::CreatePornBatchDetectJobRequest &request)const;
+			void createPornBatchDetectJobAsync(const Model::CreatePornBatchDetectJobRequest& request, const CreatePornBatchDetectJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreatePornBatchDetectJobOutcomeCallable createPornBatchDetectJobCallable(const Model::CreatePornBatchDetectJobRequest& request) const;
+			FindImagesOutcome findImages(const Model::FindImagesRequest &request)const;
+			void findImagesAsync(const Model::FindImagesRequest& request, const FindImagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			FindImagesOutcomeCallable findImagesCallable(const Model::FindImagesRequest& request) const;
+			DeleteTagByNameOutcome deleteTagByName(const Model::DeleteTagByNameRequest &request)const;
+			void deleteTagByNameAsync(const Model::DeleteTagByNameRequest& request, const DeleteTagByNameAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTagByNameOutcomeCallable deleteTagByNameCallable(const Model::DeleteTagByNameRequest& request) const;
+			DetectImageLogosOutcome detectImageLogos(const Model::DetectImageLogosRequest &request)const;
+			void detectImageLogosAsync(const Model::DetectImageLogosRequest& request, const DetectImageLogosAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectImageLogosOutcomeCallable detectImageLogosCallable(const Model::DetectImageLogosRequest& request) const;
+			GetProjectOutcome getProject(const Model::GetProjectRequest &request)const;
+			void getProjectAsync(const Model::GetProjectRequest& request, const GetProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetProjectOutcomeCallable getProjectCallable(const Model::GetProjectRequest& request) const;
+			DeletePhotoProcessTaskOutcome deletePhotoProcessTask(const Model::DeletePhotoProcessTaskRequest &request)const;
+			void deletePhotoProcessTaskAsync(const Model::DeletePhotoProcessTaskRequest& request, const DeletePhotoProcessTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeletePhotoProcessTaskOutcomeCallable deletePhotoProcessTaskCallable(const Model::DeletePhotoProcessTaskRequest& request) const;
+			ListSetTagsOutcome listSetTags(const Model::ListSetTagsRequest &request)const;
+			void listSetTagsAsync(const Model::ListSetTagsRequest& request, const ListSetTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListSetTagsOutcomeCallable listSetTagsCallable(const Model::ListSetTagsRequest& request) const;
+			DeleteVideoTaskOutcome deleteVideoTask(const Model::DeleteVideoTaskRequest &request)const;
+			void deleteVideoTaskAsync(const Model::DeleteVideoTaskRequest& request, const DeleteVideoTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteVideoTaskOutcomeCallable deleteVideoTaskCallable(const Model::DeleteVideoTaskRequest& request) const;
+			FindImagesByTagNamesOutcome findImagesByTagNames(const Model::FindImagesByTagNamesRequest &request)const;
+			void findImagesByTagNamesAsync(const Model::FindImagesByTagNamesRequest& request, const FindImagesByTagNamesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			FindImagesByTagNamesOutcomeCallable findImagesByTagNamesCallable(const Model::FindImagesByTagNamesRequest& request) const;
+			DeleteTagSetOutcome deleteTagSet(const Model::DeleteTagSetRequest &request)const;
+			void deleteTagSetAsync(const Model::DeleteTagSetRequest& request, const DeleteTagSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTagSetOutcomeCallable deleteTagSetCallable(const Model::DeleteTagSetRequest& request) const;
+			DeleteProjectOutcome deleteProject(const Model::DeleteProjectRequest &request)const;
+			void deleteProjectAsync(const Model::DeleteProjectRequest& request, const DeleteProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteProjectOutcomeCallable deleteProjectCallable(const Model::DeleteProjectRequest& request) const;
+			UpdateDocIndexMetaOutcome updateDocIndexMeta(const Model::UpdateDocIndexMetaRequest &request)const;
+			void updateDocIndexMetaAsync(const Model::UpdateDocIndexMetaRequest& request, const UpdateDocIndexMetaAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateDocIndexMetaOutcomeCallable updateDocIndexMetaCallable(const Model::UpdateDocIndexMetaRequest& request) const;
+			SearchFaceOutcome searchFace(const Model::SearchFaceRequest &request)const;
+			void searchFaceAsync(const Model::SearchFaceRequest& request, const SearchFaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SearchFaceOutcomeCallable searchFaceCallable(const Model::SearchFaceRequest& request) const;
+			GetImageOutcome getImage(const Model::GetImageRequest &request)const;
+			void getImageAsync(const Model::GetImageRequest& request, const GetImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetImageOutcomeCallable getImageCallable(const Model::GetImageRequest& request) const;
+			DetectImageCelebrityOutcome detectImageCelebrity(const Model::DetectImageCelebrityRequest &request)const;
+			void detectImageCelebrityAsync(const Model::DetectImageCelebrityRequest& request, const DetectImageCelebrityAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectImageCelebrityOutcomeCallable detectImageCelebrityCallable(const Model::DetectImageCelebrityRequest& request) const;
+			CreateSetOutcome createSet(const Model::CreateSetRequest &request)const;
+			void createSetAsync(const Model::CreateSetRequest& request, const CreateSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateSetOutcomeCallable createSetCallable(const Model::CreateSetRequest& request) const;
+			DeletePornBatchDetectJobOutcome deletePornBatchDetectJob(const Model::DeletePornBatchDetectJobRequest &request)const;
+			void deletePornBatchDetectJobAsync(const Model::DeletePornBatchDetectJobRequest& request, const DeletePornBatchDetectJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeletePornBatchDetectJobOutcomeCallable deletePornBatchDetectJobCallable(const Model::DeletePornBatchDetectJobRequest& request) const;
+			ListFaceSearchGroupsOutcome listFaceSearchGroups(const Model::ListFaceSearchGroupsRequest &request)const;
+			void listFaceSearchGroupsAsync(const Model::ListFaceSearchGroupsRequest& request, const ListFaceSearchGroupsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListFaceSearchGroupsOutcomeCallable listFaceSearchGroupsCallable(const Model::ListFaceSearchGroupsRequest& request) const;
+			GetTagSetOutcome getTagSet(const Model::GetTagSetRequest &request)const;
+			void getTagSetAsync(const Model::GetTagSetRequest& request, const GetTagSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetTagSetOutcomeCallable getTagSetCallable(const Model::GetTagSetRequest& request) const;
+			ConvertOfficeFormatOutcome convertOfficeFormat(const Model::ConvertOfficeFormatRequest &request)const;
+			void convertOfficeFormatAsync(const Model::ConvertOfficeFormatRequest& request, const ConvertOfficeFormatAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ConvertOfficeFormatOutcomeCallable convertOfficeFormatCallable(const Model::ConvertOfficeFormatRequest& request) const;
+			ListTagPhotosOutcome listTagPhotos(const Model::ListTagPhotosRequest &request)const;
+			void listTagPhotosAsync(const Model::ListTagPhotosRequest& request, const ListTagPhotosAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTagPhotosOutcomeCallable listTagPhotosCallable(const Model::ListTagPhotosRequest& request) const;
+			DeleteFaceSearchImageByIdOutcome deleteFaceSearchImageById(const Model::DeleteFaceSearchImageByIdRequest &request)const;
+			void deleteFaceSearchImageByIdAsync(const Model::DeleteFaceSearchImageByIdRequest& request, const DeleteFaceSearchImageByIdAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteFaceSearchImageByIdOutcomeCallable deleteFaceSearchImageByIdCallable(const Model::DeleteFaceSearchImageByIdRequest& request) const;
+			IndexVideoOutcome indexVideo(const Model::IndexVideoRequest &request)const;
+			void indexVideoAsync(const Model::IndexVideoRequest& request, const IndexVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			IndexVideoOutcomeCallable indexVideoCallable(const Model::IndexVideoRequest& request) const;
+			DeleteDocIndexOutcome deleteDocIndex(const Model::DeleteDocIndexRequest &request)const;
+			void deleteDocIndexAsync(const Model::DeleteDocIndexRequest& request, const DeleteDocIndexAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteDocIndexOutcomeCallable deleteDocIndexCallable(const Model::DeleteDocIndexRequest& request) const;
+			GetDocIndexTaskOutcome getDocIndexTask(const Model::GetDocIndexTaskRequest &request)const;
+			void getDocIndexTaskAsync(const Model::GetDocIndexTaskRequest& request, const GetDocIndexTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetDocIndexTaskOutcomeCallable getDocIndexTaskCallable(const Model::GetDocIndexTaskRequest& request) const;
+			GetImageJobOutcome getImageJob(const Model::GetImageJobRequest &request)const;
+			void getImageJobAsync(const Model::GetImageJobRequest& request, const GetImageJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetImageJobOutcomeCallable getImageJobCallable(const Model::GetImageJobRequest& request) const;
+			ListVideoAudiosOutcome listVideoAudios(const Model::ListVideoAudiosRequest &request)const;
+			void listVideoAudiosAsync(const Model::ListVideoAudiosRequest& request, const ListVideoAudiosAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListVideoAudiosOutcomeCallable listVideoAudiosCallable(const Model::ListVideoAudiosRequest& request) const;
+			DeleteTagByUrlOutcome deleteTagByUrl(const Model::DeleteTagByUrlRequest &request)const;
+			void deleteTagByUrlAsync(const Model::DeleteTagByUrlRequest& request, const DeleteTagByUrlAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTagByUrlOutcomeCallable deleteTagByUrlCallable(const Model::DeleteTagByUrlRequest& request) const;
+			ListTagSetsOutcome listTagSets(const Model::ListTagSetsRequest &request)const;
+			void listTagSetsAsync(const Model::ListTagSetsRequest& request, const ListTagSetsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTagSetsOutcomeCallable listTagSetsCallable(const Model::ListTagSetsRequest& request) const;
+			ListTagNamesOutcome listTagNames(const Model::ListTagNamesRequest &request)const;
+			void listTagNamesAsync(const Model::ListTagNamesRequest& request, const ListTagNamesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTagNamesOutcomeCallable listTagNamesCallable(const Model::ListTagNamesRequest& request) const;
+			CreateOfficeConversionTaskOutcome createOfficeConversionTask(const Model::CreateOfficeConversionTaskRequest &request)const;
+			void createOfficeConversionTaskAsync(const Model::CreateOfficeConversionTaskRequest& request, const CreateOfficeConversionTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateOfficeConversionTaskOutcomeCallable createOfficeConversionTaskCallable(const Model::CreateOfficeConversionTaskRequest& request) const;
+			DetectQRCodesOutcome detectQRCodes(const Model::DetectQRCodesRequest &request)const;
+			void detectQRCodesAsync(const Model::DetectQRCodesRequest& request, const DetectQRCodesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectQRCodesOutcomeCallable detectQRCodesCallable(const Model::DetectQRCodesRequest& request) const;
+			GetFaceSearchGroupOutcome getFaceSearchGroup(const Model::GetFaceSearchGroupRequest &request)const;
+			void getFaceSearchGroupAsync(const Model::GetFaceSearchGroupRequest& request, const GetFaceSearchGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetFaceSearchGroupOutcomeCallable getFaceSearchGroupCallable(const Model::GetFaceSearchGroupRequest& request) const;
+			GetVideoOutcome getVideo(const Model::GetVideoRequest &request)const;
+			void getVideoAsync(const Model::GetVideoRequest& request, const GetVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetVideoOutcomeCallable getVideoCallable(const Model::GetVideoRequest& request) const;
+			ListImagesOutcome listImages(const Model::ListImagesRequest &request)const;
+			void listImagesAsync(const Model::ListImagesRequest& request, const ListImagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListImagesOutcomeCallable listImagesCallable(const Model::ListImagesRequest& request) const;
+			CompareImageFacesOutcome compareImageFaces(const Model::CompareImageFacesRequest &request)const;
+			void compareImageFacesAsync(const Model::CompareImageFacesRequest& request, const CompareImageFacesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CompareImageFacesOutcomeCallable compareImageFacesCallable(const Model::CompareImageFacesRequest& request) const;
+			DeleteTagJobOutcome deleteTagJob(const Model::DeleteTagJobRequest &request)const;
+			void deleteTagJobAsync(const Model::DeleteTagJobRequest& request, const DeleteTagJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTagJobOutcomeCallable deleteTagJobCallable(const Model::DeleteTagJobRequest& request) const;
+			DeleteOfficeConversionTaskOutcome deleteOfficeConversionTask(const Model::DeleteOfficeConversionTaskRequest &request)const;
+			void deleteOfficeConversionTaskAsync(const Model::DeleteOfficeConversionTaskRequest& request, const DeleteOfficeConversionTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteOfficeConversionTaskOutcomeCallable deleteOfficeConversionTaskCallable(const Model::DeleteOfficeConversionTaskRequest& request) const;
+			PhotoProcessOutcome photoProcess(const Model::PhotoProcessRequest &request)const;
+			void photoProcessAsync(const Model::PhotoProcessRequest& request, const PhotoProcessAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			PhotoProcessOutcomeCallable photoProcessCallable(const Model::PhotoProcessRequest& request) const;
+			GetPhotoProcessTaskOutcome getPhotoProcessTask(const Model::GetPhotoProcessTaskRequest &request)const;
+			void getPhotoProcessTaskAsync(const Model::GetPhotoProcessTaskRequest& request, const GetPhotoProcessTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetPhotoProcessTaskOutcomeCallable getPhotoProcessTaskCallable(const Model::GetPhotoProcessTaskRequest& request) const;
+			ListVideoFramesOutcome listVideoFrames(const Model::ListVideoFramesRequest &request)const;
+			void listVideoFramesAsync(const Model::ListVideoFramesRequest& request, const ListVideoFramesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListVideoFramesOutcomeCallable listVideoFramesCallable(const Model::ListVideoFramesRequest& request) const;
+			GetPornBatchDetectJobOutcome getPornBatchDetectJob(const Model::GetPornBatchDetectJobRequest &request)const;
+			void getPornBatchDetectJobAsync(const Model::GetPornBatchDetectJobRequest& request, const GetPornBatchDetectJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetPornBatchDetectJobOutcomeCallable getPornBatchDetectJobCallable(const Model::GetPornBatchDetectJobRequest& request) const;
+			DetectLogoOutcome detectLogo(const Model::DetectLogoRequest &request)const;
+			void detectLogoAsync(const Model::DetectLogoRequest& request, const DetectLogoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectLogoOutcomeCallable detectLogoCallable(const Model::DetectLogoRequest& request) const;
+			DetectClothesOutcome detectClothes(const Model::DetectClothesRequest &request)const;
+			void detectClothesAsync(const Model::DetectClothesRequest& request, const DetectClothesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectClothesOutcomeCallable detectClothesCallable(const Model::DetectClothesRequest& request) const;
+			ListTagJobsOutcome listTagJobs(const Model::ListTagJobsRequest &request)const;
+			void listTagJobsAsync(const Model::ListTagJobsRequest& request, const ListTagJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTagJobsOutcomeCallable listTagJobsCallable(const Model::ListTagJobsRequest& request) const;
+			DescribeRegionsOutcome describeRegions(const Model::DescribeRegionsRequest &request)const;
+			void describeRegionsAsync(const Model::DescribeRegionsRequest& request, const DescribeRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRegionsOutcomeCallable describeRegionsCallable(const Model::DescribeRegionsRequest& request) const;
+			DeleteFaceSearchUserOutcome deleteFaceSearchUser(const Model::DeleteFaceSearchUserRequest &request)const;
+			void deleteFaceSearchUserAsync(const Model::DeleteFaceSearchUserRequest& request, const DeleteFaceSearchUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteFaceSearchUserOutcomeCallable deleteFaceSearchUserCallable(const Model::DeleteFaceSearchUserRequest& request) const;
+			GetOfficeConversionTaskOutcome getOfficeConversionTask(const Model::GetOfficeConversionTaskRequest &request)const;
+			void getOfficeConversionTaskAsync(const Model::GetOfficeConversionTaskRequest& request, const GetOfficeConversionTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetOfficeConversionTaskOutcomeCallable getOfficeConversionTaskCallable(const Model::GetOfficeConversionTaskRequest& request) const;
+			CreateTagSetOutcome createTagSet(const Model::CreateTagSetRequest &request)const;
+			void createTagSetAsync(const Model::CreateTagSetRequest& request, const CreateTagSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTagSetOutcomeCallable createTagSetCallable(const Model::CreateTagSetRequest& request) const;
+			RegistFaceOutcome registFace(const Model::RegistFaceRequest &request)const;
+			void registFaceAsync(const Model::RegistFaceRequest& request, const RegistFaceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RegistFaceOutcomeCallable registFaceCallable(const Model::RegistFaceRequest& request) const;
+			FindSimilarFacesOutcome findSimilarFaces(const Model::FindSimilarFacesRequest &request)const;
+			void findSimilarFacesAsync(const Model::FindSimilarFacesRequest& request, const FindSimilarFacesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			FindSimilarFacesOutcomeCallable findSimilarFacesCallable(const Model::FindSimilarFacesRequest& request) const;
+			GetFaceSearchUserOutcome getFaceSearchUser(const Model::GetFaceSearchUserRequest &request)const;
+			void getFaceSearchUserAsync(const Model::GetFaceSearchUserRequest& request, const GetFaceSearchUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetFaceSearchUserOutcomeCallable getFaceSearchUserCallable(const Model::GetFaceSearchUserRequest& request) const;
+			DeleteImageJobOutcome deleteImageJob(const Model::DeleteImageJobRequest &request)const;
+			void deleteImageJobAsync(const Model::DeleteImageJobRequest& request, const DeleteImageJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteImageJobOutcomeCallable deleteImageJobCallable(const Model::DeleteImageJobRequest& request) const;
+			CreateFaceSetOutcome createFaceSet(const Model::CreateFaceSetRequest &request)const;
+			void createFaceSetAsync(const Model::CreateFaceSetRequest& request, const CreateFaceSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateFaceSetOutcomeCallable createFaceSetCallable(const Model::CreateFaceSetRequest& request) const;
+			DeleteFaceSearchGroupOutcome deleteFaceSearchGroup(const Model::DeleteFaceSearchGroupRequest &request)const;
+			void deleteFaceSearchGroupAsync(const Model::DeleteFaceSearchGroupRequest& request, const DeleteFaceSearchGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteFaceSearchGroupOutcomeCallable deleteFaceSearchGroupCallable(const Model::DeleteFaceSearchGroupRequest& request) const;
+			GetDocIndexOutcome getDocIndex(const Model::GetDocIndexRequest &request)const;
+			void getDocIndexAsync(const Model::GetDocIndexRequest& request, const GetDocIndexAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetDocIndexOutcomeCallable getDocIndexCallable(const Model::GetDocIndexRequest& request) const;
+			IndexImageOutcome indexImage(const Model::IndexImageRequest &request)const;
+			void indexImageAsync(const Model::IndexImageRequest& request, const IndexImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			IndexImageOutcomeCallable indexImageCallable(const Model::IndexImageRequest& request) const;
+			DetectImageTextsOutcome detectImageTexts(const Model::DetectImageTextsRequest &request)const;
+			void detectImageTextsAsync(const Model::DetectImageTextsRequest& request, const DetectImageTextsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DetectImageTextsOutcomeCallable detectImageTextsCallable(const Model::DetectImageTextsRequest& request) const;
+			ListImageJobsOutcome listImageJobs(const Model::ListImageJobsRequest &request)const;
+			void listImageJobsAsync(const Model::ListImageJobsRequest& request, const ListImageJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListImageJobsOutcomeCallable listImageJobsCallable(const Model::ListImageJobsRequest& request) const;
+			CreateGroupFacesJobOutcome createGroupFacesJob(const Model::CreateGroupFacesJobRequest &request)const;
+			void createGroupFacesJobAsync(const Model::CreateGroupFacesJobRequest& request, const CreateGroupFacesJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateGroupFacesJobOutcomeCallable createGroupFacesJobCallable(const Model::CreateGroupFacesJobRequest& request) const;
+			UpdateImageOutcome updateImage(const Model::UpdateImageRequest &request)const;
+			void updateImageAsync(const Model::UpdateImageRequest& request, const UpdateImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateImageOutcomeCallable updateImageCallable(const Model::UpdateImageRequest& request) const;
+			ListVideoTasksOutcome listVideoTasks(const Model::ListVideoTasksRequest &request)const;
+			void listVideoTasksAsync(const Model::ListVideoTasksRequest& request, const ListVideoTasksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListVideoTasksOutcomeCallable listVideoTasksCallable(const Model::ListVideoTasksRequest& request) const;
+			UpdateProjectOutcome updateProject(const Model::UpdateProjectRequest &request)const;
+			void updateProjectAsync(const Model::UpdateProjectRequest& request, const UpdateProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateProjectOutcomeCallable updateProjectCallable(const Model::UpdateProjectRequest& request) const;
+			DeleteVideoOutcome deleteVideo(const Model::DeleteVideoRequest &request)const;
+			void deleteVideoAsync(const Model::DeleteVideoRequest& request, const DeleteVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteVideoOutcomeCallable deleteVideoCallable(const Model::DeleteVideoRequest& request) const;
+			ListOfficeConversionTaskOutcome listOfficeConversionTask(const Model::ListOfficeConversionTaskRequest &request)const;
+			void listOfficeConversionTaskAsync(const Model::ListOfficeConversionTaskRequest& request, const ListOfficeConversionTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListOfficeConversionTaskOutcomeCallable listOfficeConversionTaskCallable(const Model::ListOfficeConversionTaskRequest& request) const;
+			UpdateSetOutcome updateSet(const Model::UpdateSetRequest &request)const;
+			void updateSetAsync(const Model::UpdateSetRequest& request, const UpdateSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateSetOutcomeCallable updateSetCallable(const Model::UpdateSetRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_IMM_IMMCLIENT_H_

+ 32 - 0
imm/include/alibabacloud/imm/ImmExport.h

@@ -0,0 +1,32 @@
+/*
+ * 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_IMM_IMMEXPORT_H_
+#define ALIBABACLOUD_IMM_IMMEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_IMM_LIBRARY)
+#		define ALIBABACLOUD_IMM_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_IMM_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_IMM_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_IMM_IMMEXPORT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/CompareFaceRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_COMPAREFACEREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_COMPAREFACEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CompareFaceRequest : public RpcServiceRequest
+			{
+
+			public:
+				CompareFaceRequest();
+				~CompareFaceRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getSrcUriB()const;
+				void setSrcUriB(const std::string& srcUriB);
+				std::string getSrcUriA()const;
+				void setSrcUriA(const std::string& srcUriA);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string srcUriB_;
+				std::string srcUriA_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_COMPAREFACEREQUEST_H_

+ 67 - 0
imm/include/alibabacloud/imm/model/CompareFaceResult.h

@@ -0,0 +1,67 @@
+/*
+ * 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_IMM_MODEL_COMPAREFACERESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_COMPAREFACERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CompareFaceResult : public ServiceResult
+			{
+			public:
+				struct CompareResultItem
+				{
+					struct FaceA
+					{
+						std::string imageUri;
+						std::vector<std::string> axis;
+					};
+					struct FaceB
+					{
+						std::string imageUri;
+						std::vector<std::string> axis1;
+					};
+					float similarity;
+					FaceA faceA;
+					FaceB faceB;
+				};
+
+
+				CompareFaceResult();
+				explicit CompareFaceResult(const std::string &payload);
+				~CompareFaceResult();
+				std::vector<CompareResultItem> getCompareResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<CompareResultItem> compareResult_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_COMPAREFACERESULT_H_

+ 69 - 0
imm/include/alibabacloud/imm/model/CompareImageFacesRequest.h

@@ -0,0 +1,69 @@
+/*
+ * 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_IMM_MODEL_COMPAREIMAGEFACESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_COMPAREIMAGEFACESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CompareImageFacesRequest : public RpcServiceRequest
+			{
+
+			public:
+				CompareImageFacesRequest();
+				~CompareImageFacesRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getImageUriB()const;
+				void setImageUriB(const std::string& imageUriB);
+				std::string getImageUriA()const;
+				void setImageUriA(const std::string& imageUriA);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getFaceIdA()const;
+				void setFaceIdA(const std::string& faceIdA);
+				std::string getFaceIdB()const;
+				void setFaceIdB(const std::string& faceIdB);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string imageUriB_;
+				std::string imageUriA_;
+				std::string project_;
+				std::string setId_;
+				std::string faceIdA_;
+				std::string faceIdB_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_COMPAREIMAGEFACESREQUEST_H_

+ 89 - 0
imm/include/alibabacloud/imm/model/CompareImageFacesResult.h

@@ -0,0 +1,89 @@
+/*
+ * 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_IMM_MODEL_COMPAREIMAGEFACESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_COMPAREIMAGEFACESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CompareImageFacesResult : public ServiceResult
+			{
+			public:
+				struct FaceA
+				{
+					struct FaceAttributes
+					{
+						struct FaceBoundary
+						{
+							int left;
+							int top;
+							int height;
+							int width;
+						};
+						FaceBoundary faceBoundary;
+					};
+					std::string faceId;
+					FaceAttributes faceAttributes;
+				};
+				struct FaceB
+				{
+					struct FaceAttributes1
+					{
+						struct FaceBoundary2
+						{
+							int left;
+							int top;
+							int height;
+							int width;
+						};
+						FaceBoundary2 faceBoundary2;
+					};
+					std::string faceId;
+					FaceAttributes1 faceAttributes1;
+				};
+
+
+				CompareImageFacesResult();
+				explicit CompareImageFacesResult(const std::string &payload);
+				~CompareImageFacesResult();
+				float getSimilarity()const;
+				FaceA getFaceA()const;
+				std::string getSetId()const;
+				FaceB getFaceB()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				float similarity_;
+				FaceA faceA_;
+				std::string setId_;
+				FaceB faceB_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_COMPAREIMAGEFACESRESULT_H_

+ 111 - 0
imm/include/alibabacloud/imm/model/ConvertOfficeFormatRequest.h

@@ -0,0 +1,111 @@
+/*
+ * 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_IMM_MODEL_CONVERTOFFICEFORMATREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CONVERTOFFICEFORMATREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT ConvertOfficeFormatRequest : public RpcServiceRequest
+			{
+
+			public:
+				ConvertOfficeFormatRequest();
+				~ConvertOfficeFormatRequest();
+
+				std::string getSrcType()const;
+				void setSrcType(const std::string& srcType);
+				std::string getModelId()const;
+				void setModelId(const std::string& modelId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				long getMaxSheetRow()const;
+				void setMaxSheetRow(long maxSheetRow);
+				long getMaxSheetCount()const;
+				void setMaxSheetCount(long maxSheetCount);
+				long getEndPage()const;
+				void setEndPage(long endPage);
+				std::string getTgtFileSuffix()const;
+				void setTgtFileSuffix(const std::string& tgtFileSuffix);
+				bool getPdfVector()const;
+				void setPdfVector(bool pdfVector);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				bool getSheetOnePage()const;
+				void setSheetOnePage(bool sheetOnePage);
+				std::string getPassword()const;
+				void setPassword(const std::string& password);
+				long getStartPage()const;
+				void setStartPage(long startPage);
+				long getMaxSheetCol()const;
+				void setMaxSheetCol(long maxSheetCol);
+				std::string getTgtType()const;
+				void setTgtType(const std::string& tgtType);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				bool getFitToPagesWide()const;
+				void setFitToPagesWide(bool fitToPagesWide);
+				bool getHidecomments()const;
+				void setHidecomments(bool hidecomments);
+				std::string getTgtFilePrefix()const;
+				void setTgtFilePrefix(const std::string& tgtFilePrefix);
+				bool getFitToPagesTall()const;
+				void setFitToPagesTall(bool fitToPagesTall);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getTgtFilePages()const;
+				void setTgtFilePages(const std::string& tgtFilePages);
+				std::string getTgtUri()const;
+				void setTgtUri(const std::string& tgtUri);
+
+            private:
+				std::string srcType_;
+				std::string modelId_;
+				std::string project_;
+				long maxSheetRow_;
+				long maxSheetCount_;
+				long endPage_;
+				std::string tgtFileSuffix_;
+				bool pdfVector_;
+				std::string accessKeyId_;
+				bool sheetOnePage_;
+				std::string password_;
+				long startPage_;
+				long maxSheetCol_;
+				std::string tgtType_;
+				std::string regionId_;
+				bool fitToPagesWide_;
+				bool hidecomments_;
+				std::string tgtFilePrefix_;
+				bool fitToPagesTall_;
+				std::string srcUri_;
+				std::string tgtFilePages_;
+				std::string tgtUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CONVERTOFFICEFORMATREQUEST_H_

+ 51 - 0
imm/include/alibabacloud/imm/model/ConvertOfficeFormatResult.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_IMM_MODEL_CONVERTOFFICEFORMATRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CONVERTOFFICEFORMATRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT ConvertOfficeFormatResult : public ServiceResult
+			{
+			public:
+
+
+				ConvertOfficeFormatResult();
+				explicit ConvertOfficeFormatResult(const std::string &payload);
+				~ConvertOfficeFormatResult();
+				int getPageCount()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int pageCount_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CONVERTOFFICEFORMATRESULT_H_

+ 96 - 0
imm/include/alibabacloud/imm/model/CreateCADConversionTaskRequest.h

@@ -0,0 +1,96 @@
+/*
+ * 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_IMM_MODEL_CREATECADCONVERSIONTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATECADCONVERSIONTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateCADConversionTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateCADConversionTaskRequest();
+				~CreateCADConversionTaskRequest();
+
+				std::string getSrcType()const;
+				void setSrcType(const std::string& srcType);
+				int getBaseCol()const;
+				void setBaseCol(int baseCol);
+				std::string getNotifyTopicName()const;
+				void setNotifyTopicName(const std::string& notifyTopicName);
+				long getUnitWidth()const;
+				void setUnitWidth(long unitWidth);
+				int getZoomLevel()const;
+				void setZoomLevel(int zoomLevel);
+				int getBaseRow()const;
+				void setBaseRow(int baseRow);
+				std::string getModelId()const;
+				void setModelId(const std::string& modelId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				int getZoomFactor()const;
+				void setZoomFactor(int zoomFactor);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getTgtType()const;
+				void setTgtType(const std::string& tgtType);
+				long getUnitHeight()const;
+				void setUnitHeight(long unitHeight);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNotifyEndpoint()const;
+				void setNotifyEndpoint(const std::string& notifyEndpoint);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				bool getThumbnails()const;
+				void setThumbnails(bool thumbnails);
+				std::string getTgtUri()const;
+				void setTgtUri(const std::string& tgtUri);
+
+            private:
+				std::string srcType_;
+				int baseCol_;
+				std::string notifyTopicName_;
+				long unitWidth_;
+				int zoomLevel_;
+				int baseRow_;
+				std::string modelId_;
+				std::string project_;
+				int zoomFactor_;
+				std::string accessKeyId_;
+				std::string tgtType_;
+				long unitHeight_;
+				std::string regionId_;
+				std::string notifyEndpoint_;
+				std::string srcUri_;
+				bool thumbnails_;
+				std::string tgtUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATECADCONVERSIONTASKREQUEST_H_

+ 59 - 0
imm/include/alibabacloud/imm/model/CreateCADConversionTaskResult.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_IMM_MODEL_CREATECADCONVERSIONTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATECADCONVERSIONTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateCADConversionTaskResult : public ServiceResult
+			{
+			public:
+
+
+				CreateCADConversionTaskResult();
+				explicit CreateCADConversionTaskResult(const std::string &payload);
+				~CreateCADConversionTaskResult();
+				std::string getStatus()const;
+				std::string getTaskId()const;
+				int getPercent()const;
+				std::string getTgtLoc()const;
+				std::string getCreateTime()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				std::string taskId_;
+				int percent_;
+				std::string tgtLoc_;
+				std::string createTime_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATECADCONVERSIONTASKRESULT_H_

+ 84 - 0
imm/include/alibabacloud/imm/model/CreateDocIndexTaskRequest.h

@@ -0,0 +1,84 @@
+/*
+ * 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_IMM_MODEL_CREATEDOCINDEXTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEDOCINDEXTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateDocIndexTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateDocIndexTaskRequest();
+				~CreateDocIndexTaskRequest();
+
+				std::string getCustomKey1()const;
+				void setCustomKey1(const std::string& customKey1);
+				std::string getSet()const;
+				void setSet(const std::string& set);
+				std::string getCustomKey5()const;
+				void setCustomKey5(const std::string& customKey5);
+				std::string getCustomKey4()const;
+				void setCustomKey4(const std::string& customKey4);
+				std::string getCustomKey3()const;
+				void setCustomKey3(const std::string& customKey3);
+				std::string getCustomKey2()const;
+				void setCustomKey2(const std::string& customKey2);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getCustomKey6()const;
+				void setCustomKey6(const std::string& customKey6);
+				std::string getContentType()const;
+				void setContentType(const std::string& contentType);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getUniqueId()const;
+				void setUniqueId(const std::string& uniqueId);
+
+            private:
+				std::string customKey1_;
+				std::string set_;
+				std::string customKey5_;
+				std::string customKey4_;
+				std::string customKey3_;
+				std::string customKey2_;
+				std::string project_;
+				std::string customKey6_;
+				std::string contentType_;
+				std::string regionId_;
+				std::string name_;
+				std::string srcUri_;
+				std::string uniqueId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEDOCINDEXTASKREQUEST_H_

+ 55 - 0
imm/include/alibabacloud/imm/model/CreateDocIndexTaskResult.h

@@ -0,0 +1,55 @@
+/*
+ * 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_IMM_MODEL_CREATEDOCINDEXTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEDOCINDEXTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateDocIndexTaskResult : public ServiceResult
+			{
+			public:
+
+
+				CreateDocIndexTaskResult();
+				explicit CreateDocIndexTaskResult(const std::string &payload);
+				~CreateDocIndexTaskResult();
+				std::string getStatus()const;
+				std::string getTaskId()const;
+				std::string getCreateTime()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				std::string taskId_;
+				std::string createTime_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEDOCINDEXTASKRESULT_H_

+ 54 - 0
imm/include/alibabacloud/imm/model/CreateFaceSetRequest.h

@@ -0,0 +1,54 @@
+/*
+ * 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_IMM_MODEL_CREATEFACESETREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEFACESETREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateFaceSetRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateFaceSetRequest();
+				~CreateFaceSetRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEFACESETREQUEST_H_

+ 61 - 0
imm/include/alibabacloud/imm/model/CreateFaceSetResult.h

@@ -0,0 +1,61 @@
+/*
+ * 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_IMM_MODEL_CREATEFACESETRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEFACESETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateFaceSetResult : public ServiceResult
+			{
+			public:
+
+
+				CreateFaceSetResult();
+				explicit CreateFaceSetResult(const std::string &payload);
+				~CreateFaceSetResult();
+				std::string getStatus()const;
+				long getPhotos()const;
+				std::string getModifyTime()const;
+				std::string getCreateTime()const;
+				std::string getSetId()const;
+				long getFaces()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				long photos_;
+				std::string modifyTime_;
+				std::string createTime_;
+				std::string setId_;
+				long faces_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEFACESETRESULT_H_

+ 63 - 0
imm/include/alibabacloud/imm/model/CreateGroupFacesJobRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_IMM_MODEL_CREATEGROUPFACESJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEGROUPFACESJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateGroupFacesJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateGroupFacesJobRequest();
+				~CreateGroupFacesJobRequest();
+
+				std::string getNotifyTopicName()const;
+				void setNotifyTopicName(const std::string& notifyTopicName);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNotifyEndpoint()const;
+				void setNotifyEndpoint(const std::string& notifyEndpoint);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string notifyTopicName_;
+				std::string regionId_;
+				std::string notifyEndpoint_;
+				std::string project_;
+				std::string setId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEGROUPFACESJOBREQUEST_H_

+ 55 - 0
imm/include/alibabacloud/imm/model/CreateGroupFacesJobResult.h

@@ -0,0 +1,55 @@
+/*
+ * 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_IMM_MODEL_CREATEGROUPFACESJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEGROUPFACESJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateGroupFacesJobResult : public ServiceResult
+			{
+			public:
+
+
+				CreateGroupFacesJobResult();
+				explicit CreateGroupFacesJobResult(const std::string &payload);
+				~CreateGroupFacesJobResult();
+				std::string getJobType()const;
+				std::string getSetId()const;
+				std::string getJobId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string jobType_;
+				std::string setId_;
+				std::string jobId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEGROUPFACESJOBRESULT_H_

+ 123 - 0
imm/include/alibabacloud/imm/model/CreateOfficeConversionTaskRequest.h

@@ -0,0 +1,123 @@
+/*
+ * 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_IMM_MODEL_CREATEOFFICECONVERSIONTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEOFFICECONVERSIONTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateOfficeConversionTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateOfficeConversionTaskRequest();
+				~CreateOfficeConversionTaskRequest();
+
+				std::string getSrcType()const;
+				void setSrcType(const std::string& srcType);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getIdempotentToken()const;
+				void setIdempotentToken(const std::string& idempotentToken);
+				bool getPdfVector()const;
+				void setPdfVector(bool pdfVector);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getPassword()const;
+				void setPassword(const std::string& password);
+				long getStartPage()const;
+				void setStartPage(long startPage);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNotifyEndpoint()const;
+				void setNotifyEndpoint(const std::string& notifyEndpoint);
+				bool getFitToPagesWide()const;
+				void setFitToPagesWide(bool fitToPagesWide);
+				std::string getTgtFilePrefix()const;
+				void setTgtFilePrefix(const std::string& tgtFilePrefix);
+				std::string getNotifyTopicName()const;
+				void setNotifyTopicName(const std::string& notifyTopicName);
+				std::string getModelId()const;
+				void setModelId(const std::string& modelId);
+				int getDisplayDpi()const;
+				void setDisplayDpi(int displayDpi);
+				long getMaxSheetRow()const;
+				void setMaxSheetRow(long maxSheetRow);
+				long getMaxSheetCount()const;
+				void setMaxSheetCount(long maxSheetCount);
+				long getEndPage()const;
+				void setEndPage(long endPage);
+				std::string getTgtFileSuffix()const;
+				void setTgtFileSuffix(const std::string& tgtFileSuffix);
+				bool getSheetOnePage()const;
+				void setSheetOnePage(bool sheetOnePage);
+				long getMaxSheetCol()const;
+				void setMaxSheetCol(long maxSheetCol);
+				std::string getTgtType()const;
+				void setTgtType(const std::string& tgtType);
+				bool getHidecomments()const;
+				void setHidecomments(bool hidecomments);
+				bool getFitToPagesTall()const;
+				void setFitToPagesTall(bool fitToPagesTall);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getTgtFilePages()const;
+				void setTgtFilePages(const std::string& tgtFilePages);
+				std::string getTgtUri()const;
+				void setTgtUri(const std::string& tgtUri);
+
+            private:
+				std::string srcType_;
+				std::string project_;
+				std::string idempotentToken_;
+				bool pdfVector_;
+				std::string accessKeyId_;
+				std::string password_;
+				long startPage_;
+				std::string regionId_;
+				std::string notifyEndpoint_;
+				bool fitToPagesWide_;
+				std::string tgtFilePrefix_;
+				std::string notifyTopicName_;
+				std::string modelId_;
+				int displayDpi_;
+				long maxSheetRow_;
+				long maxSheetCount_;
+				long endPage_;
+				std::string tgtFileSuffix_;
+				bool sheetOnePage_;
+				long maxSheetCol_;
+				std::string tgtType_;
+				bool hidecomments_;
+				bool fitToPagesTall_;
+				std::string srcUri_;
+				std::string tgtFilePages_;
+				std::string tgtUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEOFFICECONVERSIONTASKREQUEST_H_

+ 59 - 0
imm/include/alibabacloud/imm/model/CreateOfficeConversionTaskResult.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_IMM_MODEL_CREATEOFFICECONVERSIONTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEOFFICECONVERSIONTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateOfficeConversionTaskResult : public ServiceResult
+			{
+			public:
+
+
+				CreateOfficeConversionTaskResult();
+				explicit CreateOfficeConversionTaskResult(const std::string &payload);
+				~CreateOfficeConversionTaskResult();
+				std::string getStatus()const;
+				std::string getTaskId()const;
+				int getPercent()const;
+				std::string getTgtLoc()const;
+				std::string getCreateTime()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				std::string taskId_;
+				int percent_;
+				std::string tgtLoc_;
+				std::string createTime_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEOFFICECONVERSIONTASKRESULT_H_

+ 69 - 0
imm/include/alibabacloud/imm/model/CreatePornBatchDetectJobRequest.h

@@ -0,0 +1,69 @@
+/*
+ * 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_IMM_MODEL_CREATEPORNBATCHDETECTJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEPORNBATCHDETECTJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreatePornBatchDetectJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreatePornBatchDetectJobRequest();
+				~CreatePornBatchDetectJobRequest();
+
+				std::string getNotifyTopicName()const;
+				void setNotifyTopicName(const std::string& notifyTopicName);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNotifyEndpoint()const;
+				void setNotifyEndpoint(const std::string& notifyEndpoint);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getExternalID()const;
+				void setExternalID(const std::string& externalID);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getTgtUri()const;
+				void setTgtUri(const std::string& tgtUri);
+
+            private:
+				std::string notifyTopicName_;
+				std::string regionId_;
+				std::string notifyEndpoint_;
+				std::string project_;
+				std::string externalID_;
+				std::string srcUri_;
+				std::string accessKeyId_;
+				std::string tgtUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEPORNBATCHDETECTJOBREQUEST_H_

+ 59 - 0
imm/include/alibabacloud/imm/model/CreatePornBatchDetectJobResult.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_IMM_MODEL_CREATEPORNBATCHDETECTJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEPORNBATCHDETECTJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreatePornBatchDetectJobResult : public ServiceResult
+			{
+			public:
+
+
+				CreatePornBatchDetectJobResult();
+				explicit CreatePornBatchDetectJobResult(const std::string &payload);
+				~CreatePornBatchDetectJobResult();
+				std::string getStatus()const;
+				int getPercent()const;
+				std::string getTgtLoc()const;
+				std::string getCreateTime()const;
+				std::string getJobId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				int percent_;
+				std::string tgtLoc_;
+				std::string createTime_;
+				std::string jobId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEPORNBATCHDETECTJOBRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/CreateSetRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_CREATESETREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATESETREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateSetRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateSetRequest();
+				~CreateSetRequest();
+
+				std::string getSetName()const;
+				void setSetName(const std::string& setName);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string setName_;
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATESETREQUEST_H_

+ 65 - 0
imm/include/alibabacloud/imm/model/CreateSetResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_IMM_MODEL_CREATESETRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATESETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateSetResult : public ServiceResult
+			{
+			public:
+
+
+				CreateSetResult();
+				explicit CreateSetResult(const std::string &payload);
+				~CreateSetResult();
+				std::string getModifyTime()const;
+				int getImageCount()const;
+				int getVideoCount()const;
+				std::string getCreateTime()const;
+				std::string getSetName()const;
+				std::string getSetId()const;
+				int getFaceCount()const;
+				int getVideoLength()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string modifyTime_;
+				int imageCount_;
+				int videoCount_;
+				std::string createTime_;
+				std::string setName_;
+				std::string setId_;
+				int faceCount_;
+				int videoLength_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATESETRESULT_H_

+ 66 - 0
imm/include/alibabacloud/imm/model/CreateTagJobRequest.h

@@ -0,0 +1,66 @@
+/*
+ * 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_IMM_MODEL_CREATETAGJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATETAGJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateTagJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateTagJobRequest();
+				~CreateTagJobRequest();
+
+				std::string getNotifyTopicName()const;
+				void setNotifyTopicName(const std::string& notifyTopicName);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNotifyEndpoint()const;
+				void setNotifyEndpoint(const std::string& notifyEndpoint);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getExternalID()const;
+				void setExternalID(const std::string& externalID);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string notifyTopicName_;
+				std::string regionId_;
+				std::string notifyEndpoint_;
+				std::string project_;
+				std::string externalID_;
+				std::string srcUri_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATETAGJOBREQUEST_H_

+ 63 - 0
imm/include/alibabacloud/imm/model/CreateTagJobResult.h

@@ -0,0 +1,63 @@
+/*
+ * 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_IMM_MODEL_CREATETAGJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATETAGJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateTagJobResult : public ServiceResult
+			{
+			public:
+
+
+				CreateTagJobResult();
+				explicit CreateTagJobResult(const std::string &payload);
+				~CreateTagJobResult();
+				std::string getStatus()const;
+				std::string getFinishTime()const;
+				int getPercent()const;
+				std::string getCreateTime()const;
+				std::string getSetId()const;
+				std::string getJobId()const;
+				std::string getSrcUri()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				std::string finishTime_;
+				int percent_;
+				std::string createTime_;
+				std::string setId_;
+				std::string jobId_;
+				std::string srcUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATETAGJOBRESULT_H_

+ 54 - 0
imm/include/alibabacloud/imm/model/CreateTagSetRequest.h

@@ -0,0 +1,54 @@
+/*
+ * 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_IMM_MODEL_CREATETAGSETREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATETAGSETREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateTagSetRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateTagSetRequest();
+				~CreateTagSetRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATETAGSETREQUEST_H_

+ 59 - 0
imm/include/alibabacloud/imm/model/CreateTagSetResult.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_IMM_MODEL_CREATETAGSETRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATETAGSETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateTagSetResult : public ServiceResult
+			{
+			public:
+
+
+				CreateTagSetResult();
+				explicit CreateTagSetResult(const std::string &payload);
+				~CreateTagSetResult();
+				std::string getStatus()const;
+				long getPhotos()const;
+				std::string getModifyTime()const;
+				std::string getCreateTime()const;
+				std::string getSetId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				long photos_;
+				std::string modifyTime_;
+				std::string createTime_;
+				std::string setId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATETAGSETRESULT_H_

+ 81 - 0
imm/include/alibabacloud/imm/model/CreateVideoAnalyseTaskRequest.h

@@ -0,0 +1,81 @@
+/*
+ * 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_IMM_MODEL_CREATEVIDEOANALYSETASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEVIDEOANALYSETASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateVideoAnalyseTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateVideoAnalyseTaskRequest();
+				~CreateVideoAnalyseTaskRequest();
+
+				std::string getNotifyTopicName()const;
+				void setNotifyTopicName(const std::string& notifyTopicName);
+				std::string getGrabType()const;
+				void setGrabType(const std::string& grabType);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getVideoUri()const;
+				void setVideoUri(const std::string& videoUri);
+				bool getSaveType()const;
+				void setSaveType(bool saveType);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNotifyEndpoint()const;
+				void setNotifyEndpoint(const std::string& notifyEndpoint);
+				std::string getInterval()const;
+				void setInterval(const std::string& interval);
+				std::string getTgtUri()const;
+				void setTgtUri(const std::string& tgtUri);
+
+            private:
+				std::string notifyTopicName_;
+				std::string grabType_;
+				std::string project_;
+				std::string endTime_;
+				std::string startTime_;
+				std::string accessKeyId_;
+				std::string videoUri_;
+				bool saveType_;
+				std::string regionId_;
+				std::string notifyEndpoint_;
+				std::string interval_;
+				std::string tgtUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEVIDEOANALYSETASKREQUEST_H_

+ 53 - 0
imm/include/alibabacloud/imm/model/CreateVideoAnalyseTaskResult.h

@@ -0,0 +1,53 @@
+/*
+ * 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_IMM_MODEL_CREATEVIDEOANALYSETASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_CREATEVIDEOANALYSETASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT CreateVideoAnalyseTaskResult : public ServiceResult
+			{
+			public:
+
+
+				CreateVideoAnalyseTaskResult();
+				explicit CreateVideoAnalyseTaskResult(const std::string &payload);
+				~CreateVideoAnalyseTaskResult();
+				std::string getTaskId()const;
+				std::string getTaskType()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string taskId_;
+				std::string taskType_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_CREATEVIDEOANALYSETASKRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteDocIndexRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETEDOCINDEXREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEDOCINDEXREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteDocIndexRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteDocIndexRequest();
+				~DeleteDocIndexRequest();
+
+				std::string getSet()const;
+				void setSet(const std::string& set);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getUniqueId()const;
+				void setUniqueId(const std::string& uniqueId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string set_;
+				std::string regionId_;
+				std::string project_;
+				std::string uniqueId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEDOCINDEXREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteDocIndexResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEDOCINDEXRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEDOCINDEXRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteDocIndexResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteDocIndexResult();
+				explicit DeleteDocIndexResult(const std::string &payload);
+				~DeleteDocIndexResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEDOCINDEXRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteFaceJobRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETEFACEJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACEJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteFaceJobRequest();
+				~DeleteFaceJobRequest();
+
+				std::string getJobId()const;
+				void setJobId(const std::string& jobId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getClearIndexData()const;
+				void setClearIndexData(const std::string& clearIndexData);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string jobId_;
+				std::string regionId_;
+				std::string project_;
+				std::string clearIndexData_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACEJOBREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteFaceJobResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEFACEJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceJobResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteFaceJobResult();
+				explicit DeleteFaceJobResult(const std::string &payload);
+				~DeleteFaceJobResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACEJOBRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DeleteFaceSearchGroupRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DELETEFACESEARCHGROUPREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHGROUPREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceSearchGroupRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteFaceSearchGroupRequest();
+				~DeleteFaceSearchGroupRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getGroupName()const;
+				void setGroupName(const std::string& groupName);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string groupName_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHGROUPREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteFaceSearchGroupResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEFACESEARCHGROUPRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceSearchGroupResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteFaceSearchGroupResult();
+				explicit DeleteFaceSearchGroupResult(const std::string &payload);
+				~DeleteFaceSearchGroupResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHGROUPRESULT_H_

+ 66 - 0
imm/include/alibabacloud/imm/model/DeleteFaceSearchImageByIdRequest.h

@@ -0,0 +1,66 @@
+/*
+ * 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_IMM_MODEL_DELETEFACESEARCHIMAGEBYIDREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHIMAGEBYIDREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceSearchImageByIdRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteFaceSearchImageByIdRequest();
+				~DeleteFaceSearchImageByIdRequest();
+
+				std::string getImageId()const;
+				void setImageId(const std::string& imageId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getGroupName()const;
+				void setGroupName(const std::string& groupName);
+				std::string getUser()const;
+				void setUser(const std::string& user);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageId_;
+				std::string regionId_;
+				std::string project_;
+				std::string srcUri_;
+				std::string groupName_;
+				std::string user_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHIMAGEBYIDREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteFaceSearchImageByIdResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEFACESEARCHIMAGEBYIDRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHIMAGEBYIDRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceSearchImageByIdResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteFaceSearchImageByIdResult();
+				explicit DeleteFaceSearchImageByIdResult(const std::string &payload);
+				~DeleteFaceSearchImageByIdResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHIMAGEBYIDRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteFaceSearchUserRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHUSERREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHUSERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceSearchUserRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteFaceSearchUserRequest();
+				~DeleteFaceSearchUserRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getGroupName()const;
+				void setGroupName(const std::string& groupName);
+				std::string getUser()const;
+				void setUser(const std::string& user);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string groupName_;
+				std::string user_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHUSERREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteFaceSearchUserResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEFACESEARCHUSERRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHUSERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteFaceSearchUserResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteFaceSearchUserResult();
+				explicit DeleteFaceSearchUserResult(const std::string &payload);
+				~DeleteFaceSearchUserResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEFACESEARCHUSERRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteImageJobRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETEIMAGEJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEIMAGEJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteImageJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteImageJobRequest();
+				~DeleteImageJobRequest();
+
+				std::string getJobId()const;
+				void setJobId(const std::string& jobId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getJobType()const;
+				void setJobType(const std::string& jobType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string jobId_;
+				std::string regionId_;
+				std::string project_;
+				std::string jobType_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEIMAGEJOBREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteImageJobResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEIMAGEJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEIMAGEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteImageJobResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteImageJobResult();
+				explicit DeleteImageJobResult(const std::string &payload);
+				~DeleteImageJobResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEIMAGEJOBRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteImageRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETEIMAGEREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEIMAGEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteImageRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteImageRequest();
+				~DeleteImageRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEIMAGEREQUEST_H_

+ 53 - 0
imm/include/alibabacloud/imm/model/DeleteImageResult.h

@@ -0,0 +1,53 @@
+/*
+ * 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_IMM_MODEL_DELETEIMAGERESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEIMAGERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteImageResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteImageResult();
+				explicit DeleteImageResult(const std::string &payload);
+				~DeleteImageResult();
+				std::string getSetId()const;
+				std::string getImageUri()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string setId_;
+				std::string imageUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEIMAGERESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DeleteOfficeConversionTaskRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DELETEOFFICECONVERSIONTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEOFFICECONVERSIONTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteOfficeConversionTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteOfficeConversionTaskRequest();
+				~DeleteOfficeConversionTaskRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getTaskId()const;
+				void setTaskId(const std::string& taskId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string taskId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEOFFICECONVERSIONTASKREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteOfficeConversionTaskResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEOFFICECONVERSIONTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEOFFICECONVERSIONTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteOfficeConversionTaskResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteOfficeConversionTaskResult();
+				explicit DeleteOfficeConversionTaskResult(const std::string &payload);
+				~DeleteOfficeConversionTaskResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEOFFICECONVERSIONTASKRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DeletePhotoProcessTaskRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DELETEPHOTOPROCESSTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEPHOTOPROCESSTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeletePhotoProcessTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeletePhotoProcessTaskRequest();
+				~DeletePhotoProcessTaskRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getTaskId()const;
+				void setTaskId(const std::string& taskId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string taskId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEPHOTOPROCESSTASKREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeletePhotoProcessTaskResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEPHOTOPROCESSTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEPHOTOPROCESSTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeletePhotoProcessTaskResult : public ServiceResult
+			{
+			public:
+
+
+				DeletePhotoProcessTaskResult();
+				explicit DeletePhotoProcessTaskResult(const std::string &payload);
+				~DeletePhotoProcessTaskResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEPHOTOPROCESSTASKRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DeletePornBatchDetectJobRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DELETEPORNBATCHDETECTJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEPORNBATCHDETECTJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeletePornBatchDetectJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeletePornBatchDetectJobRequest();
+				~DeletePornBatchDetectJobRequest();
+
+				std::string getJobId()const;
+				void setJobId(const std::string& jobId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string jobId_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEPORNBATCHDETECTJOBREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeletePornBatchDetectJobResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEPORNBATCHDETECTJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEPORNBATCHDETECTJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeletePornBatchDetectJobResult : public ServiceResult
+			{
+			public:
+
+
+				DeletePornBatchDetectJobResult();
+				explicit DeletePornBatchDetectJobResult(const std::string &payload);
+				~DeletePornBatchDetectJobResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEPORNBATCHDETECTJOBRESULT_H_

+ 54 - 0
imm/include/alibabacloud/imm/model/DeleteProjectRequest.h

@@ -0,0 +1,54 @@
+/*
+ * 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_IMM_MODEL_DELETEPROJECTREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEPROJECTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteProjectRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteProjectRequest();
+				~DeleteProjectRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEPROJECTREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteProjectResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEPROJECTRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEPROJECTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteProjectResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteProjectResult();
+				explicit DeleteProjectResult(const std::string &payload);
+				~DeleteProjectResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEPROJECTRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DeleteSetRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DELETESETREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETESETREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteSetRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteSetRequest();
+				~DeleteSetRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETESETREQUEST_H_

+ 51 - 0
imm/include/alibabacloud/imm/model/DeleteSetResult.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_IMM_MODEL_DELETESETRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETESETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteSetResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteSetResult();
+				explicit DeleteSetResult(const std::string &payload);
+				~DeleteSetResult();
+				std::string getSetId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string setId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETESETRESULT_H_

+ 63 - 0
imm/include/alibabacloud/imm/model/DeleteTagByNameRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_IMM_MODEL_DELETETAGBYNAMEREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGBYNAMEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagByNameRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteTagByNameRequest();
+				~DeleteTagByNameRequest();
+
+				std::string getTagName()const;
+				void setTagName(const std::string& tagName);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string tagName_;
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				std::string srcUri_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGBYNAMEREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteTagByNameResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETETAGBYNAMERESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGBYNAMERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagByNameResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTagByNameResult();
+				explicit DeleteTagByNameResult(const std::string &payload);
+				~DeleteTagByNameResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGBYNAMERESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteTagByUrlRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETETAGBYURLREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGBYURLREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagByUrlRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteTagByUrlRequest();
+				~DeleteTagByUrlRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getSrcUri()const;
+				void setSrcUri(const std::string& srcUri);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				std::string srcUri_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGBYURLREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteTagByUrlResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETETAGBYURLRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGBYURLRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagByUrlResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTagByUrlResult();
+				explicit DeleteTagByUrlResult(const std::string &payload);
+				~DeleteTagByUrlResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGBYURLRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteTagJobRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETETAGJOBREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteTagJobRequest();
+				~DeleteTagJobRequest();
+
+				std::string getJobId()const;
+				void setJobId(const std::string& jobId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getClearIndexData()const;
+				void setClearIndexData(const std::string& clearIndexData);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string jobId_;
+				std::string regionId_;
+				std::string project_;
+				std::string clearIndexData_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGJOBREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteTagJobResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETETAGJOBRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagJobResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTagJobResult();
+				explicit DeleteTagJobResult(const std::string &payload);
+				~DeleteTagJobResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGJOBRESULT_H_

+ 63 - 0
imm/include/alibabacloud/imm/model/DeleteTagSetRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_IMM_MODEL_DELETETAGSETREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGSETREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagSetRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteTagSetRequest();
+				~DeleteTagSetRequest();
+
+				std::string getLazyMode()const;
+				void setLazyMode(const std::string& lazyMode);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getCheckEmpty()const;
+				void setCheckEmpty(const std::string& checkEmpty);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string lazyMode_;
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				std::string checkEmpty_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGSETREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteTagSetResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETETAGSETRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETETAGSETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteTagSetResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTagSetResult();
+				explicit DeleteTagSetResult(const std::string &payload);
+				~DeleteTagSetResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETETAGSETRESULT_H_

+ 63 - 0
imm/include/alibabacloud/imm/model/DeleteVideoRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_IMM_MODEL_DELETEVIDEOREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEVIDEOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteVideoRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteVideoRequest();
+				~DeleteVideoRequest();
+
+				std::string getVideoUri()const;
+				void setVideoUri(const std::string& videoUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				bool getResources()const;
+				void setResources(bool resources);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string videoUri_;
+				std::string regionId_;
+				std::string project_;
+				std::string setId_;
+				bool resources_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEVIDEOREQUEST_H_

+ 53 - 0
imm/include/alibabacloud/imm/model/DeleteVideoResult.h

@@ -0,0 +1,53 @@
+/*
+ * 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_IMM_MODEL_DELETEVIDEORESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEVIDEORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteVideoResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteVideoResult();
+				explicit DeleteVideoResult(const std::string &payload);
+				~DeleteVideoResult();
+				std::string getVideoUri()const;
+				std::string getSetId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string videoUri_;
+				std::string setId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEVIDEORESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DeleteVideoTaskRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DELETEVIDEOTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEVIDEOTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteVideoTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteVideoTaskRequest();
+				~DeleteVideoTaskRequest();
+
+				std::string getTaskType()const;
+				void setTaskType(const std::string& taskType);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getTaskId()const;
+				void setTaskId(const std::string& taskId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string taskType_;
+				std::string regionId_;
+				std::string project_;
+				std::string taskId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEVIDEOTASKREQUEST_H_

+ 49 - 0
imm/include/alibabacloud/imm/model/DeleteVideoTaskResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_IMM_MODEL_DELETEVIDEOTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DELETEVIDEOTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DeleteVideoTaskResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteVideoTaskResult();
+				explicit DeleteVideoTaskResult(const std::string &payload);
+				~DeleteVideoTaskResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DELETEVIDEOTASKRESULT_H_

+ 51 - 0
imm/include/alibabacloud/imm/model/DescribeRegionsRequest.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_IMM_MODEL_DESCRIBEREGIONSREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DESCRIBEREGIONSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DescribeRegionsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRegionsRequest();
+				~DescribeRegionsRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DESCRIBEREGIONSREQUEST_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DescribeRegionsResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DESCRIBEREGIONSRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DESCRIBEREGIONSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DescribeRegionsResult : public ServiceResult
+			{
+			public:
+				struct Regions
+				{
+					struct RegionItem
+					{
+						std::vector<std::string> projectTypes;
+						std::string regionId;
+					};
+					std::vector<RegionItem> region;
+				};
+
+
+				DescribeRegionsResult();
+				explicit DescribeRegionsResult(const std::string &payload);
+				~DescribeRegionsResult();
+				Regions getRegions()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Regions regions_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DESCRIBEREGIONSRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectClothesRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTCLOTHESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTCLOTHESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectClothesRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectClothesRequest();
+				~DetectClothesRequest();
+
+				std::string getSrcUris()const;
+				void setSrcUris(const std::string& srcUris);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string srcUris_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTCLOTHESREQUEST_H_

+ 75 - 0
imm/include/alibabacloud/imm/model/DetectClothesResult.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_IMM_MODEL_DETECTCLOTHESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTCLOTHESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectClothesResult : public ServiceResult
+			{
+			public:
+				struct SuccessDetailsItem
+				{
+					struct ClothesBoxDetailItem
+					{
+						std::string type;
+						float score;
+						std::string pUID;
+						std::vector<std::string> box;
+					};
+					std::string getImageTime;
+					std::vector<SuccessDetailsItem::ClothesBoxDetailItem> clothesBoxDetail;
+					std::string detectTime;
+					std::string time;
+					std::string srcUri;
+				};
+				struct FailDetailsItem
+				{
+					std::string reason;
+					std::string srcUri;
+				};
+
+
+				DetectClothesResult();
+				explicit DetectClothesResult(const std::string &payload);
+				~DetectClothesResult();
+				std::vector<SuccessDetailsItem> getSuccessDetails()const;
+				std::vector<std::string> getSrcUris()const;
+				std::vector<FailDetailsItem> getFailDetails()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<SuccessDetailsItem> successDetails_;
+				std::vector<std::string> srcUris_;
+				std::vector<FailDetailsItem> failDetails_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTCLOTHESRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DetectImageCelebrityRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DETECTIMAGECELEBRITYREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGECELEBRITYREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageCelebrityRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectImageCelebrityRequest();
+				~DetectImageCelebrityRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getLibrary()const;
+				void setLibrary(const std::string& library);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string library_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGECELEBRITYREQUEST_H_

+ 68 - 0
imm/include/alibabacloud/imm/model/DetectImageCelebrityResult.h

@@ -0,0 +1,68 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGECELEBRITYRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGECELEBRITYRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageCelebrityResult : public ServiceResult
+			{
+			public:
+				struct CelebrityItem
+				{
+					struct CelebrityBoundary
+					{
+						int left;
+						int top;
+						int height;
+						int width;
+					};
+					std::string celebrityName;
+					CelebrityBoundary celebrityBoundary;
+					std::string celebrityGender;
+					std::string celebrityLibraryName;
+					float celebrityConfidence;
+				};
+
+
+				DetectImageCelebrityResult();
+				explicit DetectImageCelebrityResult(const std::string &payload);
+				~DetectImageCelebrityResult();
+				std::vector<CelebrityItem> getCelebrity()const;
+				std::string getImageUri()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<CelebrityItem> celebrity_;
+				std::string imageUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGECELEBRITYRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectImageFacesRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGEFACESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGEFACESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageFacesRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectImageFacesRequest();
+				~DetectImageFacesRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGEFACESREQUEST_H_

+ 105 - 0
imm/include/alibabacloud/imm/model/DetectImageFacesResult.h

@@ -0,0 +1,105 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGEFACESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGEFACESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageFacesResult : public ServiceResult
+			{
+			public:
+				struct FacesItem
+				{
+					struct FaceAttributes
+					{
+						struct FaceBoundary
+						{
+							int left;
+							int top;
+							int height;
+							int width;
+						};
+						struct HeadPose
+						{
+							float pitch;
+							float roll;
+							float yaw;
+						};
+						FaceBoundary faceBoundary;
+						std::string beard;
+						float beardConfidence;
+						HeadPose headPose;
+						std::string race;
+						float raceConfidence;
+						std::string glasses;
+						std::string mask;
+						float maskConfidence;
+						float glassesConfidence;
+					};
+					struct EmotionDetails
+					{
+						float cALM;
+						float sCARED;
+						float hAPPY;
+						float sAD;
+						float sURPRISED;
+						float aNGRY;
+						float dISGUSTED;
+					};
+					std::string faceId;
+					float attractiveConfidence;
+					FaceAttributes faceAttributes;
+					float genderConfidence;
+					float emotionConfidence;
+					std::string gender;
+					EmotionDetails emotionDetails;
+					float faceConfidence;
+					float attractive;
+					float faceQuality;
+					std::string emotion;
+					int age;
+					float ageConfidence;
+				};
+
+
+				DetectImageFacesResult();
+				explicit DetectImageFacesResult(const std::string &payload);
+				~DetectImageFacesResult();
+				std::string getImageUri()const;
+				std::vector<FacesItem> getFaces()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string imageUri_;
+				std::vector<FacesItem> faces_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGEFACESRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectImageLogosRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGELOGOSREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGELOGOSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageLogosRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectImageLogosRequest();
+				~DetectImageLogosRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGELOGOSREQUEST_H_

+ 66 - 0
imm/include/alibabacloud/imm/model/DetectImageLogosResult.h

@@ -0,0 +1,66 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGELOGOSRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGELOGOSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageLogosResult : public ServiceResult
+			{
+			public:
+				struct LogosItem
+				{
+					struct LogoBoundary
+					{
+						int left;
+						int top;
+						int height;
+						int width;
+					};
+					LogoBoundary logoBoundary;
+					std::string logoName;
+					float logoConfidence;
+				};
+
+
+				DetectImageLogosResult();
+				explicit DetectImageLogosResult(const std::string &payload);
+				~DetectImageLogosResult();
+				std::vector<LogosItem> getLogos()const;
+				std::string getImageUri()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<LogosItem> logos_;
+				std::string imageUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGELOGOSRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectImageTagsRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGETAGSREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGETAGSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageTagsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectImageTagsRequest();
+				~DetectImageTagsRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGETAGSREQUEST_H_

+ 62 - 0
imm/include/alibabacloud/imm/model/DetectImageTagsResult.h

@@ -0,0 +1,62 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGETAGSRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGETAGSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageTagsResult : public ServiceResult
+			{
+			public:
+				struct TagsItem
+				{
+					std::string tagName;
+					float tagConfidence;
+					std::string tagEnName;
+					int tagLevel;
+					std::string parentTagEnName;
+					std::string parentTagName;
+				};
+
+
+				DetectImageTagsResult();
+				explicit DetectImageTagsResult(const std::string &payload);
+				~DetectImageTagsResult();
+				std::string getImageUri()const;
+				std::vector<TagsItem> getTags()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string imageUri_;
+				std::vector<TagsItem> tags_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGETAGSRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectImageTextsRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGETEXTSREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGETEXTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageTextsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectImageTextsRequest();
+				~DetectImageTextsRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGETEXTSREQUEST_H_

+ 66 - 0
imm/include/alibabacloud/imm/model/DetectImageTextsResult.h

@@ -0,0 +1,66 @@
+/*
+ * 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_IMM_MODEL_DETECTIMAGETEXTSRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTIMAGETEXTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectImageTextsResult : public ServiceResult
+			{
+			public:
+				struct OCRItem
+				{
+					struct OCRBoundary
+					{
+						int left;
+						int top;
+						int height;
+						int width;
+					};
+					OCRBoundary oCRBoundary;
+					float oCRConfidence;
+					std::string oCRContents;
+				};
+
+
+				DetectImageTextsResult();
+				explicit DetectImageTextsResult(const std::string &payload);
+				~DetectImageTextsResult();
+				std::string getImageUri()const;
+				std::vector<OCRItem> getOCR()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string imageUri_;
+				std::vector<OCRItem> oCR_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTIMAGETEXTSRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectLogoRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTLOGOREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTLOGOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectLogoRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectLogoRequest();
+				~DetectLogoRequest();
+
+				std::string getSrcUris()const;
+				void setSrcUris(const std::string& srcUris);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string srcUris_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTLOGOREQUEST_H_

+ 75 - 0
imm/include/alibabacloud/imm/model/DetectLogoResult.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_IMM_MODEL_DETECTLOGORESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTLOGORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectLogoResult : public ServiceResult
+			{
+			public:
+				struct SuccessDetailsItem
+				{
+					struct LogoBoxDetailItem
+					{
+						std::string type;
+						float score;
+						std::string pUID;
+						std::vector<std::string> box;
+					};
+					std::string getImageTime;
+					std::string detectTime;
+					std::string time;
+					std::vector<SuccessDetailsItem::LogoBoxDetailItem> logoBoxDetail;
+					std::string srcUri;
+				};
+				struct FailDetailsItem
+				{
+					std::string reason;
+					std::string srcUri;
+				};
+
+
+				DetectLogoResult();
+				explicit DetectLogoResult(const std::string &payload);
+				~DetectLogoResult();
+				std::vector<SuccessDetailsItem> getSuccessDetails()const;
+				std::vector<std::string> getSrcUris()const;
+				std::vector<FailDetailsItem> getFailDetails()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<SuccessDetailsItem> successDetails_;
+				std::vector<std::string> srcUris_;
+				std::vector<FailDetailsItem> failDetails_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTLOGORESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/DetectQRCodesRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_DETECTQRCODESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTQRCODESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectQRCodesRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectQRCodesRequest();
+				~DetectQRCodesRequest();
+
+				std::string getSrcUris()const;
+				void setSrcUris(const std::string& srcUris);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string srcUris_;
+				std::string regionId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTQRCODESREQUEST_H_

+ 76 - 0
imm/include/alibabacloud/imm/model/DetectQRCodesResult.h

@@ -0,0 +1,76 @@
+/*
+ * 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_IMM_MODEL_DETECTQRCODESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTQRCODESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectQRCodesResult : public ServiceResult
+			{
+			public:
+				struct SuccessDetailsItem
+				{
+					struct QRCodesItem
+					{
+						struct QRCodesRectangle
+						{
+							std::string left;
+							std::string top;
+							std::string height;
+							std::string width;
+						};
+						QRCodesRectangle qRCodesRectangle;
+						std::string content;
+					};
+					std::vector<SuccessDetailsItem::QRCodesItem> qRCodes;
+					std::string srcUri;
+				};
+				struct FailDetailsItem
+				{
+					std::string errorCode;
+					std::string errorMessage;
+					std::string srcUri;
+				};
+
+
+				DetectQRCodesResult();
+				explicit DetectQRCodesResult(const std::string &payload);
+				~DetectQRCodesResult();
+				std::vector<SuccessDetailsItem> getSuccessDetails()const;
+				std::vector<FailDetailsItem> getFailDetails()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<SuccessDetailsItem> successDetails_;
+				std::vector<FailDetailsItem> failDetails_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTQRCODESRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/DetectTagRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_DETECTTAGREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTTAGREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectTagRequest : public RpcServiceRequest
+			{
+
+			public:
+				DetectTagRequest();
+				~DetectTagRequest();
+
+				std::string getSrcUris()const;
+				void setSrcUris(const std::string& srcUris);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getModelId()const;
+				void setModelId(const std::string& modelId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string srcUris_;
+				std::string regionId_;
+				std::string modelId_;
+				std::string project_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTTAGREQUEST_H_

+ 74 - 0
imm/include/alibabacloud/imm/model/DetectTagResult.h

@@ -0,0 +1,74 @@
+/*
+ * 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_IMM_MODEL_DETECTTAGRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_DETECTTAGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT DetectTagResult : public ServiceResult
+			{
+			public:
+				struct SuccessDetailsItem
+				{
+					struct TagsItem
+					{
+						std::string parentTagId;
+						std::string tagName;
+						std::string tagId;
+						std::string tagScore;
+						std::string tagLevel;
+						std::string parentTagName;
+					};
+					std::vector<SuccessDetailsItem::TagsItem> tags;
+					std::string srcUri;
+				};
+				struct FailDetailsItem
+				{
+					std::string reason;
+					std::string srcUri;
+				};
+
+
+				DetectTagResult();
+				explicit DetectTagResult(const std::string &payload);
+				~DetectTagResult();
+				std::vector<SuccessDetailsItem> getSuccessDetails()const;
+				std::string getSuccessNum()const;
+				std::vector<FailDetailsItem> getFailDetails()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<SuccessDetailsItem> successDetails_;
+				std::string successNum_;
+				std::vector<FailDetailsItem> failDetails_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_DETECTTAGRESULT_H_

+ 66 - 0
imm/include/alibabacloud/imm/model/FindImagesByTagNamesRequest.h

@@ -0,0 +1,66 @@
+/*
+ * 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_IMM_MODEL_FINDIMAGESBYTAGNAMESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_FINDIMAGESBYTAGNAMESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT FindImagesByTagNamesRequest : public RpcServiceRequest
+			{
+
+			public:
+				FindImagesByTagNamesRequest();
+				~FindImagesByTagNamesRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getMarker()const;
+				void setMarker(const std::string& marker);
+				int getLimit()const;
+				void setLimit(int limit);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getTagNames()const;
+				void setTagNames(const std::string& tagNames);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string marker_;
+				int limit_;
+				std::string project_;
+				std::string setId_;
+				std::string tagNames_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_FINDIMAGESBYTAGNAMESREQUEST_H_

+ 179 - 0
imm/include/alibabacloud/imm/model/FindImagesByTagNamesResult.h

@@ -0,0 +1,179 @@
+/*
+ * 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_IMM_MODEL_FINDIMAGESBYTAGNAMESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_FINDIMAGESBYTAGNAMESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT FindImagesByTagNamesResult : public ServiceResult
+			{
+			public:
+				struct Frames
+				{
+					struct FacesItem
+					{
+						struct EmotionDetails
+						{
+							float cALM;
+							float sCARED;
+							float hAPPY;
+							float sAD;
+							float sURPRISED;
+							float aNGRY;
+							float dISGUSTED;
+						};
+						struct FaceAttributes
+						{
+							struct FaceBoundary
+							{
+								int left;
+								int top;
+								int height;
+								int width;
+							};
+							struct HeadPose
+							{
+								float pitch;
+								float roll;
+								float yaw;
+							};
+							FaceBoundary faceBoundary;
+							std::string beard;
+							float beardConfidence;
+							HeadPose headPose;
+							float raceConfidence;
+							std::string race;
+							std::string glasses;
+							float maskConfidence;
+							std::string mask;
+							float glassesConfidence;
+						};
+						EmotionDetails emotionDetails;
+						float faceConfidence;
+						std::string faceId;
+						float attractive;
+						float faceQuality;
+						FaceAttributes faceAttributes;
+						float genderConfidence;
+						float emotionConfidence;
+						std::string gender;
+						std::string emotion;
+						int age;
+						std::string groupId;
+					};
+					struct TagsItem
+					{
+						float tagConfidence;
+						std::string tagName;
+						int tagLevel;
+						std::string parentTagName;
+					};
+					struct OCRItem
+					{
+						struct OCRBoundary
+						{
+							int left;
+							int left1;
+							int height;
+							int width;
+						};
+						OCRBoundary oCRBoundary;
+						float oCRConfidence;
+						std::string oCRContents;
+					};
+					struct CelebrityItem
+					{
+						struct CelebrityBoundary
+						{
+							int left;
+							int top;
+							int height;
+							int width;
+						};
+						std::string celebrityName;
+						CelebrityBoundary celebrityBoundary;
+						std::string celebrityGender;
+						std::string celebrityLibraryName;
+						float celebrityConfidence;
+					};
+					std::string modifyTime;
+					std::string sourceType;
+					std::string sourceUri;
+					std::string facesFailReason;
+					std::string remarksA;
+					std::string remarksB;
+					std::string imageFormat;
+					std::string tagsFailReason;
+					std::string facesModifyTime;
+					std::string exif;
+					std::string remarksC;
+					std::string remarksD;
+					int imageWidth;
+					std::vector<Frames::CelebrityItem> celebrity;
+					std::string sourcePosition;
+					std::vector<Frames::FacesItem> faces;
+					std::vector<Frames::TagsItem> tags;
+					std::string facesStatus;
+					std::string createTime;
+					std::string tagsModifyTime;
+					std::string externalId;
+					std::string imageUri;
+					std::string orientation;
+					std::string oCRStatus;
+					std::string oCRModifyTime;
+					std::string imageTime;
+					std::string celebrityModifyTime;
+					int imageHeight;
+					std::string tagsStatus;
+					std::string oCRFailReason;
+					std::string celebrityFailReason;
+					std::string celebrityStatus;
+					std::vector<Frames::OCRItem> oCR;
+					int fileSize;
+					std::string location;
+				};
+
+
+				FindImagesByTagNamesResult();
+				explicit FindImagesByTagNamesResult(const std::string &payload);
+				~FindImagesByTagNamesResult();
+				std::vector<Frames> getImages()const;
+				std::string getSetId()const;
+				std::string getNextMarker()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Frames> images_;
+				std::string setId_;
+				std::string nextMarker_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_FINDIMAGESBYTAGNAMESRESULT_H_

+ 123 - 0
imm/include/alibabacloud/imm/model/FindImagesRequest.h

@@ -0,0 +1,123 @@
+/*
+ * 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_IMM_MODEL_FINDIMAGESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_FINDIMAGESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT FindImagesRequest : public RpcServiceRequest
+			{
+
+			public:
+				FindImagesRequest();
+				~FindImagesRequest();
+
+				std::string getGender()const;
+				void setGender(const std::string& gender);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getExternalId()const;
+				void setExternalId(const std::string& externalId);
+				std::string getImageSizeRange()const;
+				void setImageSizeRange(const std::string& imageSizeRange);
+				std::string getRemarksBPrefix()const;
+				void setRemarksBPrefix(const std::string& remarksBPrefix);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getLocationBoundary()const;
+				void setLocationBoundary(const std::string& locationBoundary);
+				std::string getImageTimeRange()const;
+				void setImageTimeRange(const std::string& imageTimeRange);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getOCRContentsMatch()const;
+				void setOCRContentsMatch(const std::string& oCRContentsMatch);
+				int getLimit()const;
+				void setLimit(int limit);
+				std::string getRemarksDPrefix()const;
+				void setRemarksDPrefix(const std::string& remarksDPrefix);
+				std::string getSourceType()const;
+				void setSourceType(const std::string& sourceType);
+				std::string getAgeRange()const;
+				void setAgeRange(const std::string& ageRange);
+				std::string getOrder()const;
+				void setOrder(const std::string& order);
+				std::string getRemarksAPrefix()const;
+				void setRemarksAPrefix(const std::string& remarksAPrefix);
+				std::string getGroupId()const;
+				void setGroupId(const std::string& groupId);
+				std::string getOrderBy()const;
+				void setOrderBy(const std::string& orderBy);
+				std::string getTagNames()const;
+				void setTagNames(const std::string& tagNames);
+				std::string getSourceUriPrefix()const;
+				void setSourceUriPrefix(const std::string& sourceUriPrefix);
+				std::string getEmotion()const;
+				void setEmotion(const std::string& emotion);
+				std::string getMarker()const;
+				void setMarker(const std::string& marker);
+				std::string getRemarksCPrefix()const;
+				void setRemarksCPrefix(const std::string& remarksCPrefix);
+				std::string getCreateTimeRange()const;
+				void setCreateTimeRange(const std::string& createTimeRange);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getModifyTimeRange()const;
+				void setModifyTimeRange(const std::string& modifyTimeRange);
+
+            private:
+				std::string gender_;
+				std::string project_;
+				std::string externalId_;
+				std::string imageSizeRange_;
+				std::string remarksBPrefix_;
+				std::string accessKeyId_;
+				std::string locationBoundary_;
+				std::string imageTimeRange_;
+				std::string regionId_;
+				std::string oCRContentsMatch_;
+				int limit_;
+				std::string remarksDPrefix_;
+				std::string sourceType_;
+				std::string ageRange_;
+				std::string order_;
+				std::string remarksAPrefix_;
+				std::string groupId_;
+				std::string orderBy_;
+				std::string tagNames_;
+				std::string sourceUriPrefix_;
+				std::string emotion_;
+				std::string marker_;
+				std::string remarksCPrefix_;
+				std::string createTimeRange_;
+				std::string setId_;
+				std::string modifyTimeRange_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_FINDIMAGESREQUEST_H_

+ 179 - 0
imm/include/alibabacloud/imm/model/FindImagesResult.h

@@ -0,0 +1,179 @@
+/*
+ * 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_IMM_MODEL_FINDIMAGESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_FINDIMAGESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT FindImagesResult : public ServiceResult
+			{
+			public:
+				struct ImagesItem
+				{
+					struct FacesItem
+					{
+						struct EmotionDetails
+						{
+							float cALM;
+							float sCARED;
+							float hAPPY;
+							float sAD;
+							float sURPRISED;
+							float aNGRY;
+							float dISGUSTED;
+						};
+						struct FaceAttributes
+						{
+							struct FaceBoundary
+							{
+								int left;
+								int top;
+								int height;
+								int width;
+							};
+							struct HeadPose
+							{
+								float pitch;
+								float roll;
+								float yaw;
+							};
+							FaceBoundary faceBoundary;
+							std::string beard;
+							float beardConfidence;
+							HeadPose headPose;
+							float raceConfidence;
+							std::string race;
+							std::string glasses;
+							float maskConfidence;
+							std::string mask;
+							float glassesConfidence;
+						};
+						EmotionDetails emotionDetails;
+						float faceConfidence;
+						std::string faceId;
+						float attractive;
+						float faceQuality;
+						FaceAttributes faceAttributes;
+						float genderConfidence;
+						float emotionConfidence;
+						std::string gender;
+						std::string emotion;
+						int age;
+						std::string groupId;
+					};
+					struct TagsItem
+					{
+						float tagConfidence;
+						std::string tagName;
+						int tagLevel;
+						std::string parentTagName;
+					};
+					struct OCRItem
+					{
+						struct OCRBoundary
+						{
+							int left;
+							int left1;
+							int height;
+							int width;
+						};
+						OCRBoundary oCRBoundary;
+						float oCRConfidence;
+						std::string oCRContents;
+					};
+					struct CelebrityItem
+					{
+						struct CelebrityBoundary
+						{
+							int left;
+							int top;
+							int height;
+							int width;
+						};
+						std::string celebrityName;
+						CelebrityBoundary celebrityBoundary;
+						std::string celebrityGender;
+						std::string celebrityLibraryName;
+						float celebrityConfidence;
+					};
+					std::string modifyTime;
+					std::string sourceType;
+					std::string sourceUri;
+					std::string facesFailReason;
+					std::string remarksA;
+					std::string remarksB;
+					std::string imageFormat;
+					std::string tagsFailReason;
+					std::string facesModifyTime;
+					std::string exif;
+					std::string remarksC;
+					std::string remarksD;
+					int imageWidth;
+					std::vector<ImagesItem::CelebrityItem> celebrity;
+					std::string sourcePosition;
+					std::vector<ImagesItem::FacesItem> faces;
+					std::vector<ImagesItem::TagsItem> tags;
+					std::string facesStatus;
+					std::string createTime;
+					std::string tagsModifyTime;
+					std::string externalId;
+					std::string imageUri;
+					std::string orientation;
+					std::string oCRStatus;
+					std::string oCRModifyTime;
+					std::string imageTime;
+					std::string celebrityModifyTime;
+					int imageHeight;
+					std::string tagsStatus;
+					std::string oCRFailReason;
+					std::string celebrityFailReason;
+					std::string celebrityStatus;
+					std::vector<ImagesItem::OCRItem> oCR;
+					int fileSize;
+					std::string location;
+				};
+
+
+				FindImagesResult();
+				explicit FindImagesResult(const std::string &payload);
+				~FindImagesResult();
+				std::vector<ImagesItem> getImages()const;
+				std::string getSetId()const;
+				std::string getNextMarker()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<ImagesItem> images_;
+				std::string setId_;
+				std::string nextMarker_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_FINDIMAGESRESULT_H_

+ 69 - 0
imm/include/alibabacloud/imm/model/FindSimilarFacesRequest.h

@@ -0,0 +1,69 @@
+/*
+ * 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_IMM_MODEL_FINDSIMILARFACESREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_FINDSIMILARFACESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT FindSimilarFacesRequest : public RpcServiceRequest
+			{
+
+			public:
+				FindSimilarFacesRequest();
+				~FindSimilarFacesRequest();
+
+				std::string getImageUri()const;
+				void setImageUri(const std::string& imageUri);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				float getMinSimilarity()const;
+				void setMinSimilarity(float minSimilarity);
+				int getLimit()const;
+				void setLimit(int limit);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getSetId()const;
+				void setSetId(const std::string& setId);
+				std::string getFaceId()const;
+				void setFaceId(const std::string& faceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string imageUri_;
+				std::string regionId_;
+				float minSimilarity_;
+				int limit_;
+				std::string project_;
+				std::string setId_;
+				std::string faceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_FINDSIMILARFACESREQUEST_H_

+ 69 - 0
imm/include/alibabacloud/imm/model/FindSimilarFacesResult.h

@@ -0,0 +1,69 @@
+/*
+ * 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_IMM_MODEL_FINDSIMILARFACESRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_FINDSIMILARFACESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT FindSimilarFacesResult : public ServiceResult
+			{
+			public:
+				struct FacesItem
+				{
+					struct FaceAttributes
+					{
+						struct FaceBoundary
+						{
+							int left;
+							int top;
+							int height;
+							int width;
+						};
+						FaceBoundary faceBoundary;
+					};
+					std::string faceId;
+					FaceAttributes faceAttributes;
+					float similarity;
+					std::string imageUri;
+				};
+
+
+				FindSimilarFacesResult();
+				explicit FindSimilarFacesResult(const std::string &payload);
+				~FindSimilarFacesResult();
+				std::vector<FacesItem> getFaces()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<FacesItem> faces_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_FINDSIMILARFACESRESULT_H_

+ 60 - 0
imm/include/alibabacloud/imm/model/GetDocIndexRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_IMM_MODEL_GETDOCINDEXREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_GETDOCINDEXREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT GetDocIndexRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetDocIndexRequest();
+				~GetDocIndexRequest();
+
+				std::string getSet()const;
+				void setSet(const std::string& set);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getUniqueId()const;
+				void setUniqueId(const std::string& uniqueId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string set_;
+				std::string regionId_;
+				std::string project_;
+				std::string uniqueId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_GETDOCINDEXREQUEST_H_

+ 79 - 0
imm/include/alibabacloud/imm/model/GetDocIndexResult.h

@@ -0,0 +1,79 @@
+/*
+ * 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_IMM_MODEL_GETDOCINDEXRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_GETDOCINDEXRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT GetDocIndexResult : public ServiceResult
+			{
+			public:
+
+
+				GetDocIndexResult();
+				explicit GetDocIndexResult(const std::string &payload);
+				~GetDocIndexResult();
+				std::string getCustomKey4()const;
+				std::string getUniqueId()const;
+				std::string getCustomKey5()const;
+				std::string getCustomKey2()const;
+				std::string getCustomKey3()const;
+				std::string getContentType()const;
+				long getPageNum()const;
+				std::string getCustomKey1()const;
+				long getSize()const;
+				std::string getIndexModifiedTime()const;
+				std::string getIndexCreatedTime()const;
+				std::string getCustomKey6()const;
+				std::string getName()const;
+				std::string getLastModified()const;
+				std::string getSrcUri()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string customKey4_;
+				std::string uniqueId_;
+				std::string customKey5_;
+				std::string customKey2_;
+				std::string customKey3_;
+				std::string contentType_;
+				long pageNum_;
+				std::string customKey1_;
+				long size_;
+				std::string indexModifiedTime_;
+				std::string indexCreatedTime_;
+				std::string customKey6_;
+				std::string name_;
+				std::string lastModified_;
+				std::string srcUri_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_GETDOCINDEXRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/GetDocIndexTaskRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_GETDOCINDEXTASKREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_GETDOCINDEXTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT GetDocIndexTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetDocIndexTaskRequest();
+				~GetDocIndexTaskRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getTaskId()const;
+				void setTaskId(const std::string& taskId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string taskId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_GETDOCINDEXTASKREQUEST_H_

+ 63 - 0
imm/include/alibabacloud/imm/model/GetDocIndexTaskResult.h

@@ -0,0 +1,63 @@
+/*
+ * 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_IMM_MODEL_GETDOCINDEXTASKRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_GETDOCINDEXTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT GetDocIndexTaskResult : public ServiceResult
+			{
+			public:
+				struct FailDetail
+				{
+					std::string code;
+				};
+
+
+				GetDocIndexTaskResult();
+				explicit GetDocIndexTaskResult(const std::string &payload);
+				~GetDocIndexTaskResult();
+				std::string getStatus()const;
+				FailDetail getFailDetail()const;
+				std::string getTaskId()const;
+				std::string getFinishTime()const;
+				std::string getCreateTime()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				FailDetail failDetail_;
+				std::string taskId_;
+				std::string finishTime_;
+				std::string createTime_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_GETDOCINDEXTASKRESULT_H_

+ 57 - 0
imm/include/alibabacloud/imm/model/GetFaceSearchGroupRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_IMM_MODEL_GETFACESEARCHGROUPREQUEST_H_
+#define ALIBABACLOUD_IMM_MODEL_GETFACESEARCHGROUPREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT GetFaceSearchGroupRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetFaceSearchGroupRequest();
+				~GetFaceSearchGroupRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProject()const;
+				void setProject(const std::string& project);
+				std::string getGroupName()const;
+				void setGroupName(const std::string& groupName);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string project_;
+				std::string groupName_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_GETFACESEARCHGROUPREQUEST_H_

+ 61 - 0
imm/include/alibabacloud/imm/model/GetFaceSearchGroupResult.h

@@ -0,0 +1,61 @@
+/*
+ * 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_IMM_MODEL_GETFACESEARCHGROUPRESULT_H_
+#define ALIBABACLOUD_IMM_MODEL_GETFACESEARCHGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/imm/ImmExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Imm
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_IMM_EXPORT GetFaceSearchGroupResult : public ServiceResult
+			{
+			public:
+
+
+				GetFaceSearchGroupResult();
+				explicit GetFaceSearchGroupResult(const std::string &payload);
+				~GetFaceSearchGroupResult();
+				std::string getGroupName()const;
+				std::string getStatus()const;
+				std::string getModifyTime()const;
+				std::string getCreateTime()const;
+				int getCount()const;
+				std::string getGroupId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string groupName_;
+				std::string status_;
+				std::string modifyTime_;
+				std::string createTime_;
+				int count_;
+				std::string groupId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_IMM_MODEL_GETFACESEARCHGROUPRESULT_H_

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff