X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fconverter.h;h=0b75473c95ab4645d81106384cb7ba8fb9eeed7b;hb=67ae65f43093cc738e41607c8a5011854d47cbf9;hp=ce290766fce7975155932cc9959ab65fd65d4e8c;hpb=e5706b107da902bc6a28cba0de3ccd6f75d9fee7;p=lyx.git diff --git a/src/converter.h b/src/converter.h index ce290766fc..0b75473c95 100644 --- a/src/converter.h +++ b/src/converter.h @@ -19,7 +19,12 @@ #include +namespace lyx { + +namespace support { class FileName; } + class Buffer; +class ErrorList; class Format; class Formats; class OutputParams; @@ -97,21 +102,27 @@ public: std::vector const getReachable(std::string const & from, bool only_viewable, bool clear_visited); - /// + /// Does a conversion path from format \p from to format \p to exist? bool isReachable(std::string const & from, std::string const & to); /// Graph::EdgePath const getPath(std::string const & from, std::string const & to); /// OutputParams::FLAVOR getFlavor(Graph::EdgePath const & path); + /// Flags for converting files + enum ConversionFlags { + /// No special flags + none = 0, + /// Use the default converter if no converter is defined + try_default = 1 << 0, + /// Get the converted file from cache if possible + try_cache = 1 << 1 + }; /// bool convert(Buffer const * buffer, - std::string const & from_file, std::string const & to_file_base, - std::string const & from_format, std::string const & to_format, - std::string & to_file); - /// - bool convert(Buffer const * buffer, - std::string const & from_file, std::string const & to_file_base, - std::string const & from_format, std::string const & to_format); + support::FileName const & from_file, support::FileName const & to_file, + support::FileName const & orig_from, + std::string const & from_format, std::string const & to_format, + ErrorList & errorList, int conversionflags = none); /// void update(Formats const & formats); /// @@ -133,17 +144,18 @@ private: intToFormat(std::vector const & input); /// bool scanLog(Buffer const & buffer, std::string const & command, - std::string const & filename); + support::FileName const & filename, ErrorList & errorList); /// bool runLaTeX(Buffer const & buffer, std::string const & command, - OutputParams const &); + OutputParams const &, ErrorList & errorList); /// ConverterList converterlist_; /// std::string latex_command_; - /// + /// If \p from = /path/file.ext and \p to = /path2/file2.ext2 then + /// this method moves each /path/file*.ext file to /path2/file2*.ext2 bool move(std::string const & fmt, - std::string const & from, std::string const & to, + support::FileName const & from, support::FileName const & to, bool copy); /// Graph G_; @@ -153,4 +165,7 @@ extern Converters converters; extern Converters system_converters; + +} // namespace lyx + #endif //CONVERTER_H