Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
QM translation of C++
#7
Quote:If the order is not important, then also don't need special packing. I thought the type is used with a dll function.

yes, i missed that and now i understand why pragma is used, it's indeed a dll function in bladeenc.dll

So order IS important as the call of the procedure must match the headers one.....

------------------------------------------------------------------
playing with sizeof, using pragma it's 23, 24 without it.

so this way is explicit packing (you say what variable to pack)

type ____BE_CONFIG11 dwSampleRate !byMode [+1]@wBitrate bPrivate bCRC bCopyright bOriginal

and this one is implicit or automatic, the argument seems to do it automatically

type ____BE_CONFIG11 dwSampleRate !byMode @wBitrate bPrivate bCRC bCopyright bOriginal [pack1]

Is this statement correct?


but i wonder why so much hassle to gain one byte meory, and seems from my readings that it's less perfomant than odd numbers of bytes.


2.
Quote: In QM, nonstandard member offsets must be explicitly specified. Including union members. Like in C#. In C/C++ for it are used keyword union and directive #pragma pack.

type __BE_CONFIG1 ____BE_CONFIG11'mp3 []____BE_CONFIG12'LHV1 []____BE_CONFIG13'aac

the empty brackets do mean to use previous packing method then, correct? but they are not the same size....
or is it just a convention for QM to work correctly?

3. ok, just translation of type to QM which own less types than C...i put them on a paper for further reference


Messages In This Thread

Forum Jump:


Users browsing this thread: 5 Guest(s)