11 #include "../GrayLibBase.h"
24 #define MAKEFOURCC(ch0, ch1, ch2, ch3) \
25 ((DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8) | \
26 ((DWORD)(BYTE)(ch2) << 16) | ((DWORD)(BYTE)(ch3) << 24 ))
117 cFourCC(BYTE ch0, BYTE ch1, BYTE ch2, BYTE ch3) noexcept
119 SetChars(ch0, ch1, ch2, ch3);
124 SetChars(s[0], s[1], s[2], s[3]);
127 static bool GRAYCALL IsValidChar(
wchar_t ch);
155 void SetChars(BYTE ch0, BYTE ch1, BYTE ch2, BYTE ch3) noexcept
157 m_u.
u_c[0] = ch0; m_u.
u_c[1] = ch1; m_u.
u_c[2] = ch2; m_u.
u_c[3] = ch3;
164 const char* get_StrA()
const;
#define GRAYCALL
declare calling convention for static functions so everyone knows the arg passing scheme....
Definition: GrayCore.h:36
#define CATTR_PACKED
Definition: GrayCore.h:87
#define GRAYLIB_LINK
Definition: GrayLibBase.h:35
UINT32 FOURCC
32 bit code. Also defined in _MMSYSTEM_H
Definition: cFourCC.h:19
#define MAKEFOURCC(ch0, ch1, ch2, ch3)
Definition: cFourCC.h:24
void SetChar(int i, BYTE ch)
Definition: cFourCC.h:159
cFourCC(BYTE ch0, BYTE ch1, BYTE ch2, BYTE ch3) noexcept
Definition: cFourCC.h:117
bool isListType() const noexcept
Definition: cFourCC.h:141
cFourCC(const char *s)
Definition: cFourCC.h:121
UNITTEST2_PREDEF(cFourCC)
cFourCC() noexcept
Definition: cFourCC.h:109
cUnion32 m_u
e.g. "RIFF" is 0 to 3 u_c order.
Definition: cFourCC.h:106
cFourCC(FOURCC dwVal) noexcept
Definition: cFourCC.h:113
bool isValid() const noexcept
Definition: cFourCC.h:129
FOURCC get_FOURCC() const noexcept
Definition: cFourCC.h:133
void SetChars(BYTE ch0, BYTE ch1, BYTE ch2, BYTE ch3) noexcept
Definition: cFourCC.h:155
FOURCC_TYPE
Definition: cFourCC.h:34
@ FOURCC_data
The audio data.
Definition: cFourCC.h:49
@ FOURCC_INFO
Info FOURCC_LIST type.
Definition: cFourCC.h:51
@ FOURCC_UCOP
Definition: cFourCC.h:73
@ FOURCC_TEXT
static text? maybe
Definition: cFourCC.h:58
@ FOURCC_INAM
Definition: cFourCC.h:65
@ FOURCC_fmt
Wave Format info.
Definition: cFourCC.h:47
@ FOURCC_MARC
Definition: cFourCC.h:69
@ FOURCC_ICOP
Definition: cFourCC.h:62
@ FOURCC_JUNK
AVI (ckidAVIPADDING)
Definition: cFourCC.h:77
@ FOURCC_strl
AVI (listtypeSTREAMHEADER)
Definition: cFourCC.h:85
@ FOURCC_IART
static text.
Definition: cFourCC.h:60
@ FOURCC_strn
AVI (ckidSTREAMNAME)
Definition: cFourCC.h:89
@ FOURCC_movi
AVI LIST type (listtypeAVIMOVIE)
Definition: cFourCC.h:81
@ FOURCC_DISP
clip board stuff. Bitmap rep.
Definition: cFourCC.h:57
@ FOURCC_LIST
Definition: cFourCC.h:42
@ FOURCC_odsp
MY OLE display link.
Definition: cFourCC.h:52
@ FOURCC_rec
AVI (listtypeAVIRECORD)
Definition: cFourCC.h:90
@ FOURCC_RIFF
Definition: cFourCC.h:41
@ FOURCC_DATE
Definition: cFourCC.h:68
@ FOURCC_ISFT
Definition: cFourCC.h:67
@ FOURCC_UART
UNICODE static text.
Definition: cFourCC.h:71
@ FOURCC_MDPR
static text.
Definition: cFourCC.h:55
@ FOURCC_PROP
static text.
Definition: cFourCC.h:54
@ FOURCC_idx1
AVI (ckidAVINEWINDEX)
Definition: cFourCC.h:80
@ FOURCC_ISBJ
Subject text.
Definition: cFourCC.h:66
@ FOURCC_FORM
FOURCC_LIST type for AIFF.
Definition: cFourCC.h:44
@ FOURCC_USBJ
Definition: cFourCC.h:75
@ FOURCC_AVI
AVI FOURCC_RIFF type (formtypeAVI)
Definition: cFourCC.h:79
@ FOURCC_ICMT
static text.
Definition: cFourCC.h:61
@ FOURCC_fact
Time length for non-PCM.
Definition: cFourCC.h:48
@ FOURCC_UNAM
Definition: cFourCC.h:74
@ FOURCC_IENG
Definition: cFourCC.h:64
@ FOURCC_hdrl
AVI (listtypeAVIHEADER)
Definition: cFourCC.h:83
@ FOURCC_0
junk FOURCC
Definition: cFourCC.h:38
@ FOURCC_UCMT
Definition: cFourCC.h:72
@ FOURCC_strd
AVI (ckidSTREAMHANDLERDATA)
Definition: cFourCC.h:88
@ FOURCC_avih
AVI (ckidAVIMAINHDR)
Definition: cFourCC.h:84
@ FOURCC_strh
AVI (ckidSTREAMHEADER)
Definition: cFourCC.h:86
@ FOURCC_ICRD
Create date. text.
Definition: cFourCC.h:63
@ FOURCC_strf
AVI (ckidSTREAMFORMAT)
Definition: cFourCC.h:87
@ FOURCC_CONT
static text.
Definition: cFourCC.h:56
@ FOURCC_WAVE
wave/audio FOURCC_RIFF type
Definition: cFourCC.h:46
UNITTEST2_PREDEF(cQuadtree)
int StrLen_t
the length of a string in chars (bytes for UTF8, wchar_t for UNICODE). or offset in characters....
Definition: StrConst.h:32
char u_c[4]
Definition: cTypes.h:74
UINT32 u_dw
32 bit unsigned
Definition: cTypes.h:78