void load(T &obj, typename T::Loader::Collection &coll, const std::string &fn, Args &... args)
{
RefPtr<IO::Seekable> in = coll.open_raw(fn);
void load(T &obj, typename T::Loader::Collection &coll, const std::string &fn, Args &... args)
{
RefPtr<IO::Seekable> in = coll.open_raw(fn);
typename EnableIf<NeedsCollection<typename T::Loader>::value, void>::No load(T &obj, C &coll, const std::string &fn, Args &... args)
{
RefPtr<IO::Seekable> in = coll.open_raw(fn);
typename EnableIf<NeedsCollection<typename T::Loader>::value, void>::No load(T &obj, C &coll, const std::string &fn, Args &... args)
{
RefPtr<IO::Seekable> in = coll.open_raw(fn);