/* * Copyright 2006 Sony Computer Entertainment Inc. * * Licensed under the MIT Open Source License, for details please see license.txt or the website * http://www.opensource.org/licenses/mit-license.php * */ #ifndef __DAE_RAWRESOLVER_H__ #define __DAE_RAWRESOLVER_H__ #include #include #include class DAE; /** * The @c daeRawResolver class derives from @c daeURIResolver and implements * the .raw backend resolver for raw binary data. */ class DLLSPEC daeRawResolver : public daeURIResolver { public: /** * Constructor. */ daeRawResolver(DAE& dae); /** * Destructor. */ ~daeRawResolver(); public: // Abstract Interface virtual daeElement* resolveElement(const daeURI& uri); virtual daeString getName(); }; // A simple class to make speed up the process of resolving a .raw URI. // The result of the resolve is cached for future use. // This is meant for DOM internal use only. class DLLSPEC daeRawRefCache { public: daeElement* lookup(const daeURI& uri); void add(const daeURI& uri, daeElement* elt); void remove(const daeURI& uri); void clear(); private: std::map lookupTable; }; #endif