mirror of
https://github.com/cemu-project/DS4Windows.git
synced 2024-12-24 23:51:49 +01:00
Remove new DS4State object creation per poll
This commit is contained in:
parent
dd6e2edadf
commit
d66c98c139
@ -21,6 +21,7 @@ namespace DS4Windows
|
|||||||
private DS4State[] MappedState = new DS4State[DS4_CONTROLLER_COUNT];
|
private DS4State[] MappedState = new DS4State[DS4_CONTROLLER_COUNT];
|
||||||
private DS4State[] CurrentState = new DS4State[DS4_CONTROLLER_COUNT];
|
private DS4State[] CurrentState = new DS4State[DS4_CONTROLLER_COUNT];
|
||||||
private DS4State[] PreviousState = new DS4State[DS4_CONTROLLER_COUNT];
|
private DS4State[] PreviousState = new DS4State[DS4_CONTROLLER_COUNT];
|
||||||
|
private DS4State[] TempState = new DS4State[DS4_CONTROLLER_COUNT];
|
||||||
public DS4StateExposed[] ExposedState = new DS4StateExposed[DS4_CONTROLLER_COUNT];
|
public DS4StateExposed[] ExposedState = new DS4StateExposed[DS4_CONTROLLER_COUNT];
|
||||||
public bool recordingMacro = false;
|
public bool recordingMacro = false;
|
||||||
public event EventHandler<DebugEventArgs> Debug = null;
|
public event EventHandler<DebugEventArgs> Debug = null;
|
||||||
@ -61,6 +62,7 @@ namespace DS4Windows
|
|||||||
processingData[i] = new X360Data();
|
processingData[i] = new X360Data();
|
||||||
MappedState[i] = new DS4State();
|
MappedState[i] = new DS4State();
|
||||||
CurrentState[i] = new DS4State();
|
CurrentState[i] = new DS4State();
|
||||||
|
TempState[i] = new DS4State();
|
||||||
PreviousState[i] = new DS4State();
|
PreviousState[i] = new DS4State();
|
||||||
ExposedState[i] = new DS4StateExposed(CurrentState[i]);
|
ExposedState[i] = new DS4StateExposed(CurrentState[i]);
|
||||||
}
|
}
|
||||||
@ -789,7 +791,7 @@ namespace DS4Windows
|
|||||||
if (getEnableTouchToggle(ind))
|
if (getEnableTouchToggle(ind))
|
||||||
CheckForTouchToggle(ind, cState, pState);
|
CheckForTouchToggle(ind, cState, pState);
|
||||||
|
|
||||||
cState = Mapping.SetCurveAndDeadzone(ind, cState);
|
cState = Mapping.SetCurveAndDeadzone(ind, cState, TempState[ind]);
|
||||||
|
|
||||||
if (!recordingMacro && (!string.IsNullOrEmpty(tempprofilename[ind]) ||
|
if (!recordingMacro && (!string.IsNullOrEmpty(tempprofilename[ind]) ||
|
||||||
containsCustomAction(ind) || containsCustomExtras(ind) ||
|
containsCustomAction(ind) || containsCustomExtras(ind) ||
|
||||||
|
@ -424,7 +424,7 @@ namespace DS4Windows
|
|||||||
return (value < min) ? min : (value > max) ? max : value;
|
return (value < min) ? min : (value > max) ? max : value;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DS4State SetCurveAndDeadzone(int device, DS4State cState)
|
public static DS4State SetCurveAndDeadzone(int device, DS4State cState, DS4State dState)
|
||||||
{
|
{
|
||||||
double rotation = tempDoubleArray[device] = getLSRotation(device);
|
double rotation = tempDoubleArray[device] = getLSRotation(device);
|
||||||
if (rotation > 0.0 || rotation < 0.0)
|
if (rotation > 0.0 || rotation < 0.0)
|
||||||
@ -434,7 +434,8 @@ namespace DS4Windows
|
|||||||
if (rotationRS > 0.0 || rotationRS < 0.0)
|
if (rotationRS > 0.0 || rotationRS < 0.0)
|
||||||
cState.rotateRSCoordinates(rotationRS);
|
cState.rotateRSCoordinates(rotationRS);
|
||||||
|
|
||||||
DS4State dState = new DS4State(cState);
|
cState.CopyTo(dState);
|
||||||
|
//DS4State dState = new DS4State(cState);
|
||||||
int x;
|
int x;
|
||||||
int y;
|
int y;
|
||||||
int curve;
|
int curve;
|
||||||
|
Loading…
Reference in New Issue
Block a user