mirror of
https://github.com/varun-r-mallya/sysprof.git
synced 2025-12-31 20:36:25 +00:00
libsysprof-analyze: add various bswap and cast helpers
This commit is contained in:
@ -43,4 +43,38 @@ SysprofDocumentFrame *_sysprof_document_frame_new (GMappedFile *ma
|
||||
const SysprofCaptureFrame *frame,
|
||||
gboolean needs_swap);
|
||||
|
||||
#define SYSPROF_DOCUMENT_FRAME_GET(obj, type) \
|
||||
((const type *)(SYSPROF_DOCUMENT_FRAME(obj)->frame))
|
||||
|
||||
#define SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) \
|
||||
(SYSPROF_DOCUMENT_FRAME (obj)->needs_swap)
|
||||
|
||||
#if G_BYTE_ORDER == G_LITTLE_ENDIAN
|
||||
# define SYSPROF_DOCUMENT_FRAME_UINT16(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GUINT16_TO_LE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_INT16(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GINT16_TO_LE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_UINT32(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GUINT32_TO_LE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_INT32(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GINT32_TO_LE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_UINT64(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GUINT64_TO_LE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_INT64(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GINT64_TO_LE(val) : (val))
|
||||
#else
|
||||
# define SYSPROF_DOCUMENT_FRAME_UINT16(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GUINT16_TO_BE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_INT16(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GINT16_TO_BE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_UINT32(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GUINT32_TO_BE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_INT32(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GINT32_TO_BE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_UINT64(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GUINT64_TO_BE(val) : (val))
|
||||
# define SYSPROF_DOCUMENT_FRAME_INT64(obj, val) \
|
||||
(SYSPROF_DOCUMENT_FRAME_NEEDS_SWAP(obj) ? GINT64_TO_BE(val) : (val))
|
||||
#endif
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
Reference in New Issue
Block a user