isteammusicremote.cs 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. // This file is provided under The MIT License as part of Steamworks.NET.
  2. // Copyright (c) 2013-2019 Riley Labrecque
  3. // Please see the included LICENSE.txt for additional information.
  4. // This file is automatically generated.
  5. // Changes to this file will be reverted when you update Steamworks.NET
  6. #if UNITY_ANDROID || UNITY_IOS || UNITY_TIZEN || UNITY_TVOS || UNITY_WEBGL || UNITY_WSA || UNITY_PS4 || UNITY_WII || UNITY_XBOXONE || UNITY_SWITCH
  7. #define DISABLESTEAMWORKS
  8. #endif
  9. #if !DISABLESTEAMWORKS
  10. using System.Runtime.InteropServices;
  11. using IntPtr = System.IntPtr;
  12. namespace Steamworks {
  13. public static class SteamMusicRemote {
  14. /// <summary>
  15. /// <para> Service Definition</para>
  16. /// </summary>
  17. public static bool RegisterSteamMusicRemote(string pchName) {
  18. InteropHelp.TestIfAvailableClient();
  19. using (var pchName2 = new InteropHelp.UTF8StringHandle(pchName)) {
  20. return NativeMethods.ISteamMusicRemote_RegisterSteamMusicRemote(CSteamAPIContext.GetSteamMusicRemote(), pchName2);
  21. }
  22. }
  23. public static bool DeregisterSteamMusicRemote() {
  24. InteropHelp.TestIfAvailableClient();
  25. return NativeMethods.ISteamMusicRemote_DeregisterSteamMusicRemote(CSteamAPIContext.GetSteamMusicRemote());
  26. }
  27. public static bool BIsCurrentMusicRemote() {
  28. InteropHelp.TestIfAvailableClient();
  29. return NativeMethods.ISteamMusicRemote_BIsCurrentMusicRemote(CSteamAPIContext.GetSteamMusicRemote());
  30. }
  31. public static bool BActivationSuccess(bool bValue) {
  32. InteropHelp.TestIfAvailableClient();
  33. return NativeMethods.ISteamMusicRemote_BActivationSuccess(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  34. }
  35. public static bool SetDisplayName(string pchDisplayName) {
  36. InteropHelp.TestIfAvailableClient();
  37. using (var pchDisplayName2 = new InteropHelp.UTF8StringHandle(pchDisplayName)) {
  38. return NativeMethods.ISteamMusicRemote_SetDisplayName(CSteamAPIContext.GetSteamMusicRemote(), pchDisplayName2);
  39. }
  40. }
  41. public static bool SetPNGIcon_64x64(byte[] pvBuffer, uint cbBufferLength) {
  42. InteropHelp.TestIfAvailableClient();
  43. return NativeMethods.ISteamMusicRemote_SetPNGIcon_64x64(CSteamAPIContext.GetSteamMusicRemote(), pvBuffer, cbBufferLength);
  44. }
  45. /// <summary>
  46. /// <para> Abilities for the user interface</para>
  47. /// </summary>
  48. public static bool EnablePlayPrevious(bool bValue) {
  49. InteropHelp.TestIfAvailableClient();
  50. return NativeMethods.ISteamMusicRemote_EnablePlayPrevious(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  51. }
  52. public static bool EnablePlayNext(bool bValue) {
  53. InteropHelp.TestIfAvailableClient();
  54. return NativeMethods.ISteamMusicRemote_EnablePlayNext(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  55. }
  56. public static bool EnableShuffled(bool bValue) {
  57. InteropHelp.TestIfAvailableClient();
  58. return NativeMethods.ISteamMusicRemote_EnableShuffled(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  59. }
  60. public static bool EnableLooped(bool bValue) {
  61. InteropHelp.TestIfAvailableClient();
  62. return NativeMethods.ISteamMusicRemote_EnableLooped(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  63. }
  64. public static bool EnableQueue(bool bValue) {
  65. InteropHelp.TestIfAvailableClient();
  66. return NativeMethods.ISteamMusicRemote_EnableQueue(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  67. }
  68. public static bool EnablePlaylists(bool bValue) {
  69. InteropHelp.TestIfAvailableClient();
  70. return NativeMethods.ISteamMusicRemote_EnablePlaylists(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  71. }
  72. /// <summary>
  73. /// <para> Status</para>
  74. /// </summary>
  75. public static bool UpdatePlaybackStatus(AudioPlayback_Status nStatus) {
  76. InteropHelp.TestIfAvailableClient();
  77. return NativeMethods.ISteamMusicRemote_UpdatePlaybackStatus(CSteamAPIContext.GetSteamMusicRemote(), nStatus);
  78. }
  79. public static bool UpdateShuffled(bool bValue) {
  80. InteropHelp.TestIfAvailableClient();
  81. return NativeMethods.ISteamMusicRemote_UpdateShuffled(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  82. }
  83. public static bool UpdateLooped(bool bValue) {
  84. InteropHelp.TestIfAvailableClient();
  85. return NativeMethods.ISteamMusicRemote_UpdateLooped(CSteamAPIContext.GetSteamMusicRemote(), bValue);
  86. }
  87. /// <summary>
  88. /// <para> volume is between 0.0 and 1.0</para>
  89. /// </summary>
  90. public static bool UpdateVolume(float flValue) {
  91. InteropHelp.TestIfAvailableClient();
  92. return NativeMethods.ISteamMusicRemote_UpdateVolume(CSteamAPIContext.GetSteamMusicRemote(), flValue);
  93. }
  94. /// <summary>
  95. /// <para> Current Entry</para>
  96. /// </summary>
  97. public static bool CurrentEntryWillChange() {
  98. InteropHelp.TestIfAvailableClient();
  99. return NativeMethods.ISteamMusicRemote_CurrentEntryWillChange(CSteamAPIContext.GetSteamMusicRemote());
  100. }
  101. public static bool CurrentEntryIsAvailable(bool bAvailable) {
  102. InteropHelp.TestIfAvailableClient();
  103. return NativeMethods.ISteamMusicRemote_CurrentEntryIsAvailable(CSteamAPIContext.GetSteamMusicRemote(), bAvailable);
  104. }
  105. public static bool UpdateCurrentEntryText(string pchText) {
  106. InteropHelp.TestIfAvailableClient();
  107. using (var pchText2 = new InteropHelp.UTF8StringHandle(pchText)) {
  108. return NativeMethods.ISteamMusicRemote_UpdateCurrentEntryText(CSteamAPIContext.GetSteamMusicRemote(), pchText2);
  109. }
  110. }
  111. public static bool UpdateCurrentEntryElapsedSeconds(int nValue) {
  112. InteropHelp.TestIfAvailableClient();
  113. return NativeMethods.ISteamMusicRemote_UpdateCurrentEntryElapsedSeconds(CSteamAPIContext.GetSteamMusicRemote(), nValue);
  114. }
  115. public static bool UpdateCurrentEntryCoverArt(byte[] pvBuffer, uint cbBufferLength) {
  116. InteropHelp.TestIfAvailableClient();
  117. return NativeMethods.ISteamMusicRemote_UpdateCurrentEntryCoverArt(CSteamAPIContext.GetSteamMusicRemote(), pvBuffer, cbBufferLength);
  118. }
  119. public static bool CurrentEntryDidChange() {
  120. InteropHelp.TestIfAvailableClient();
  121. return NativeMethods.ISteamMusicRemote_CurrentEntryDidChange(CSteamAPIContext.GetSteamMusicRemote());
  122. }
  123. /// <summary>
  124. /// <para> Queue</para>
  125. /// </summary>
  126. public static bool QueueWillChange() {
  127. InteropHelp.TestIfAvailableClient();
  128. return NativeMethods.ISteamMusicRemote_QueueWillChange(CSteamAPIContext.GetSteamMusicRemote());
  129. }
  130. public static bool ResetQueueEntries() {
  131. InteropHelp.TestIfAvailableClient();
  132. return NativeMethods.ISteamMusicRemote_ResetQueueEntries(CSteamAPIContext.GetSteamMusicRemote());
  133. }
  134. public static bool SetQueueEntry(int nID, int nPosition, string pchEntryText) {
  135. InteropHelp.TestIfAvailableClient();
  136. using (var pchEntryText2 = new InteropHelp.UTF8StringHandle(pchEntryText)) {
  137. return NativeMethods.ISteamMusicRemote_SetQueueEntry(CSteamAPIContext.GetSteamMusicRemote(), nID, nPosition, pchEntryText2);
  138. }
  139. }
  140. public static bool SetCurrentQueueEntry(int nID) {
  141. InteropHelp.TestIfAvailableClient();
  142. return NativeMethods.ISteamMusicRemote_SetCurrentQueueEntry(CSteamAPIContext.GetSteamMusicRemote(), nID);
  143. }
  144. public static bool QueueDidChange() {
  145. InteropHelp.TestIfAvailableClient();
  146. return NativeMethods.ISteamMusicRemote_QueueDidChange(CSteamAPIContext.GetSteamMusicRemote());
  147. }
  148. /// <summary>
  149. /// <para> Playlist</para>
  150. /// </summary>
  151. public static bool PlaylistWillChange() {
  152. InteropHelp.TestIfAvailableClient();
  153. return NativeMethods.ISteamMusicRemote_PlaylistWillChange(CSteamAPIContext.GetSteamMusicRemote());
  154. }
  155. public static bool ResetPlaylistEntries() {
  156. InteropHelp.TestIfAvailableClient();
  157. return NativeMethods.ISteamMusicRemote_ResetPlaylistEntries(CSteamAPIContext.GetSteamMusicRemote());
  158. }
  159. public static bool SetPlaylistEntry(int nID, int nPosition, string pchEntryText) {
  160. InteropHelp.TestIfAvailableClient();
  161. using (var pchEntryText2 = new InteropHelp.UTF8StringHandle(pchEntryText)) {
  162. return NativeMethods.ISteamMusicRemote_SetPlaylistEntry(CSteamAPIContext.GetSteamMusicRemote(), nID, nPosition, pchEntryText2);
  163. }
  164. }
  165. public static bool SetCurrentPlaylistEntry(int nID) {
  166. InteropHelp.TestIfAvailableClient();
  167. return NativeMethods.ISteamMusicRemote_SetCurrentPlaylistEntry(CSteamAPIContext.GetSteamMusicRemote(), nID);
  168. }
  169. public static bool PlaylistDidChange() {
  170. InteropHelp.TestIfAvailableClient();
  171. return NativeMethods.ISteamMusicRemote_PlaylistDidChange(CSteamAPIContext.GetSteamMusicRemote());
  172. }
  173. }
  174. }
  175. #endif // !DISABLESTEAMWORKS