1/* 2 * Copyright 2013, Haiku, Inc. All Rights Reserved. 3 * Distributed under the terms of the MIT License. 4 * 5 * Authors: 6 * Ingo Weinhold <ingo_weinhold@gmx.de> 7 */ 8#ifndef _MIME_MIME_SNIFFER_H 9#define _MIME_MIME_SNIFFER_H 10 11 12#include <SupportDefs.h> 13 14 15class BFile; 16class BMimeType; 17 18 19namespace BPrivate { 20namespace Storage { 21namespace Mime { 22 23 24class MimeSniffer { 25public: 26 virtual ~MimeSniffer(); 27 28 virtual size_t MinimalBufferSize() = 0; 29 30 virtual float GuessMimeType(const char* fileName, 31 BMimeType* type) = 0; 32 virtual float GuessMimeType(BFile* file, 33 const void* buffer, int32 length, 34 BMimeType* type) = 0; 35}; 36 37 38} // namespace Mime 39} // namespace Storage 40} // namespace BPrivate 41 42 43#endif // _MIME_MIME_SNIFFER_H 44