CHENGQI YANG / MGC3130

Dependencies:   BufferedArray

Dependents:   NucleoMGC3130 i2c_master

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers OutputEnable.h Source File

OutputEnable.h

00001 #ifndef UK_AC_HERTS_SMARTLAB_MGC3130_OutputEnable
00002 #define UK_AC_HERTS_SMARTLAB_MGC3130_OutputEnable
00003 
00004 #include "Parameter.h"
00005 /*
00006 The Argument0 defines which Data need to be enabled or disabled.
00007 The Argument1 defines the mask for the Data which need to be configured.
00008 
00009 Bits 0...12: Payload elements: If set to ‘1’, payload elements will be part of the message
00010 Bit 0: DSP Status
00011 Bit 1: Gesture Data
00012 Bit 2: TouchInfo
00013 Bit 3: AirWheelInfo
00014 Bit 4: xyzPosition
00015 Bit 5: Noise Power
00016 Bit 6...10: These bits are reserved and must be set to ‘0’
00017 Bit 11: CICData (Uncalibrated Signal)
00018 Bit 12: SDData (Signal Deviation)
00019 Bits 13...15: These bits are reserved and must be set to ‘0’
00020 Bits 16...17: SystemInfo status bits: If set to ‘1’, the reporting of a state change in the payload element SystemInfo is enabled
00021 Bit 16: EnvironmentalNoise indication
00022 Bit 17: Clipping indication
00023 Bit 18: DSP running
00024 Bits 19: AirWheelCounterDecimation: If set to ‘1’, the AirWheel counter is decimated by the factor of 4
00025 Bit 20: TimeStampOverflow: This applies when AirWheel or Touch Detection is ongoing. If activated, a message will be sent when the counter in the payload element TimeStamp is overflowing (TimeStamp=0)
00026 Bits 21...26: These bits are reserved
00027 Bits 27...31: GesturesInfo status bits: If set to ‘1’, the reporting of a state change in the payload element GestureInfo is enabled.
00028 Bit 27: HandPresence flag
00029 Bit 28: HandHold flag
00030 Bit 29: HandInside flag
00031 Bit 30: This bit is reserved
00032 Bit 31: GestureInProgress flag
00033 */
00034 class OutputEnable: public Parameter
00035 {
00036 public:
00037     OutputEnable();
00038 
00039     OutputEnable * enableDSPStatus(bool enable);
00040 
00041     OutputEnable * enableGestureData(bool enable);
00042 
00043     OutputEnable * enableTouchInfo(bool enable);
00044 
00045     OutputEnable * enableAirWheelInfo(bool enable);
00046 
00047     OutputEnable * enablexyzPosition(bool enable);
00048 
00049     OutputEnable * enableNoisePower(bool enable);
00050 
00051     OutputEnable * enableUncalibratedSignal(bool enable);
00052 
00053     OutputEnable * enableSignalDeviation(bool enable);
00054 
00055     OutputEnable * enableEnvironmentalNoise(bool enable);
00056 
00057     OutputEnable * enableClipping(bool enable);
00058 
00059     OutputEnable * enableDSP(bool enable);
00060 
00061     //If set, the AirWheel counter is decimated by the factor of 4
00062     OutputEnable * enableAirWheelCounterDecimation(bool enable);
00063 
00064     //This applies when AirWheel or Touch Detection is ongoing. If activated, a message will be sent when the counter in the payload element TimeStamp is overflowing (TimeStamp=0)
00065     OutputEnable * enableTimeStampOverflow(bool enable);
00066 
00067     //GesturesInfo status bits: If set to ‘1’, the reporting of a state change in the payload element GestureInfo is enabled.
00068     OutputEnable * enableHandPresence(bool enable);
00069 
00070     //GesturesInfo status bits: If set to ‘1’, the reporting of a state change in the payload element GestureInfo is enabled.
00071     OutputEnable * enableHandHold(bool enable);
00072 
00073     //GesturesInfo status bits: If set to ‘1’, the reporting of a state change in the payload element GestureInfo is enabled.
00074     OutputEnable * enableHandInside(bool enable);
00075 
00076     OutputEnable * enableGestureInProgress(bool enable);
00077 };
00078 
00079 #endif