API Reference | developer.brewmp.com API Reference | developer.brewmp.com

Developer

API Reference

AEEFLIPINFO

Brew Release
Brew MP 1.0.2
Description
This is a 32-bit unsigned integer used for dwParam of EVT_FLIP and EVT_KEYGUARD, and in IFlip interface functions.

     +--------+--------+--------+--------+
     | x-axis | y-axis | z-axis |   ID   |
     +--------+--------+--------+--------+
      LSB                             MSB
ID is the number uniquely identifying a flip for multiple flip devices (starting from 0).
x-axis/y-axis/z-axis values are expressed as one of the following cases: Case 1: OEM-defined linear units (absolute value). Case 2: As a percentage of the total linear range (percentage value). Case 3: In angular units, each unit representing 2 degrees.
Use the flipPositionType member of AEEFlipInfoEx to determine if the x-axis, y-axis, z-axis fields represent linear values (case 1, case 2) (or) angles (case 3). - If flipPositionType is AEEFLIP_POSTYPE_LINEAR, then the fields represent linear values (case 1, case 2).
- If flipPositionType is AEEFLIP_POSTYPE_ANGLE, then the fields represent angular values (case 3).

Further differentiation between case 1 and case 2: Only IFLIP_GetFlipMinPosition and IFLIP_GetFlipMaxPosition return an absolute value for x-axis, y-axis, z-axis in AEEFlipInfo (case 1). The units used for the absolute values are OEM and device specific.
All other IFlip interface functions, and dwParam of EVT_FLIP and EVT_KEYGUARD, for a linear representation, express the field values as a percentage of the linear movement range. (case 2)
For example, if a flip has 1) flipPositionType = AEEFLIP_POSTYPE_LINEAR in AEEFlipInfoEx, and 2) IFlip_GetFlipMinPosition returns AEEFlipInfo with an x-axis value of 0 units, and 3) IFlipGetMaxPosition returns AEEFlipInfo with an x-axis value if 200 units, and 4) On EVT_FLIP, AEEFlipInfo has an x-axis value of 50 (percentage),
then the actual x-axis value of the flip is calculated as follows: = (Current x-axis percentage / 100) * (Max x-axis value - Min x-axis value ) = (50 / 100) * (200-0) = 100 units.
The figures x-axis flip, y-axis flip, z-axis flip and y-slide flip illustrate flip movement and their relation to AEEFlipInfo.
You can use the following macros to construct this value or get components from this value: - DEVNOTIFY_MAKE: Given the x, y, z and ID, it'll construct the AEEFlipInfo value.
- DEVNOTIFY_GET_X: Given an AEEFlipInfo value, it will get the x component value.
- DEVNOTIFY_GET_Y: Given an AEEFlipInfo value, it will get the y component value.
- DEVNOITFY_GET_Z: Given an AEEFlipInfo value, it will get the z component value.
- DEVNOTIFY_GET_ID: Given an AEEFlipInfo value, it will get the ID component value.
Definition
  •    typedef uint32 AEEFlipInfo
    
Comments
The EVT_FLIP and EVT_KEYGUARD events are discussed in the AEEEvent topic.