10 #ifndef LIBEBOOK_UTILS_H_INCLUDED 11 #define LIBEBOOK_UTILS_H_INCLUDED 20 #include <boost/cstdint.hpp> 22 #include <librevenge-stream/librevenge-stream.h> 23 #include <librevenge/librevenge.h> 28 #if defined(HAVE_FUNC_ATTRIBUTE_FORMAT) 29 #define EBOOK_ATTRIBUTE_PRINTF(fmt, arg) __attribute__((format(printf, fmt, arg))) 31 #define EBOOK_ATTRIBUTE_PRINTF(fmt, arg) 36 void debugPrint(
const char *
format, ...) EBOOK_ATTRIBUTE_PRINTF(1, 2);
39 #define EBOOK_DEBUG_MSG(M) libebook::debugPrint M 40 #define EBOOK_DEBUG(M) M 44 #define EBOOK_DEBUG_MSG(M) 45 #define EBOOK_DEBUG(M) 49 #define EBOOK_NUM_ELEMENTS(array) sizeof(array)/sizeof(array[0]) 61 uint8_t
readU8(librevenge::RVNGInputStream *
input,
bool =
false);
62 uint16_t
readU16(librevenge::RVNGInputStream *
input,
bool bigEndian=
false);
63 uint32_t
readU32(librevenge::RVNGInputStream *
input,
bool bigEndian=
false);
64 uint64_t
readU64(librevenge::RVNGInputStream *
input,
bool bigEndian=
false);
66 const unsigned char *
readNBytes(librevenge::RVNGInputStream *
input,
unsigned long numBytes);
71 void skip(librevenge::RVNGInputStream *
input,
unsigned long numBytes);
73 void seek(librevenge::RVNGInputStream *
input,
unsigned long pos);
78 uint8_t
readU8(std::shared_ptr<librevenge::RVNGInputStream>
input,
bool =
false);
79 uint16_t
readU16(std::shared_ptr<librevenge::RVNGInputStream>
input,
bool bigEndian=
false);
80 uint32_t
readU32(std::shared_ptr<librevenge::RVNGInputStream>
input,
bool bigEndian=
false);
81 uint64_t
readU64(std::shared_ptr<librevenge::RVNGInputStream>
input,
bool bigEndian=
false);
83 const unsigned char *
readNBytes(std::shared_ptr<librevenge::RVNGInputStream>
input,
unsigned long numBytes);
88 void skip(std::shared_ptr<librevenge::RVNGInputStream>
input,
unsigned long numBytes);
90 void seek(std::shared_ptr<librevenge::RVNGInputStream>
input,
unsigned long pos);
137 #endif // LIBEBOOK_UTILS_H_INCLUDED uint16_t readU16(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:57
Definition: EBOOKHTMLToken.h:89
void skip(librevenge::RVNGInputStream *input, unsigned long numBytes)
Definition: libebook_utils.cpp:145
Definition: libebook_utils.h:105
Definition: libebook_utils.h:99
std::shared_ptr< librevenge::RVNGInputStream > RVNGInputStreamPtr_t
Definition: libebook_utils.h:54
uint32_t readU32(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:73
string readCString(librevenge::RVNGInputStream *input)
Definition: libebook_utils.cpp:118
const unsigned char * readNBytes(librevenge::RVNGInputStream *const input, const unsigned long numBytes)
Definition: libebook_utils.cpp:105
Definition: libebook_utils.h:115
uint8_t readU8(librevenge::RVNGInputStream *input, bool)
Definition: libebook_utils.cpp:45
librevenge::RVNGPropertyList getDefaultPageSpanPropList()
Definition: libebook_utils.cpp:265
EndOfStreamException()
Definition: libebook_utils.cpp:275
uint64_t readU64(librevenge::RVNGInputStream *input, bool bigEndian)
Definition: libebook_utils.cpp:89
Definition: libebook_utils.h:56
unsigned long getRemainingLength(librevenge::RVNGInputStream *const input)
Definition: libebook_utils.cpp:170
Definition: libebook_utils.h:123
Definition: libebook_utils.h:111
bool findSubStreamByExt(const RVNGInputStreamPtr_t &input, const std::string &ext, unsigned &id)
Definition: libebook_utils.cpp:245
string readPascalString(librevenge::RVNGInputStream *input)
Definition: libebook_utils.cpp:133
Definition: libebook_utils.h:119
void seek(librevenge::RVNGInputStream *const input, const unsigned long pos)
Definition: libebook_utils.cpp:152
Definition: EBOOKOPFToken.h:54
void seekRelative(librevenge::RVNGInputStream *const input, const long pos)
Definition: libebook_utils.cpp:161
Definition: BBeBCollector.cpp:18
Definition: libebook_utils.h:127
void operator()(void *)
Definition: libebook_utils.h:58