]> git.lyx.org Git - lyx.git/blobdiff - src/ConverterCache.h
Hack to display section symbol
[lyx.git] / src / ConverterCache.h
index d80b3af05ca212ab7dfb57fe1358856b423fe778..72afe293e5ae515a287d6952534a15bde6762396 100644 (file)
  *
  * Full author contact details are available in file CREDITS.
  *
- * lyx::ConverterCache is the manager of the file cache.
- * It is responsible for creating the lyx::ConverterCacheItem's
+ * ConverterCache is the manager of the file cache.
+ * It is responsible for creating the ConverterCacheItem's
  * and maintaining them.
  *
- * lyx::ConverterCache is a singleton class. It is possible to have
+ * ConverterCache is a singleton class. It is possible to have
  * only one instance of it at any moment.
  */
 
 #ifndef CONVERTERCACHE_H
 #define CONVERTERCACHE_H
 
-#include <boost/utility.hpp>
-#include <boost/scoped_ptr.hpp>
-
-#include <string>
+#include "support/strfwd.h"
 
 
 namespace lyx {
@@ -49,7 +46,7 @@ namespace support { class FileName; }
  *
  * There is no cache maintenance yet (max size, max age etc.)
  */
-class ConverterCache : boost::noncopyable {
+class ConverterCache {
 public:
 
        /// This is a singleton class. Get the instance.
@@ -58,37 +55,44 @@ public:
        /// Init the cache. This must be done after package initialization.
        static void init();
 
+       /// Writes the index list. This must be called on exit.
+       void writeIndex() const;
+
        /**
         * Add \c converted_file (\c orig_from converted to \c to_format) to
         * the cache if it is not already in or not up to date.
         */
        void add(support::FileName const & orig_from, std::string const & to_format,
-                support::FileName const & converted_file) const;
+                support::FileName const & converted_file) const;
 
        /// Remove a file from the cache.
        void remove(support::FileName const & orig_from,
-                   std::string const & to_format) const;
+                   std::string const & to_format) const;
 
        /// Remove all cached \p from_format -> \p to_format conversions
        void remove_all(std::string const & from_format,
-                       std::string const & to_format) const;
+                       std::string const & to_format) const;
 
        /**
         * Returns \c true if \c orig_from converted to \c to_format is in
         * the cache and up to date.
         */
        bool inCache(support::FileName const & orig_from,
-                    std::string const & to_format) const;
+                    std::string const & to_format) const;
 
        /// Get the name of the cached file
        support::FileName const & cacheName(support::FileName const & orig_from,
-                                           std::string const & to_format) const;
+                                           std::string const & to_format) const;
 
        /// Copy the file from the cache to \p dest
        bool copy(support::FileName const & orig_from, std::string const & to_format,
-                 support::FileName const & dest) const;
+                 support::FileName const & dest) const;
 
 private:
+       /// noncopyable
+       ConverterCache(ConverterCache const &);
+       void operator=(ConverterCache const &);
+
        /** Make the c-tor, d-tor private so we can control how many objects
         *  are instantiated.
         */
@@ -99,7 +103,7 @@ private:
        /// Use the Pimpl idiom to hide the internals.
        class Impl;
        /// The pointer never changes although *pimpl_'s contents may.
-       boost::scoped_ptr<Impl> const pimpl_;
+       Impl * const pimpl_;
 };
 
 } // namespace lyx