// Copyright Epic Games, Inc. All Rights Reserved.
// This file is automatically generated. Changes to this file may be overwritten.
namespace Epic.OnlineServices.AntiCheatCommon
{
///
/// Quaternion using left-handed coordinate system (as in Unreal Engine)
///
public class Quat : ISettable
{
///
/// W component - scalar part
///
public float w { get; set; }
///
/// X component - forward direction
///
public float x { get; set; }
///
/// Y component - right direction
///
public float y { get; set; }
///
/// Z component - up direction
///
public float z { get; set; }
internal void Set(QuatInternal? other)
{
if (other != null)
{
w = other.Value.w;
x = other.Value.x;
y = other.Value.y;
z = other.Value.z;
}
}
public void Set(object other)
{
Set(other as QuatInternal?);
}
}
[System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential, Pack = 8)]
internal struct QuatInternal : ISettable, System.IDisposable
{
private float m_w;
private float m_x;
private float m_y;
private float m_z;
public float w
{
get
{
return m_w;
}
set
{
m_w = value;
}
}
public float x
{
get
{
return m_x;
}
set
{
m_x = value;
}
}
public float y
{
get
{
return m_y;
}
set
{
m_y = value;
}
}
public float z
{
get
{
return m_z;
}
set
{
m_z = value;
}
}
public void Set(Quat other)
{
if (other != null)
{
w = other.w;
x = other.x;
y = other.y;
z = other.z;
}
}
public void Set(object other)
{
Set(other as Quat);
}
public void Dispose()
{
}
}
}