﻿using System;
using System.Collections.Generic;
using System.Text;

namespace DNCP.BaiduAI
{
    public class BaiduAIProvider
    {
        private readonly BaiduAIHttpClientFactory _baiduHttpClientFactory;

        /// <summary>
        ///  Ocr识别
        /// </summary>
        public OCRServices Ocr;

        /// <summary>
        ///  
        /// </summary>
        public BodyAnalysisServices Body;

        /// <summary>
        /// 
        /// </summary>
        public ImageClassifyServices ImageClassify;

        /// <summary>
        /// 图像查找
        /// </summary>
        public ImageSearchServices ImageSearch;

        /// <summary>
        ///  人像识别
        /// </summary>
        public FaceServices Face;

        public NlpServices Nlp;

        public PieServices Pie;

        public AsrServices Asr;

        public TtsServices Tts;

        public AntiPornServices AntiPorn;

        public AntiTerrorServices AntiTerror;

        public ImageCensorServices ImageCensor;

        public TextCensorServices TextCensor;

        public SolutionServices Solution;

        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="baiduHttpClientFactory"></param>
        public BaiduAIProvider(BaiduAIHttpClientFactory baiduHttpClientFactory)
        {
            _baiduHttpClientFactory = baiduHttpClientFactory;
            Ocr = new OCRServices(_baiduHttpClientFactory);
            Body = new BodyAnalysisServices(_baiduHttpClientFactory);
            ImageClassify = new ImageClassifyServices(_baiduHttpClientFactory);
            ImageSearch = new ImageSearchServices(_baiduHttpClientFactory);
            Face = new FaceServices(_baiduHttpClientFactory);
            Nlp = new NlpServices(_baiduHttpClientFactory);
            Pie = new PieServices(_baiduHttpClientFactory);
            Asr = new AsrServices(_baiduHttpClientFactory);
            Tts = new TtsServices(_baiduHttpClientFactory);
            AntiPorn = new AntiPornServices(_baiduHttpClientFactory);
            AntiTerror = new AntiTerrorServices(_baiduHttpClientFactory);
            TextCensor = new TextCensorServices(_baiduHttpClientFactory);
            ImageCensor = new ImageCensorServices(_baiduHttpClientFactory);
            Solution = new SolutionServices(_baiduHttpClientFactory);
        }
    }
}
