mirror of
https://github.com/bkaradzic/bx.git
synced 2026-02-17 20:52:37 +01:00
Added vsnprintf implementation.
This commit is contained in:
@@ -9,7 +9,6 @@
|
||||
#include <stdint.h> // uint32_t
|
||||
#include <stdlib.h> // size_t
|
||||
#include <stddef.h> // ptrdiff_t
|
||||
#include <string.h> // memcpy
|
||||
|
||||
#include "config.h"
|
||||
#include "macros.h"
|
||||
@@ -46,31 +45,23 @@ namespace bx
|
||||
Ty tmp = _a; _a = _b; _b = tmp;
|
||||
}
|
||||
|
||||
/// Scatter/gather memcpy.
|
||||
inline void memCopy(void* _dst, const void* _src, uint32_t _size, uint32_t _num, uint32_t _srcPitch, uint32_t _dstPitch)
|
||||
{
|
||||
const uint8_t* src = (const uint8_t*)_src;
|
||||
uint8_t* dst = (uint8_t*)_dst;
|
||||
|
||||
for (uint32_t ii = 0; ii < _num; ++ii)
|
||||
{
|
||||
memcpy(dst, src, _size);
|
||||
src += _srcPitch;
|
||||
dst += _dstPitch;
|
||||
}
|
||||
}
|
||||
///
|
||||
void* memCopy(void* _dst, const void* _src, size_t _numBytes);
|
||||
|
||||
///
|
||||
inline void gather(void* _dst, const void* _src, uint32_t _size, uint32_t _num, uint32_t _srcPitch)
|
||||
{
|
||||
memCopy(_dst, _src, _size, _num, _srcPitch, _size);
|
||||
}
|
||||
void memCopy(void* _dst, const void* _src, uint32_t _size, uint32_t _num, uint32_t _srcPitch, uint32_t _dstPitch);
|
||||
|
||||
///
|
||||
inline void scatter(void* _dst, const void* _src, uint32_t _size, uint32_t _num, uint32_t _dstPitch)
|
||||
{
|
||||
memCopy(_dst, _src, _size, _num, _size, _dstPitch);
|
||||
}
|
||||
void gather(void* _dst, const void* _src, uint32_t _size, uint32_t _num, uint32_t _srcPitch);
|
||||
|
||||
///
|
||||
void scatter(void* _dst, const void* _src, uint32_t _size, uint32_t _num, uint32_t _dstPitch);
|
||||
|
||||
///
|
||||
void* memMove(void* _dst, const void* _src, size_t _numBytes);
|
||||
|
||||
///
|
||||
void* memSet(void* _dst, uint8_t _ch, size_t _numBytes);
|
||||
|
||||
} // namespace bx
|
||||
|
||||
|
||||
Reference in New Issue
Block a user