1 #ifndef MEDIA_ABSTRACTATTACHMENT_H 2 #define MEDIA_ABSTRACTATTACHMENT_H 19 std::istream::off_type startOffset = 0, std::ios_base::seekdir startDir = std::ios_base::beg,
20 std::istream::off_type endOffset = 0, std::ios_base::seekdir endDir = std::ios_base::end);
22 std::istream &stream()
const;
23 std::istream::pos_type startOffset()
const;
24 std::istream::pos_type endOffset()
const;
25 std::istream::pos_type size()
const;
26 const std::unique_ptr<char[]> &buffer()
const;
27 void makeBuffer()
const;
29 void copyTo(std::ostream &stream)
const;
71 return m_endOffset - m_startOffset;
97 std::unique_ptr<MediaFileInfo> m_fileInfo;
102 return m_fileInfo.get();
109 void setDescription(
const std::string &description);
110 const std::string &name()
const;
111 void setName(
const std::string &name);
112 const std::string &mimeType()
const;
113 void setMimeType(
const std::string &mimeType);
115 void setId(
const uint64 &
id);
117 void setData(std::unique_ptr<StreamDataBlock> &&data);
118 void setFile(
const std::string &path);
119 bool isDataFromFile()
const;
120 std::string
label()
const;
122 bool isIgnored()
const;
123 void setIgnored(
bool ignored);
124 bool isEmpty()
const;
130 std::string m_description;
132 std::string m_mimeType;
134 std::unique_ptr<StreamDataBlock> m_data;
135 bool m_isDataFromFile;
144 m_isDataFromFile(false),
153 return m_description;
231 m_data = std::move(
data);
232 m_isDataFromFile =
false;
240 return m_isDataFromFile;
270 return m_description.empty() && m_name.empty() && !m_mimeType.empty() && !m_data;
275 #endif // MEDIA_ABSTRACTATTACHMENT_H
#define TAG_PARSER_EXPORT
Marks the symbol to be exported by the tagparser library.