#ifndef INDEXER_COMMAND_CUSTOM_H #define INDEXER_COMMAND_CUSTOM_H #include #include #include "IndexerCommand.h" class IndexerCommandCustom : public IndexerCommand { public: static IndexerCommandType getStaticIndexerCommandType(); IndexerCommandCustom( const std::wstring& customCommand, const FilePath& projectFilePath, const FilePath& databaseFilePath, const std::wstring& databaseVersion, const FilePath& sourceFilePath, bool runInParallel); IndexerCommandCustom( IndexerCommandType type, const std::wstring& customCommand, const FilePath& projectFilePath, const FilePath& databaseFilePath, const std::wstring& databaseVersion, const FilePath& sourceFilePath, bool runInParallel); IndexerCommandType getIndexerCommandType() const override; size_t getByteSize(size_t stringSize) const override; FilePath getDatabaseFilePath() const; void setDatabaseFilePath(const FilePath& databaseFilePath); std::wstring getCustomCommand() const; bool getRunInParallel() const; protected: QJsonObject doSerialize() const override; private: IndexerCommandType m_type; std::wstring m_customCommand; FilePath m_projectFilePath; FilePath m_databaseFilePath; std::wstring m_databaseVersion; bool m_runInParallel; }; #endif // INDEXER_COMMAND_CXXL_H