CnC_Remastered_Collection/CnCTDRAMapEditor/Steamworks.NET/autogen/SteamStructs.cs
PG-SteveT e37e174be1 C&C Remastered Map Editor
Initial commit of C&C Remastered Map Editor code
2020-09-10 11:12:58 -07:00

235 lines
9.6 KiB
C#

// This file is provided under The MIT License as part of Steamworks.NET.
// Copyright (c) 2013-2019 Riley Labrecque
// Please see the included LICENSE.txt for additional information.
// This file is automatically generated.
// Changes to this file will be reverted when you update Steamworks.NET
#if UNITY_ANDROID || UNITY_IOS || UNITY_TIZEN || UNITY_TVOS || UNITY_WEBGL || UNITY_WSA || UNITY_PS4 || UNITY_WII || UNITY_XBOXONE || UNITY_SWITCH
#define DISABLESTEAMWORKS
#endif
#if !DISABLESTEAMWORKS
using System.Runtime.InteropServices;
using IntPtr = System.IntPtr;
namespace Steamworks {
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct ControllerAnalogActionData_t {
// Type of data coming from this action, this will match what got specified in the action set
public EControllerSourceMode eMode;
// The current state of this action; will be delta updates for mouse actions
public float x, y;
// Whether or not this action is currently available to be bound in the active action set
public byte bActive;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct ControllerDigitalActionData_t {
// The current state of this action; will be true if currently pressed
public byte bState;
// Whether or not this action is currently available to be bound in the active action set
public byte bActive;
}
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct ControllerMotionData_t {
// Sensor-fused absolute rotation; will drift in heading
public float rotQuatX;
public float rotQuatY;
public float rotQuatZ;
public float rotQuatW;
// Positional acceleration
public float posAccelX;
public float posAccelY;
public float posAccelZ;
// Angular velocity
public float rotVelX;
public float rotVelY;
public float rotVelZ;
}
// friend game played information
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct FriendGameInfo_t {
public CGameID m_gameID;
public uint m_unGameIP;
public ushort m_usGamePort;
public ushort m_usQueryPort;
public CSteamID m_steamIDLobby;
}
//-----------------------------------------------------------------------------
// Purpose: information about user sessions
//-----------------------------------------------------------------------------
public struct FriendSessionStateInfo_t {
public uint m_uiOnlineSessionInstances;
public byte m_uiPublishedToFriendsSessionInstance;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct InputAnalogActionData_t {
// Type of data coming from this action, this will match what got specified in the action set
public EInputSourceMode eMode;
// The current state of this action; will be delta updates for mouse actions
public float x, y;
// Whether or not this action is currently available to be bound in the active action set
public byte bActive;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct InputDigitalActionData_t {
// The current state of this action; will be true if currently pressed
public byte bState;
// Whether or not this action is currently available to be bound in the active action set
public byte bActive;
}
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct InputMotionData_t {
// Sensor-fused absolute rotation; will drift in heading
public float rotQuatX;
public float rotQuatY;
public float rotQuatZ;
public float rotQuatW;
// Positional acceleration
public float posAccelX;
public float posAccelY;
public float posAccelZ;
// Angular velocity
public float rotVelX;
public float rotVelY;
public float rotVelZ;
}
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct SteamItemDetails_t {
public SteamItemInstanceID_t m_itemId;
public SteamItemDef_t m_iDefinition;
public ushort m_unQuantity;
public ushort m_unFlags; // see ESteamItemFlags
}
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct SteamPartyBeaconLocation_t {
public ESteamPartyBeaconLocationType m_eType;
public ulong m_ulLocationID;
}
// connection state to a specified user, returned by GetP2PSessionState()
// this is under-the-hood info about what's going on with a SendP2PPacket(), shouldn't be needed except for debuggin
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct P2PSessionState_t {
public byte m_bConnectionActive; // true if we've got an active open connection
public byte m_bConnecting; // true if we're currently trying to establish a connection
public byte m_eP2PSessionError; // last error recorded (see enum above)
public byte m_bUsingRelay; // true if it's going through a relay server (TURN)
public int m_nBytesQueuedForSend;
public int m_nPacketsQueuedForSend;
public uint m_nRemoteIP; // potential IP:Port of remote host. Could be TURN server.
public ushort m_nRemotePort; // Only exists for compatibility with older authentication api's
}
//-----------------------------------------------------------------------------
// Purpose: Structure that contains an array of const char * strings and the number of those strings
//-----------------------------------------------------------------------------
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct SteamParamStringArray_t {
public IntPtr m_ppStrings;
public int m_nNumStrings;
}
// Details for a single published file/UGC
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct SteamUGCDetails_t {
public PublishedFileId_t m_nPublishedFileId;
public EResult m_eResult; // The result of the operation.
public EWorkshopFileType m_eFileType; // Type of the file
public AppId_t m_nCreatorAppID; // ID of the app that created this file.
public AppId_t m_nConsumerAppID; // ID of the app that will consume this file.
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = Constants.k_cchPublishedDocumentTitleMax)]
public string m_rgchTitle; // title of document
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = Constants.k_cchPublishedDocumentDescriptionMax)]
public string m_rgchDescription; // description of document
public ulong m_ulSteamIDOwner; // Steam ID of the user who created this content.
public uint m_rtimeCreated; // time when the published file was created
public uint m_rtimeUpdated; // time when the published file was last updated
public uint m_rtimeAddedToUserList; // time when the user added the published file to their list (not always applicable)
public ERemoteStoragePublishedFileVisibility m_eVisibility; // visibility
[MarshalAs(UnmanagedType.I1)]
public bool m_bBanned; // whether the file was banned
[MarshalAs(UnmanagedType.I1)]
public bool m_bAcceptedForUse; // developer has specifically flagged this item as accepted in the Workshop
[MarshalAs(UnmanagedType.I1)]
public bool m_bTagsTruncated; // whether the list of tags was too long to be returned in the provided buffer
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = Constants.k_cchTagListMax)]
public string m_rgchTags; // comma separated list of all tags associated with this file
// file/url information
public UGCHandle_t m_hFile; // The handle of the primary file
public UGCHandle_t m_hPreviewFile; // The handle of the preview file
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = Constants.k_cchFilenameMax)]
public string m_pchFileName; // The cloud filename of the primary file
public int m_nFileSize; // Size of the primary file
public int m_nPreviewFileSize; // Size of the preview file
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = Constants.k_cchPublishedFileURLMax)]
public string m_rgchURL; // URL (for a video or a website)
// voting information
public uint m_unVotesUp; // number of votes up
public uint m_unVotesDown; // number of votes down
public float m_flScore; // calculated score
// collection details
public uint m_unNumChildren;
}
// structure that contains client callback data
// see callbacks documentation for more details
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct CallbackMsg_t {
public int m_hSteamUser;
public int m_iCallback;
public IntPtr m_pubParam;
public int m_cubParam;
}
// a single entry in a leaderboard, as returned by GetDownloadedLeaderboardEntry()
[StructLayout(LayoutKind.Sequential, Pack = Packsize.value)]
public struct LeaderboardEntry_t {
public CSteamID m_steamIDUser; // user with the entry - use SteamFriends()->GetFriendPersonaName() & SteamFriends()->GetFriendAvatar() to get more info
public int m_nGlobalRank; // [1..N], where N is the number of users with an entry in the leaderboard
public int m_nScore; // score as set in the leaderboard
public int m_cDetails; // number of int32 details available for this entry
public UGCHandle_t m_hUGC; // handle for UGC attached to the entry
}
/// Store key/value pair used in matchmaking queries.
///
/// Actually, the name Key/Value is a bit misleading. The "key" is better
/// understood as "filter operation code" and the "value" is the operand to this
/// filter operation. The meaning of the operand depends upon the filter.
[StructLayout(LayoutKind.Sequential)]
public struct MatchMakingKeyValuePair_t {
MatchMakingKeyValuePair_t(string strKey, string strValue) {
m_szKey = strKey;
m_szValue = strValue;
}
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
public string m_szKey;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 256)]
public string m_szValue;
}
}
#endif // !DISABLESTEAMWORKS