Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

IInspectDocument.h

Go to the documentation of this file.
00001 /**
00002 * @file         IInspectDocument.h
00003 * @brief    ドキュメント検査を行うインターフェイス
00004 *
00005 * @author       Nakashima h
00006 * @date     2022-05-01
00007 *
00008 * $Id: IInspectDocument.h 32 2022-07-14 03:20:43Z shingo.yoneda $
00009 *
00010 * Copyright (c) 2022 Antenna House, Inc. All rights reserved.
00011 */
00012 
00013 #pragma once
00014 #include <queue>
00015 #include <memory>
00016 #include <string>
00017 #include "InspectDocumentResult.h"
00018 #include "InspectDocumentRemoveOptions.h"
00019 
00020 /**
00021 * @brief    ドキュメント検査を行うインターフェイス
00022 */
00023 class IInspectDocument {
00024 protected:
00025     /**
00026     * @brief    デフォルトコンストラクタ
00027     */
00028     IInspectDocument() = default;
00029 
00030     /**
00031     * @brief    コピーコンストラクタ
00032     */
00033     IInspectDocument(const IInspectDocument&) = delete;
00034     /**
00035     * @brief    コピー代入演算子
00036     */
00037     IInspectDocument& operator=(const IInspectDocument&) = delete;
00038 
00039     /**
00040     * @brief    ムーブコンストラクタ
00041     */
00042     IInspectDocument(IInspectDocument&&) = delete;
00043     /**
00044     * @brief    ムーブ代入演算子
00045     */
00046     IInspectDocument& operator=(IInspectDocument&&) = delete;
00047 
00048 public:
00049 
00050     /**
00051     * @brief    デストラクタ
00052     */
00053     virtual ~IInspectDocument() = default;
00054 
00055     /**
00056     * @brief    ドキュメント検査を行うオブジェクトを生成する
00057     * @return ドキュメント検査を行うオブジェクト
00058     */
00059     static std::unique_ptr<IInspectDocument> create();
00060 
00061     /**
00062     * @brief    ドキュメント検査対象のファイルを設定
00063     * @param inspectedWordPath - ドキュメント検査対象のファイルのパス
00064     */
00065     virtual void setInspectedWord(std::string const& inspectedWordPath) = 0;
00066 
00067     /**
00068     * @brief    ドキュメント検査を実行する
00069     * @return ドキュメント検査の結果
00070     */
00071     virtual InspectDocumentResult executeInspectDocument() = 0;
00072 
00073     /**
00074     * @brief    ドキュメント検査を実行する
00075     * @param inspectedWordPath - ドキュメント検査対象のファイルのパス
00076     * @return ドキュメント検査の結果
00077     */
00078     virtual InspectDocumentResult executeInspectDocument(std::string const& inspectedWordPath) = 0;
00079 
00080     /**
00081     * @brief    メタ情報を削除する
00082     * @param removeOptions ドキュメント検査の削除対象のオプション
00083     * @param outputPath 削除結果の出力パス
00084     */
00085     virtual void removeMetaInformations(InspectDocumentRemoveOptions removeOptions, std::string const& outputPath) = 0;
00086 
00087     /**
00088     * @brief    メタ情報を削除する
00089     * @param inputPath メタ情報を削除するファイルのパス
00090     * @param removeOptions ドキュメント検査の削除対象のオプション
00091     * @param outputPath 削除結果の出力パス
00092     */
00093     virtual void removeMetaInformations(std::string const& inputPath, InspectDocumentRemoveOptions removeOptions, std::string const& outputPath) = 0;
00094 };

Generated on 19 Jan 2023 for Word API C/C++ Interface by Doxygen 1.3-rc2