]> git.lyx.org Git - lyx.git/blobdiff - src/graphics/GraphicsCache.C
* src/LaTeX.C
[lyx.git] / src / graphics / GraphicsCache.C
index 3ca621b0cfd1c2469d0ffb845ab373838a354997..7201c7bfbfb6295429ae6f6b503b2273b7d2b572 100644 (file)
@@ -1,18 +1,16 @@
-/*
+/**
  * \file GraphicsCache.C
- * Copyright 2002 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
- * \author Baruch Even <baruch.even@writeme.com>
- * \author Angus Leeming <leeming@lyx.org>
+ * \author Baruch Even
+ * \author Angus Leeming
+ *
+ * Full author contact details are available in file CREDITS.
  */
 
 #include <config.h>
 
-#ifdef __GNUG__
-#pragma implementation
-#endif
-
 #include "GraphicsCache.h"
 #include "GraphicsCacheItem.h"
 #include "GraphicsImage.h"
 
 #include "support/filetools.h"
 
-#include "frontends/lyx_gui.h"
-
 #include <map>
 
-namespace grfx {
+using std::string;
+
+
+namespace lyx {
+
+using support::FileName;
+
+namespace graphics {
 
 /** The cache contains one item per file, so use a map to find the
  *  cache item quickly by filename.
  */
-typedef std::map<string, Cache::ItemPtr> CacheType;
+typedef std::map<FileName, Cache::ItemPtr> CacheType;
 
-struct Cache::Impl {
+class Cache::Impl {
+public:
        ///
        CacheType cache;
 };
 
-       
+
 Cache & Cache::get()
 {
        // Now return the cache
@@ -47,7 +51,7 @@ Cache & Cache::get()
 
 
 Cache::Cache()
-       : pimpl_(new Impl())
+       : pimpl_(new Impl)
 {}
 
 
@@ -61,15 +65,8 @@ std::vector<string> Cache::loadableFormats() const
 }
 
 
-void Cache::add(string const & file)
+void Cache::add(FileName const & file) const
 {
-       if (!AbsolutePath(file)) {
-               lyxerr << "Cache::add(" << file << "):\n"
-                      << "The file must be have an absolute path."
-                      << std::endl;
-               return;
-       }
-
        // Is the file in the cache already?
        if (inCache(file)) {
                lyxerr[Debug::GRAPHICS] << "Cache::add(" << file << "):\n"
@@ -82,7 +79,7 @@ void Cache::add(string const & file)
 }
 
 
-void Cache::remove(string const & file)
+void Cache::remove(FileName const & file) const
 {
        CacheType::iterator it = pimpl_->cache.find(file);
        if (it == pimpl_->cache.end())
@@ -98,13 +95,13 @@ void Cache::remove(string const & file)
 }
 
 
-bool Cache::inCache(string const & file) const
+bool Cache::inCache(FileName const & file) const
 {
        return pimpl_->cache.find(file) != pimpl_->cache.end();
 }
 
 
-Cache::ItemPtr const Cache::item(string const & file) const
+Cache::ItemPtr const Cache::item(FileName const & file) const
 {
        CacheType::const_iterator it = pimpl_->cache.find(file);
        if (it == pimpl_->cache.end())
@@ -113,4 +110,5 @@ Cache::ItemPtr const Cache::item(string const & file) const
        return it->second;
 }
 
-} // namespace grfx
+} // namespace graphics
+} // namespace lyx