82 const std::array<uint8_t, N>& magic,
96bool is_type(
const std::vector<uint8_t>& bytes,
111bool is_type(
const std::vector<uint8_t>& bytes,
112 const std::array<uint8_t, N>& magic,
114 return is_type(bytes, magic.data(), N, offset);
126const Type* match(
const std::vector<uint8_t>& bytes);
138const Type* match_file(std::string_view filepath,
size_t max_read_size = 8192);
147bool is(
const std::vector<uint8_t>& bytes,
const Type& type);
155bool is_image(
const std::vector<uint8_t>& bytes);
163bool is_document(
const std::vector<uint8_t>& bytes);
171bool is_archive(
const std::vector<uint8_t>& bytes);
179bool is_audio(
const std::vector<uint8_t>& bytes);
187bool is_video(
const std::vector<uint8_t>& bytes);
196const Type* match_image(
const std::vector<uint8_t>& bytes);
203const Type* match_document(
const std::vector<uint8_t>& bytes);
210const Type* match_archive(
const std::vector<uint8_t>& bytes);
217const Type* match_audio(
const std::vector<uint8_t>& bytes);
224const Type* match_video(
const std::vector<uint8_t>& bytes);
bool match_magic(const std::vector< uint8_t > &bytes, const uint8_t *magic, size_t magic_size, size_t offset=0)
Compare bytes with a magic number pattern.
bool is_valid_buffer(const std::vector< uint8_t > &bytes, size_t min_size=8)
Validate if a buffer has sufficient data for type detection.
bool is_type(const std::vector< uint8_t > &bytes, const uint8_t *magic, size_t magic_size, size_t offset=0)
Check if the file type matches a specific format.
Main header file for file type definitions.