26#ifndef TAGLIB_FILEREF_H 
   27#define TAGLIB_FILEREF_H 
   92                               bool readAudioProperties = 
true,
 
   94                               audioPropertiesStyle = AudioProperties::Average) 
const = 0;
 
   96      class FileTypeResolverPrivate;
 
   98      std::unique_ptr<FileTypeResolverPrivate> d;
 
 
  163                               bool readAudioProperties = 
true,
 
  165                               audioPropertiesStyle = AudioProperties::Average) 
const = 0;
 
  167      class StreamTypeResolverPrivate;
 
  169      std::unique_ptr<StreamTypeResolverPrivate> d;
 
 
  187                     bool readAudioProperties = 
true,
 
  189                     audioPropertiesStyle = AudioProperties::Average);
 
  204                     bool readAudioProperties = 
true,
 
  206                     audioPropertiesStyle = AudioProperties::Average);
 
  410    class FileRefPrivate;
 
  412    std::shared_ptr<FileRefPrivate> d;
 
 
A simple, abstract interface to common audio properties.
Definition audioproperties.h:46
ReadStyle
Definition audioproperties.h:56
A class for pluggable file type resolution.
Definition fileref.h:71
virtual File * createFile(FileName fileName, bool readAudioProperties=true, AudioProperties::ReadStyle audioPropertiesStyle=AudioProperties::Average) const =0
virtual ~FileTypeResolver()=0
FileTypeResolver & operator=(const FileTypeResolver &)=delete
FileTypeResolver(const FileTypeResolver &)=delete
A class for pluggable stream type resolution.
Definition fileref.h:140
virtual File * createFileFromStream(IOStream *stream, bool readAudioProperties=true, AudioProperties::ReadStyle audioPropertiesStyle=AudioProperties::Average) const =0
StreamTypeResolver(const StreamTypeResolver &)=delete
virtual ~StreamTypeResolver() override=0
StreamTypeResolver & operator=(const StreamTypeResolver &)=delete
This class provides a simple abstraction for creating and handling files.
Definition fileref.h:60
PropertyMap properties() const
static StringList defaultFileExtensions()
static const FileTypeResolver * addFileTypeResolver(const FileTypeResolver *resolver)
FileRef(const FileRef &ref)
bool operator!=(const FileRef &ref) const
void swap(FileRef &ref) noexcept
List< VariantMap > complexProperties(const String &key) const
FileRef(IOStream *stream, bool readAudioProperties=true, AudioProperties::ReadStyle audioPropertiesStyle=AudioProperties::Average)
bool setComplexProperties(const String &key, const List< VariantMap > &value)
void removeUnsupportedProperties(const StringList &properties)
static void clearFileTypeResolvers()
FileRef(FileName fileName, bool readAudioProperties=true, AudioProperties::ReadStyle audioPropertiesStyle=AudioProperties::Average)
AudioProperties * audioProperties() const
StringList complexPropertyKeys() const
PropertyMap setProperties(const PropertyMap &properties)
FileRef & operator=(const FileRef &ref)
bool operator==(const FileRef &ref) const
A file class with some useful methods for tag manipulation.
Definition tfile.h:51
An abstract class that provides operations on a sequence of bytes.
Definition tiostream.h:65
A generic, implicitly shared list.
Definition tlist.h:54
A map for format-independent <key,values> tag representations.
Definition tpropertymap.h:123
A list of strings.
Definition tstringlist.h:44
A wide string class suitable for unicode.
Definition tstring.h:83
A simple, generic interface to common audio metadata fields.
Definition tag.h:49
A namespace for all TagLib related classes and functions.
Definition apefile.h:41
const char * FileName
Definition tiostream.h:59
#define TAGLIB_EXPORT
Definition taglib_export.h:40
#define TAGLIB_MSVC_SUPPRESS_WARNING_NEEDS_TO_HAVE_DLL_INTERFACE
Definition taglib_export.h:55