#include "types.h"
#include <boost/filesystem.hpp>
#include <boost/function.hpp>
+#include <boost/bind.hpp>
namespace xmlpp {
class Node;
/** Write details of the asset to a PKL AssetList node.
* @param node Parent node.
+ * @param standard Standard to use.
*/
- void write_to_pkl (xmlpp::Node* node) const;
+ void write_to_pkl (xmlpp::Node* node, Standard standard) const;
boost::filesystem::path file () const {
return _file;
void set_file (boost::filesystem::path file) const;
- /** @return the hash of this asset's file. It will be
- * computed by this call if necessary.
- */
- std::string hash () const;
+ /** @return the hash of this asset's file */
+ std::string hash (boost::function<void (float)> progress = 0) const;
protected:
- virtual std::string pkl_type () const = 0;
-
+ virtual std::string pkl_type (Standard standard) const = 0;
+
/** The disk file that represents this asset, if one exists */
mutable boost::filesystem::path _file;
/** Hash of _file, or empty if the hash has not yet been computed */