pastebin - collaborative debugging tool
kpaste.net RSS


gamestreaming
Posted by Anonymous on Thu 12th Nov 2020 19:09
raw | new post

  1. using Windows.Foundation.Metadata;
  2.  
  3. namespace gamestreaming_sdk
  4. {
  5.   public enum ButtonState
  6.   {
  7.     Up,
  8.     Down,
  9.   }
  10.  
  11.   public enum ConsolePowerState
  12.   {
  13.     ConnectedStandby,
  14.     On,
  15.     Off,
  16.     Unknown,
  17.   }
  18.  
  19.   public enum ErrorCode
  20.   {
  21.     OperationPending = 0x8000000A,
  22.     Bounds = 0x8000000B,
  23.     IllegalMethodCall = 0x8000000E,
  24.     ApplicationExiting = 0x8000001A,
  25.     NotImplemented = 0x80004001,
  26.     NoInterface = 0x80004002,
  27.     InvalidPointer = 0x80004003,
  28.     Aborted = 0x80004004,
  29.     Failed = 0x80004005,
  30.     Unexpected = 0x8000FFFF,
  31.     IoFailure = 0x80028CA2,
  32.     TransferTokenMicrosoftAccountProofUp = 0x8004884B,
  33.     TransferTokenMicrosoftAccountUnfamiliarLocation = 0x800488FF,
  34.     AccessDenied = 0x80070005,
  35.     InvalidHandle = 0x80070006,
  36.     OutOfMemory = 0x8007000E,
  37.     BadLength = 0x80070018,
  38.     Unsupported = 0x80070032,
  39.     InvalidArgument = 0x80070057,
  40.     InsufficientBuffer = 0x8007007A,
  41.     Timeout = 0x80070102,
  42.     ArithmeticOverflow = 0x80070216,
  43.     FatalApplicationExit = 0x800702C9,
  44.     ServiceSpecificError = 0x8007042A,
  45.     NotFound = 0x80070490,
  46.     NoNetwork = 0x800704C6,
  47.     Cancelled = 0x800704C7,
  48.     AbiVersionMismatch = 0x8007051A,
  49.     NoSuchUser = 0x80070525,
  50.     BadConfiguration = 0x8007064A,
  51.     ResourceDataNotFound = 0x80070714,
  52.     InvalidState = 0x8007139F,
  53.     InternetNameNotResolved = 0x80072EE7,
  54.     SSLException = 0x80072F17,
  55.     UnknownString = 0x80073AB9,
  56.     InvalidLocale = 0x80073AFF,
  57.     GamePointOfPresenceViolated = 0x8015DBFF,
  58.     SigninCountByDeviceTypeExceeded = 0x8015DC16,
  59.     TitleSinglePointOfPresenceViolated = 0x8015DC1E,
  60.     AuthUnauthorized = 0x80190191,
  61.     Conflict = 0x80190199,
  62.     Gone = 0x8019019A,
  63.     NoEntitlement = 0x803F8001,
  64.     GamePassExpired = 0x803F800E,
  65.     OnlEActionRequired = 0x8086000C,
  66.     BlockedByScreenTime = 0x80A20407,
  67.     BlockedByParentalControls = 0x81C201C2,
  68.     WebEUnexpectedContent = 0x83750005,
  69.     InvalidJsonString = 0x83750007,
  70.     JsonValueNotFound = 0x83750009,
  71.     AuthInvalidOffering = 0x87DA0001,
  72.     AuthBadToken = 0x87DA0002,
  73.     TitleIdInUse = 0x87DA0003,
  74.     InvalidServicesDomain = 0x87DA0004,
  75.     UnsupportedMarketOrFlight = 0x87DA0005,
  76.     SigninBlockedByPasswordPrompt = 0x87DA0006,
  77.     ConsoleStreamingDisabled = 0x87DA0007,
  78.     StreamingVersionNotRecognized = 0x87DA0008,
  79.     StreamingVersionObsolete = 0x87DA0009,
  80.     TitleOffline = 0x87DA000A,
  81.     SessionResumedElsewhere = 0x87DA000B,
  82.     AppOutsideCurfew = 0x87E10014,
  83.     AppOutOfScreenTime = 0x87E10015,
  84.     Unknown = 0x8FFFFFFF,
  85.     Success = 0,
  86.     NotReady = 0x00000015
  87.   }
  88.  
  89.   public enum ExperimentalOrientation
  90.   {
  91.     Landscape,
  92.     Portrait,
  93.     OrientationCount,
  94.   }
  95.  
  96.   public enum GamepadAnalogFlags
  97.   {
  98.     None = 0x0,
  99.     LeftStick = 0x1,
  100.     RightStick = 0x2,
  101.     DirectionalPad = 0x4,
  102.     LeftTrigger = 0x8,
  103.     RightTrigger = 0x10,
  104.     AllExceptDirectionalPad = 0xFB,
  105.     All = 0xFF
  106.   }
  107.  
  108.   public enum GamepadInput
  109.   {
  110.     DirectionalPadUp = 0x00,
  111.     DirectionalPadDown = 0x01,
  112.     DirectionalPadLeft = 0x02,
  113.     DirectionalPadRight = 0x03,
  114.     Start = 0x04,
  115.     Back = 0x05,
  116.     LeftStickButton = 0x06,
  117.     RightStickButton = 0x07,
  118.     LeftShoulder = 0x08,
  119.     RightShoulder = 0x09,
  120.     Guide = 0x0A,
  121.     Misc = 0x0B,
  122.     A = 0x0C,
  123.     B = 0x0D,
  124.     X = 0x0E,
  125.     Y = 0x0F,
  126.     LeftStickX = 0x11,
  127.     LeftStickY = 0x12,
  128.     RightStickX = 0x13,
  129.     RightStickY = 0x14,
  130.     DpadX = 0x15,
  131.     DpadY = 0x16,
  132.     LeftTrigger = 0x17,
  133.     RightTrigger = 0x18,
  134.   }
  135.  
  136.   public enum LogLevel
  137.   {
  138.     Error,
  139.     Warning,
  140.     Info,
  141.     Verbose,
  142.   }
  143.  
  144.   public enum NetworkTestProgress
  145.   {
  146.     Started,
  147.     FinishedRtt,
  148.     FinishedDownstream,
  149.   }
  150.  
  151.   public enum StreamSessionDisconnectReason
  152.   {
  153.     NetworkError,
  154.     ClientInitiatedCleanDisconnect,
  155.     ClientInitiatedCleanShutdown,
  156.     ServerInitiatedKickByNewSession,
  157.     ServerInitiatedKickForClosedGame,
  158.     ServerInitiatedKickForBeingIdle,
  159.     ServerInitiatedKickForSignOut,
  160.     ServerInitiatedKickForServerShutdown,
  161.     ServerInitiatedKickForStopCommand,
  162.     ServerInitiatedKickForAppError,
  163.   }
  164.  
  165.   public enum StreamSessionQualityLevel
  166.   {
  167.     Excellent,
  168.     Good,
  169.     Ok,
  170.     Poor,
  171.     Unknown,
  172.   }
  173.  
  174.   public enum StreamSessionRequestState
  175.   {
  176.     NotStarted,
  177.     Queued,
  178.     Launching,
  179.     Ready,
  180.     Cancelled,
  181.     Failed,
  182.   }
  183.  
  184.   public enum SystemUiType
  185.   {
  186.     ShowAchievements,
  187.     ShowRecentPlayers,
  188.     ShowGameInvite,
  189.     ShowPlayerPicker,
  190.     ShowProfileCard,
  191.     ShowChangeFriendRelationship,
  192.     ShowTitleAchievements,
  193.     ShowCustomizeUserProfile,
  194.     ShowSendInvites,
  195.     ShowAccountPicker,
  196.     ShowVirtualKeyboard,
  197.     ShowComposeMessage,
  198.     ShowAddRemoveFriend,
  199.     ShowPeoplePicker,
  200.     ShowSendGameInvites,
  201.     ShowLaunchParty,
  202.     ShowPartyAndSendPartyInvites,
  203.     ShowCreateLookingForGroup,
  204.     ShowUserLookingForGroups,
  205.     ShowMessageDialog,
  206.     ShowSystemError,
  207.     ShowCheckGamingPrivilege,
  208.     ShowSpeechToTextString,
  209.     CheckPrivileges,
  210.     SetNotificationPositionHint,
  211.     SetSpeechToTextPositionHint,
  212.     ShowMarketplace,
  213.     ShowPurchase,
  214.     ShowDetails,
  215.     ShowRedeemCode,
  216.     ShowSubscription,
  217.     ShowApplication,
  218.     ShowTimerExtension,
  219.   }
  220.  
  221.   public enum TouchType
  222.   {
  223.     OutOfRange,
  224.     Hovering,
  225.     InContact,
  226.   }
  227.  
  228.   public struct ActiveTitleInfo
  229.   {
  230.     public string Id;
  231.   }
  232.  
  233.   public struct AudioConfigurationOptions
  234.   {
  235.     public uint SampleRateInHertz;
  236.     public uint BufferSizeInFrames;
  237.     public bool EnableMicrophone;
  238.   }
  239.  
  240.   public struct BandwidthTestResult
  241.   {
  242.     public double JitterMs;
  243.     public uint PacketsLost;
  244.     public uint PacketsSent;
  245.     public double BandwidthMbps;
  246.   }
  247.  
  248.   public struct ConsoleInfo
  249.   {
  250.     public string Id;
  251.     public string Name;
  252.     public string Type;
  253.     public ConsolePowerState PowerState;
  254.     public bool FailedOutOfHomeRequirements;
  255.     public bool WirelessConnection;
  256.   }
  257.  
  258.   public struct GamepadAnalogState
  259.   {
  260.     public float LeftStickX;
  261.     public float LeftStickY;
  262.     public float RightStickX;
  263.     public float RightStickY;
  264.     public float DirectionalPadX;
  265.     public float DirectionalPadY;
  266.     public float LeftTrigger;
  267.     public float RightTrigger;
  268.     public GamepadAnalogFlags ValidInputs;
  269.   }
  270.  
  271.   public struct NetworkTestResult
  272.   {
  273.     public RttTestResult Rtt;
  274.     public BandwidthTestResult Downstream;
  275.     public BandwidthTestResult Upstream;
  276.   }
  277.  
  278.   public struct Offering
  279.   {
  280.     public string Id;
  281.     public string Name;
  282.     public string DnsName;
  283.   }
  284.  
  285.   public struct RttTestResult
  286.   {
  287.     public double AverageMs;
  288.     public double MinMs;
  289.     public double MaxMs;
  290.   }
  291.  
  292.   public struct TitleInfo
  293.   {
  294.     public string Id;
  295.     public string Details;
  296.   }
  297.  
  298.   public struct TitleWaitTime
  299.   {
  300.     public uint EstimatedProvisioningTimeInSeconds;
  301.     public uint EstimatedAllocationTimeInSeconds;
  302.     public uint EstimatedTotalWaitTimeInSeconds;
  303.   }
  304.  
  305.   public struct TouchBundleMetadataDetails
  306.   {
  307.     public string Version;
  308.     public string VersionName;
  309.   }
  310.  
  311.   public struct TouchState
  312.   {
  313.     public TouchType Type;
  314.     public uint PointerId;
  315.     public float X;
  316.     public float Y;
  317.     public uint Pressure;
  318.     public uint Orientation;
  319.     public float Diameter;
  320.   }
  321.  
  322.   public struct UserToken
  323.   {
  324.     public string Token;
  325.     public string Data;
  326.   }
  327.  
  328.   public struct VideoConfigurationOptions
  329.   {
  330.     public uint HeightInPixels;
  331.     public uint WidthInPixels;
  332.     public ulong MaxStreamCaptureSizeInBytes;
  333.     public uint HeightInMillimeters;
  334.     public uint WidthInMillimeters;
  335.     public ExperimentalOrientation ExperimentalOrientation;
  336.   }
  337.  
  338.   internal interface IAudioConfiguration
  339.   {
  340.     AudioConfigurationOptions Options { get; }
  341.   }
  342.  
  343.   internal interface IAudioConfigurationFactory
  344.   {
  345.     AudioConfiguration CreateInstance(AudioConfigurationOptions options);
  346.   }
  347.  
  348.   internal interface IConsoleEnumerationResult
  349.   {
  350.     IVectorView<ConsoleInfo> Consoles { get; }
  351.  
  352.     ConsoleEnumerationState CurrentState { get; }
  353.  
  354.     uint TotalItems { get; }
  355.   }
  356.  
  357.   internal interface IConsoleEnumerationState
  358.   {
  359.   }
  360.  
  361.   internal interface IConsoleManager
  362.   {
  363.     IAsyncOperation<ConsoleEnumerationResult> EnumerateConsolesAsync(
  364.       uint itemsToReturn,
  365.       ConsoleEnumerationState state);
  366.   }
  367.  
  368.   internal interface IInputConfiguration
  369.   {
  370.     InputConfigurationOptions Options { get; }
  371.   }
  372.  
  373.   internal interface IInputConfigurationFactory
  374.   {
  375.     InputConfiguration CreateInstance(InputConfigurationOptions options);
  376.   }
  377.  
  378.   internal interface IInputConfigurationOptions
  379.   {
  380.     bool EnableGamepadInput { get; set; }
  381.  
  382.     bool EnableMouseInput { get; set; }
  383.  
  384.     bool EnableKeyboardInput { get; set; }
  385.  
  386.     bool EnableTouchInput { get; set; }
  387.  
  388.     bool EnableSensorInput { get; set; }
  389.  
  390.     IVectorView<int> IgnoredKeys { get; set; }
  391.   }
  392.  
  393.   internal interface IInputConfigurationOptionsFactory
  394.   {
  395.     InputConfigurationOptions CreateInstance(
  396.       bool enableGamepadInput,
  397.       bool enableMouseInput,
  398.       bool enableKeyboardInput,
  399.       bool enableTouchInput,
  400.       bool enableSensorInput,
  401.       IVectorView<int> ignoredKeys);
  402.   }
  403.  
  404.   public interface ILogHandler
  405.   {
  406.     void LogMessage(LogLevel level, ulong processId, ulong threadId, string message);
  407.   }
  408.  
  409.   internal interface INetworkTestProgressEventArgs
  410.   {
  411.     NetworkTestProgress GetProgress { get; }
  412.   }
  413.  
  414.   internal interface INetworkTestRunner
  415.   {
  416.     IAsyncOperation<NetworkTestResult> RunTestAsync(
  417.       bool userInitiated);
  418.  
  419.     event TypedEventHandler<NetworkTestRunner, NetworkTestProgressEventArgs> TestProgressUpdated;
  420.   }
  421.  
  422.   internal interface IPatchTouchControlStateEventArgs
  423.   {
  424.     string Patch { get; }
  425.   }
  426.  
  427.   internal interface IShowTouchControlLayoutEventArgs
  428.   {
  429.     string Layout { get; }
  430.  
  431.     string Patch { get; }
  432.   }
  433.  
  434.   internal interface IStreamClient
  435.   {
  436.     string GetStreamProtocolVersion();
  437.  
  438.     IAsyncOperation<User> LoginAsync(UserToken token, Offering offering);
  439.  
  440.     IAsyncOperation<IVectorView<Offering>> GetOfferingsForUser(
  441.       UserToken token);
  442.  
  443.     TitleManager GetTitleManagerForUser(User user);
  444.  
  445.     [DefaultOverload]
  446.     [Overload("CreateSessionRequestAsync")]
  447.     IAsyncOperation<StreamSessionRequest> CreateSessionRequestAsync(
  448.       User user,
  449.       StreamSessionConfiguration configuration,
  450.       TitleInfo titleInfo);
  451.  
  452.     ConsoleManager GetConsoleManagerForUser(User user);
  453.  
  454.     [Overload("CreateSessionRequestAsync2")]
  455.     IAsyncOperation<StreamSessionRequest> CreateSessionRequestAsync(
  456.       User user,
  457.       StreamSessionConfiguration configuration,
  458.       ConsoleInfo consoleInfo);
  459.  
  460.     StreamSession DirectConnect(
  461.       StreamSessionConfiguration configuration,
  462.       ISystemUiHandler systemUiHandler);
  463.  
  464.     IAsyncOperation<string> FetchTouchAdaptationBundleForUserAsync(
  465.       User user,
  466.       string takxId,
  467.       string destination);
  468.  
  469.     string GetCorrelationVector();
  470.  
  471.     bool IsGamepadSupported(int vendorId, int productId);
  472.  
  473.     NetworkTestRunner CreateNetworkTestRunner(User user);
  474.  
  475.     void SetLocale(string locale);
  476.  
  477.     void TraceEvent(string eventName, IMapView<string, string> properties);
  478.   }
  479.  
  480.   internal interface IStreamClientConfiguration
  481.   {
  482.     string ApplicationDataDirectory { get; set; }
  483.  
  484.     string Locale { get; set; }
  485.  
  486.     ILogHandler LogHandler { get; set; }
  487.  
  488.     HttpEnvironment HttpEnvironment { get; set; }
  489.   }
  490.  
  491.   internal interface IStreamClientFactory
  492.   {
  493.     StreamClient CreateInstance(StreamClientConfiguration configuration);
  494.   }
  495.  
  496.   internal interface IStreamClientStatics
  497.   {
  498.     void Log(LogLevel level, string message);
  499.   }
  500.  
  501.   internal interface IStreamingRegion
  502.   {
  503.     string FriendlyName { get; }
  504.  
  505.     string ToString();
  506.  
  507.     IVectorView<string> SystemUpdateGroups { get; }
  508.   }
  509.  
  510.   internal interface IStreamSession
  511.   {
  512.     IAsyncAction ConnectAsync(ulong renderTarget);
  513.  
  514.     IAsyncAction ConnectWithSwapChainPanelAsync(SwapChainPanel renderTarget);
  515.  
  516.     IAsyncOperation<bool> PauseAsync();
  517.  
  518.     IAsyncOperation<bool> ResumeAsync();
  519.  
  520.     IAsyncAction DisconnectAsync();
  521.  
  522.     IAsyncAction ShutdownAsync();
  523.  
  524.     event TypedEventHandler<StreamSession, StreamSessionDisconnectedEventArgs> Disconnected;
  525.  
  526.     event TypedEventHandler<StreamSession, StreamSessionQualityChangedEventArgs> QualityChanged;
  527.  
  528.     event TypedEventHandler<StreamSession, StreamSessionStatisticsChangedEventArgs> StatisticsChanged;
  529.  
  530.     event TypedEventHandler<StreamSession, StreamSessionIdleWarningEventArgs> IdleWarning;
  531.  
  532.     event TypedEventHandler<StreamSession, StreamSessionDisconnectWarningEventArgs> DisconnectWarning;
  533.  
  534.     event TypedEventHandler<StreamSession, StreamSessionGamepadDisconnectedEventArgs> GamepadDisconnected;
  535.  
  536.     event TypedEventHandler<StreamSession, StreamSessionTitleChangedEventArgs> TitleChanged;
  537.  
  538.     VirtualInputManager GetVirtualInputManager();
  539.  
  540.     IAsyncAction UpdateVideoConfigurationAsync(VideoConfiguration videoConfiguration);
  541.  
  542.     IAsyncAction UpdateAudioConfigurationAsync(AudioConfiguration audioConfiguration);
  543.  
  544.     IAsyncAction UpdateInputConfigurationAsync(InputConfiguration inputConfiguration);
  545.  
  546.     IAsyncAction UpdateTouchBundleMetadataAsync(TouchBundleMetadata metadata);
  547.  
  548.     IAsyncAction FlushLogFilesAsync();
  549.  
  550.     IAsyncAction FileABugAsync(string alias, string description);
  551.  
  552.     void ToggleDisplayPerformanceOverlay();
  553.  
  554.     string GetCorrelationVector();
  555.  
  556.     IAsyncAction AcceptGameInviteAsync(string titleId, string json);
  557.  
  558.     IAsyncAction ConnectWithMediaPlayerElementAsync(
  559.       UIElement renderTarget,
  560.       UIElement inputPanel);
  561.   }
  562.  
  563.   internal interface IStreamSessionConfiguration
  564.   {
  565.     string DirectIpAddress { get; set; }
  566.  
  567.     string AccessKey { get; set; }
  568.  
  569.     string SystemUpdateGroup { get; set; }
  570.  
  571.     bool EnableNarrator { get; set; }
  572.  
  573.     long TimezoneOffsetMinutes { get; set; }
  574.  
  575.     bool IceLocalOnly { get; set; }
  576.   }
  577.  
  578.   internal interface IStreamSessionConfigurationFactory
  579.   {
  580.     StreamSessionConfiguration CreateInstance(
  581.       AudioConfiguration audioConfiguration,
  582.       VideoConfiguration videoConfiguration,
  583.       InputConfiguration inputConfiguration);
  584.   }
  585.  
  586.   internal interface IStreamSessionDisconnectedEventArgs
  587.   {
  588.     StreamSessionDisconnectReason Reason { get; }
  589.  
  590.     HResult ErrorInfo { get; }
  591.  
  592.     bool IsRecoverable { get; }
  593.   }
  594.  
  595.   internal interface IStreamSessionDisconnectWarningEventArgs
  596.   {
  597.     uint SecondsUntilDisconnect { get; }
  598.   }
  599.  
  600.   internal interface IStreamSessionGamepadDisconnectedEventArgs
  601.   {
  602.   }
  603.  
  604.   internal interface IStreamSessionIdleWarningEventArgs
  605.   {
  606.     uint SecondsUntilDisconnect { get; }
  607.   }
  608.  
  609.   internal interface IStreamSessionQualityChangedEventArgs
  610.   {
  611.     StreamSessionQualityLevel QualityLevel { get; }
  612.   }
  613.  
  614.   internal interface IStreamSessionRequest
  615.   {
  616.     IAsyncOperation<StreamSession> CreateSessionAsync(
  617.       string transferToken,
  618.       ISystemUiHandler systemUiHandler);
  619.  
  620.     event TypedEventHandler<StreamSessionRequest, StreamSessionRequestStateChangedEventArgs> StateChanged;
  621.  
  622.     StreamSessionRequestState State { get; }
  623.  
  624.     TitleInfo TitleInfo { get; }
  625.   }
  626.  
  627.   internal interface IStreamSessionRequestStateChangedEventArgs
  628.   {
  629.     StreamSessionRequestState State { get; }
  630.   }
  631.  
  632.   internal interface IStreamSessionStatisticsChangedEventArgs
  633.   {
  634.     string GetStatisticsJson();
  635.   }
  636.  
  637.   internal interface IStreamSessionTitleChangedEventArgs
  638.   {
  639.     string GetTitleId();
  640.   }
  641.  
  642.   public interface ISystemUiHandler
  643.   {
  644.     void ShowUiAsync(
  645.       SystemUiType requestType,
  646.       string requestMessage,
  647.       AsyncStringCompletion resultCompletion);
  648.  
  649.     IVectorView<SystemUiType> HandledSystemUiTypes { get; }
  650.  
  651.     void CancelUi(SystemUiType requestType);
  652.   }
  653.  
  654.   internal interface ITitleEnumerationResult
  655.   {
  656.     IVectorView<TitleInfo> Titles { get; }
  657.  
  658.     TitleEnumerationState CurrentState { get; }
  659.  
  660.     uint TotalItems { get; }
  661.   }
  662.  
  663.   internal interface ITitleEnumerationState
  664.   {
  665.     string GetToken();
  666.   }
  667.  
  668.   internal interface ITitleEnumerationStateFactory
  669.   {
  670.     TitleEnumerationState CreateInstance(string token);
  671.   }
  672.  
  673.   internal interface ITitleManager
  674.   {
  675.     IAsyncOperation<TitleEnumerationResult> EnumerateTitlesAsync(
  676.       uint itemsToReturn,
  677.       TitleEnumerationState state);
  678.  
  679.     IAsyncOperation<TitleEnumerationResult> EnumerateMruTitlesAsync(
  680.       uint itemsToReturn,
  681.       TitleEnumerationState state);
  682.  
  683.     IAsyncOperation<IVectorView<ActiveTitleInfo>> GetActiveTitlesForUserAsync(
  684.       User user);
  685.  
  686.     IAsyncOperation<TitleWaitTime> GetTitleWaitTimeAsync(
  687.       User user,
  688.       string titleId);
  689.   }
  690.  
  691.   internal interface ITouchBundleMetadata
  692.   {
  693.     TouchBundleMetadataDetails Details { get; }
  694.   }
  695.  
  696.   internal interface ITouchBundleMetadataFactory
  697.   {
  698.     TouchBundleMetadata CreateInstance(TouchBundleMetadataDetails options);
  699.   }
  700.  
  701.   internal interface IUser
  702.   {
  703.     uint Id { get; }
  704.  
  705.     event TypedEventHandler<User, UserTokenInvalidatedEventArgs> TokenInvalidated;
  706.  
  707.     IAsyncAction UpdateTokenAsync(UserToken newToken);
  708.  
  709.     IVectorView<StreamingRegion> StreamingRegions { get; }
  710.  
  711.     void SetStreamingRegion(StreamingRegion region);
  712.  
  713.     IAsyncOperation<string> GetSettingsAsync();
  714.  
  715.     string Market { get; }
  716.   }
  717.  
  718.   internal interface IUserTokenInvalidatedEventArgs
  719.   {
  720.     HResult Reason { get; }
  721.   }
  722.  
  723.   internal interface IVideoConfiguration
  724.   {
  725.     VideoConfigurationOptions Options { get; }
  726.   }
  727.  
  728.   internal interface IVideoConfigurationFactory
  729.   {
  730.     VideoConfiguration CreateInstance(VideoConfigurationOptions options);
  731.   }
  732.  
  733.   internal interface IVirtualGamepad
  734.   {
  735.     void SendButtonState(ButtonState state, GamepadInput input);
  736.  
  737.     void SendAnalogState(GamepadAnalogState state);
  738.  
  739.     event TouchControlCallback PhysicalGamepadInput;
  740.  
  741.     event TouchControlCallback HideTouchControls;
  742.  
  743.     event TouchControlCallback ShowTouchControls;
  744.  
  745.     event TouchControlCallback ShowTitleDefaultTouchControlLayout;
  746.  
  747.     event PatchTouchControlStateCallback PatchTouchControlState;
  748.  
  749.     event ShowTouchControlLayoutCallback ShowTouchControlLayout;
  750.   }
  751.  
  752.   internal interface IVirtualInputManager
  753.   {
  754.     VirtualGamepad GetGamepad();
  755.  
  756.     VirtualTouchSurface GetTouchSurface();
  757.  
  758.     VirtualKeyboard GetKeyboard();
  759.  
  760.     VirtualMouse GetMouse();
  761.   }
  762.  
  763.   internal interface IVirtualKeyboard
  764.   {
  765.   }
  766.  
  767.   internal interface IVirtualMouse
  768.   {
  769.     void SendRelativeMouseEvent(int deltaX, int deltaY);
  770.   }
  771.  
  772.   internal interface IVirtualTouchSurface
  773.   {
  774.     void SendTouchSurfaceState(IVector<TouchState> states);
  775.  
  776.     void SendIsEnabled(bool isEnabled);
  777.   }
  778.  
  779.   public sealed class AudioConfiguration : IAudioConfiguration
  780.   {
  781.     public extern AudioConfiguration(AudioConfigurationOptions options);
  782.  
  783.     public extern AudioConfigurationOptions Options { get; }
  784.   }
  785.  
  786.   public sealed class ConsoleEnumerationResult : IConsoleEnumerationResult
  787.   {
  788.     public extern IVectorView<ConsoleInfo> Consoles { [MethodImpl] get; }
  789.  
  790.     public extern ConsoleEnumerationState CurrentState { [MethodImpl] get; }
  791.  
  792.     public extern uint TotalItems { [MethodImpl] get; }
  793.   }
  794.  
  795.   public sealed class ConsoleEnumerationState : IConsoleEnumerationState
  796.   {
  797.     [MethodImpl]
  798.     public extern ConsoleEnumerationState();
  799.   }
  800.  
  801.   public sealed class ConsoleManager : IConsoleManager
  802.   {
  803.     [MethodImpl]
  804.     public extern IAsyncOperation<ConsoleEnumerationResult> EnumerateConsolesAsync(
  805.       uint itemsToReturn,
  806.       ConsoleEnumerationState state);
  807.   }
  808.  
  809.   public sealed class InputConfiguration : IInputConfiguration
  810.   {
  811.     [MethodImpl]
  812.     public extern InputConfiguration(InputConfigurationOptions options);
  813.  
  814.     public extern InputConfigurationOptions Options { [MethodImpl] get; }
  815.   }
  816.  
  817.   public sealed class InputConfigurationOptions : IInputConfigurationOptions
  818.   {
  819.     [MethodImpl]
  820.     public extern InputConfigurationOptions(
  821.       bool enableGamepadInput,
  822.       bool enableMouseInput,
  823.       bool enableKeyboardInput,
  824.       bool enableTouchInput,
  825.       bool enableSensorInput,
  826.       IVectorView<int> ignoredKeys);
  827.  
  828.     public extern bool EnableGamepadInput { [MethodImpl] get; [MethodImpl] set; }
  829.  
  830.     public extern bool EnableMouseInput { [MethodImpl] get; [MethodImpl] set; }
  831.  
  832.     public extern bool EnableKeyboardInput { [MethodImpl] get; [MethodImpl] set; }
  833.  
  834.     public extern bool EnableTouchInput { [MethodImpl] get; [MethodImpl] set; }
  835.  
  836.     public extern bool EnableSensorInput { [MethodImpl] get; [MethodImpl] set; }
  837.  
  838.     public extern IVectorView<int> IgnoredKeys { [MethodImpl] get; [MethodImpl] set; }
  839.   }
  840.  
  841.   public sealed class NetworkTestProgressEventArgs : INetworkTestProgressEventArgs
  842.   {
  843.     public extern NetworkTestProgress GetProgress { [MethodImpl] get; }
  844.   }
  845.  
  846.   public sealed class NetworkTestRunner : INetworkTestRunner
  847.   {
  848.     [MethodImpl]
  849.     public extern IAsyncOperation<NetworkTestResult> RunTestAsync(
  850.       bool userInitiated);
  851.  
  852.     public extern event TypedEventHandler<NetworkTestRunner, NetworkTestProgressEventArgs> TestProgressUpdated;
  853.   }
  854.  
  855.   public sealed class StreamClient : IStreamClient
  856.   {
  857.     [MethodImpl]
  858.     public extern StreamClient(StreamClientConfiguration configuration);
  859.  
  860.     [MethodImpl]
  861.     public extern string GetStreamProtocolVersion();
  862.  
  863.     [MethodImpl]
  864.     public extern IAsyncOperation<User> LoginAsync(
  865.       UserToken token,
  866.       Offering offering);
  867.  
  868.     [MethodImpl]
  869.     public extern IAsyncOperation<IVectorView<Offering>> GetOfferingsForUser(
  870.       UserToken token);
  871.  
  872.     [MethodImpl]
  873.     public extern TitleManager GetTitleManagerForUser(User user);
  874.  
  875.     [Overload("CreateSessionRequestAsync")]
  876.     [DefaultOverload]
  877.     [MethodImpl]
  878.     public extern IAsyncOperation<StreamSessionRequest> CreateSessionRequestAsync(
  879.       User user,
  880.       StreamSessionConfiguration configuration,
  881.       TitleInfo titleInfo);
  882.  
  883.     [MethodImpl]
  884.     public extern ConsoleManager GetConsoleManagerForUser(User user);
  885.  
  886.     [Overload("CreateSessionRequestAsync2")]
  887.     [MethodImpl]
  888.     public extern IAsyncOperation<StreamSessionRequest> CreateSessionRequestAsync(
  889.       User user,
  890.       StreamSessionConfiguration configuration,
  891.       ConsoleInfo consoleInfo);
  892.  
  893.     [MethodImpl]
  894.     public extern StreamSession DirectConnect(
  895.       StreamSessionConfiguration configuration,
  896.       ISystemUiHandler systemUiHandler);
  897.  
  898.     [MethodImpl]
  899.     public extern IAsyncOperation<string> FetchTouchAdaptationBundleForUserAsync(
  900.       User user,
  901.       string takxId,
  902.       string destination);
  903.  
  904.     [MethodImpl]
  905.     public extern string GetCorrelationVector();
  906.  
  907.     [MethodImpl]
  908.     public extern bool IsGamepadSupported(int vendorId, int productId);
  909.  
  910.     [MethodImpl]
  911.     public extern NetworkTestRunner CreateNetworkTestRunner(User user);
  912.  
  913.     [MethodImpl]
  914.     public extern void SetLocale(string locale);
  915.  
  916.     [MethodImpl]
  917.     public extern void TraceEvent(string eventName, IMapView<string, string> properties);
  918.  
  919.     [MethodImpl]
  920.     public static extern void Log(LogLevel level, string message);
  921.   }
  922.  
  923.   public sealed class StreamClientConfiguration : IStreamClientConfiguration
  924.   {
  925.     [MethodImpl]
  926.     public extern StreamClientConfiguration();
  927.  
  928.     public extern string ApplicationDataDirectory { [MethodImpl] get; [MethodImpl] set; }
  929.  
  930.     public extern string Locale { [MethodImpl] get; [MethodImpl] set; }
  931.  
  932.     public extern ILogHandler LogHandler { [MethodImpl] get; [MethodImpl] set; }
  933.  
  934.     public extern HttpEnvironment HttpEnvironment { [MethodImpl] get; [MethodImpl] set; }
  935.   }
  936.  
  937.   public sealed class StreamingRegion : IStreamingRegion
  938.   {
  939.     public extern string FriendlyName { [MethodImpl] get; }
  940.  
  941.     [MethodImpl]
  942.     public new extern string ToString();
  943.  
  944.     public extern IVectorView<string> SystemUpdateGroups { [MethodImpl] get; }
  945.   }
  946.  
  947.   public sealed class StreamSession : IStreamSession
  948.   {
  949.     [MethodImpl]
  950.     public extern IAsyncAction ConnectAsync(ulong renderTarget);
  951.  
  952.     [MethodImpl]
  953.     public extern IAsyncAction ConnectWithSwapChainPanelAsync(
  954.       SwapChainPanel renderTarget);
  955.  
  956.     [MethodImpl]
  957.     public extern IAsyncOperation<bool> PauseAsync();
  958.  
  959.     [MethodImpl]
  960.     public extern IAsyncOperation<bool> ResumeAsync();
  961.  
  962.     [MethodImpl]
  963.     public extern IAsyncAction DisconnectAsync();
  964.  
  965.     [MethodImpl]
  966.     public extern IAsyncAction ShutdownAsync();
  967.  
  968.     public extern event TypedEventHandler<StreamSession, StreamSessionDisconnectedEventArgs> Disconnected;
  969.  
  970.     public extern event TypedEventHandler<StreamSession, StreamSessionQualityChangedEventArgs> QualityChanged;
  971.  
  972.     public extern event TypedEventHandler<StreamSession, StreamSessionStatisticsChangedEventArgs> StatisticsChanged;
  973.  
  974.     public extern event TypedEventHandler<StreamSession, StreamSessionIdleWarningEventArgs> IdleWarning;
  975.  
  976.     public extern event TypedEventHandler<StreamSession, StreamSessionDisconnectWarningEventArgs> DisconnectWarning;
  977.  
  978.     public extern event TypedEventHandler<StreamSession, StreamSessionGamepadDisconnectedEventArgs> GamepadDisconnected;
  979.  
  980.     public extern event TypedEventHandler<StreamSession, StreamSessionTitleChangedEventArgs> TitleChanged;
  981.  
  982.     [MethodImpl]
  983.     public extern VirtualInputManager GetVirtualInputManager();
  984.  
  985.     [MethodImpl]
  986.     public extern IAsyncAction UpdateVideoConfigurationAsync(
  987.       VideoConfiguration videoConfiguration);
  988.  
  989.     [MethodImpl]
  990.     public extern IAsyncAction UpdateAudioConfigurationAsync(
  991.       AudioConfiguration audioConfiguration);
  992.  
  993.     [MethodImpl]
  994.     public extern IAsyncAction UpdateInputConfigurationAsync(
  995.       InputConfiguration inputConfiguration);
  996.  
  997.     [MethodImpl]
  998.     public extern IAsyncAction UpdateTouchBundleMetadataAsync(
  999.       TouchBundleMetadata metadata);
  1000.  
  1001.     [MethodImpl]
  1002.     public extern IAsyncAction FlushLogFilesAsync();
  1003.  
  1004.     [MethodImpl]
  1005.     public extern IAsyncAction FileABugAsync(string alias, string description);
  1006.  
  1007.     [MethodImpl]
  1008.     public extern void ToggleDisplayPerformanceOverlay();
  1009.  
  1010.     [MethodImpl]
  1011.     public extern string GetCorrelationVector();
  1012.  
  1013.     [MethodImpl]
  1014.     public extern IAsyncAction AcceptGameInviteAsync(string titleId, string json);
  1015.  
  1016.     [MethodImpl]
  1017.     public extern IAsyncAction ConnectWithMediaPlayerElementAsync(
  1018.       UIElement renderTarget,
  1019.       UIElement inputPanel);
  1020.   }
  1021.  
  1022.   public sealed class StreamSessionConfiguration : IStreamSessionConfiguration
  1023.   {
  1024.     [MethodImpl]
  1025.     public extern StreamSessionConfiguration(
  1026.       AudioConfiguration audioConfiguration,
  1027.       VideoConfiguration videoConfiguration,
  1028.       InputConfiguration inputConfiguration);
  1029.  
  1030.     public extern string DirectIpAddress { [MethodImpl] get; [MethodImpl] set; }
  1031.  
  1032.     public extern string AccessKey { [MethodImpl] get; [MethodImpl] set; }
  1033.  
  1034.     public extern string SystemUpdateGroup { [MethodImpl] get; [MethodImpl] set; }
  1035.  
  1036.     public extern bool EnableNarrator { [MethodImpl] get; [MethodImpl] set; }
  1037.  
  1038.     public extern long TimezoneOffsetMinutes { [MethodImpl] get; [MethodImpl] set; }
  1039.  
  1040.     public extern bool IceLocalOnly { [MethodImpl] get; [MethodImpl] set; }
  1041.   }
  1042.  
  1043.   public sealed class StreamSessionDisconnectedEventArgs : IStreamSessionDisconnectedEventArgs
  1044.   {
  1045.     public extern StreamSessionDisconnectReason Reason { [MethodImpl] get; }
  1046.  
  1047.     public extern HResult ErrorInfo { [MethodImpl] get; }
  1048.  
  1049.     public extern bool IsRecoverable { [MethodImpl] get; }
  1050.   }
  1051.  
  1052.   public sealed class StreamSessionDisconnectWarningEventArgs : IStreamSessionDisconnectWarningEventArgs
  1053.   {
  1054.     public extern uint SecondsUntilDisconnect { [MethodImpl] get; }
  1055.   }
  1056.  
  1057.   public sealed class StreamSessionGamepadDisconnectedEventArgs : IStreamSessionGamepadDisconnectedEventArgs
  1058.   {
  1059.   }
  1060.  
  1061.   public sealed class StreamSessionIdleWarningEventArgs : IStreamSessionIdleWarningEventArgs
  1062.   {
  1063.     public extern uint SecondsUntilDisconnect { [MethodImpl] get; }
  1064.   }
  1065.  
  1066.   public sealed class StreamSessionQualityChangedEventArgs : IStreamSessionQualityChangedEventArgs
  1067.   {
  1068.     public extern StreamSessionQualityLevel QualityLevel { [MethodImpl] get; }
  1069.   }
  1070.  
  1071.   public sealed class StreamSessionRequest : IStreamSessionRequest
  1072.   {
  1073.     [MethodImpl]
  1074.     public extern IAsyncOperation<StreamSession> CreateSessionAsync(
  1075.       string transferToken,
  1076.       ISystemUiHandler systemUiHandler);
  1077.  
  1078.     public extern event TypedEventHandler<StreamSessionRequest, StreamSessionRequestStateChangedEventArgs> StateChanged;
  1079.  
  1080.     public extern StreamSessionRequestState State { [MethodImpl] get; }
  1081.  
  1082.     public extern TitleInfo TitleInfo { [MethodImpl] get; }
  1083.   }
  1084.  
  1085.   public sealed class StreamSessionRequestStateChangedEventArgs : IStreamSessionRequestStateChangedEventArgs
  1086.   {
  1087.     public extern StreamSessionRequestState State { [MethodImpl] get; }
  1088.   }
  1089.  
  1090.   public sealed class StreamSessionStatisticsChangedEventArgs : IStreamSessionStatisticsChangedEventArgs
  1091.   {
  1092.     [MethodImpl]
  1093.     public extern string GetStatisticsJson();
  1094.   }
  1095.  
  1096.   public sealed class StreamSessionTitleChangedEventArgs : IStreamSessionTitleChangedEventArgs
  1097.   {
  1098.     [MethodImpl]
  1099.     public extern string GetTitleId();
  1100.   }
  1101.  
  1102.   public sealed class TitleEnumerationResult : ITitleEnumerationResult
  1103.   {
  1104.     public extern IVectorView<TitleInfo> Titles { [MethodImpl] get; }
  1105.  
  1106.     public extern TitleEnumerationState CurrentState { [MethodImpl] get; }
  1107.  
  1108.     public extern uint TotalItems { [MethodImpl] get; }
  1109.   }
  1110.  
  1111.   public sealed class TitleEnumerationState : ITitleEnumerationState
  1112.   {
  1113.     [MethodImpl]
  1114.     public extern TitleEnumerationState(string token);
  1115.  
  1116.     [MethodImpl]
  1117.     public extern TitleEnumerationState();
  1118.  
  1119.     [MethodImpl]
  1120.     public extern string GetToken();
  1121.   }
  1122.  
  1123.   public sealed class TitleManager : ITitleManager
  1124.   {
  1125.     [MethodImpl]
  1126.     public extern IAsyncOperation<TitleEnumerationResult> EnumerateTitlesAsync(
  1127.       uint itemsToReturn,
  1128.       TitleEnumerationState state);
  1129.  
  1130.     [MethodImpl]
  1131.     public extern IAsyncOperation<TitleEnumerationResult> EnumerateMruTitlesAsync(
  1132.       uint itemsToReturn,
  1133.       TitleEnumerationState state);
  1134.  
  1135.     [MethodImpl]
  1136.     public extern IAsyncOperation<IVectorView<ActiveTitleInfo>> GetActiveTitlesForUserAsync(
  1137.       User user);
  1138.  
  1139.     [MethodImpl]
  1140.     public extern IAsyncOperation<TitleWaitTime> GetTitleWaitTimeAsync(
  1141.       User user,
  1142.       string titleId);
  1143.   }
  1144.  
  1145.   public sealed class TouchBundleMetadata : ITouchBundleMetadata
  1146.   {
  1147.     [MethodImpl]
  1148.     public extern TouchBundleMetadata(TouchBundleMetadataDetails options);
  1149.  
  1150.     public extern TouchBundleMetadataDetails Details { [MethodImpl] get; }
  1151.   }
  1152.  
  1153.   public sealed class User : IUser
  1154.   {
  1155.     public extern uint Id { [MethodImpl] get; }
  1156.  
  1157.     public extern event TypedEventHandler<User, UserTokenInvalidatedEventArgs> TokenInvalidated;
  1158.  
  1159.     [MethodImpl]
  1160.     public extern IAsyncAction UpdateTokenAsync(UserToken newToken);
  1161.  
  1162.     public extern IVectorView<StreamingRegion> StreamingRegions { [MethodImpl] get; }
  1163.  
  1164.     [MethodImpl]
  1165.     public extern void SetStreamingRegion(StreamingRegion region);
  1166.  
  1167.     [MethodImpl]
  1168.     public extern IAsyncOperation<string> GetSettingsAsync();
  1169.  
  1170.     public extern string Market { [MethodImpl] get; }
  1171.   }
  1172.  
  1173.   public sealed class VideoConfiguration : IVideoConfiguration
  1174.   {
  1175.     [MethodImpl]
  1176.     public extern VideoConfiguration(VideoConfigurationOptions options);
  1177.  
  1178.     public extern VideoConfigurationOptions Options { [MethodImpl] get; }
  1179.   }
  1180.  
  1181.   public sealed class VirtualGamepad : IVirtualGamepad
  1182.   {
  1183.     [MethodImpl]
  1184.     public extern void SendButtonState(ButtonState state, GamepadInput input);
  1185.  
  1186.     [MethodImpl]
  1187.     public extern void SendAnalogState(GamepadAnalogState state);
  1188.  
  1189.     public extern event TouchControlCallback PhysicalGamepadInput;
  1190.  
  1191.     public extern event TouchControlCallback HideTouchControls;
  1192.  
  1193.     public extern event TouchControlCallback ShowTouchControls;
  1194.  
  1195.     public extern event TouchControlCallback ShowTitleDefaultTouchControlLayout;
  1196.  
  1197.     public extern event PatchTouchControlStateCallback PatchTouchControlState;
  1198.  
  1199.     public extern event ShowTouchControlLayoutCallback ShowTouchControlLayout;
  1200.   }
  1201.  
  1202.   public sealed class VirtualInputManager : IVirtualInputManager
  1203.   {
  1204.     [MethodImpl]
  1205.     public extern VirtualGamepad GetGamepad();
  1206.  
  1207.     [MethodImpl]
  1208.     public extern VirtualTouchSurface GetTouchSurface();
  1209.  
  1210.     [MethodImpl]
  1211.     public extern VirtualKeyboard GetKeyboard();
  1212.  
  1213.     [MethodImpl]
  1214.     public extern VirtualMouse GetMouse();
  1215.   }
  1216.  
  1217.   public sealed class VirtualKeyboard : IVirtualKeyboard
  1218.   {
  1219.   }
  1220.  
  1221.   public sealed class VirtualMouse : IVirtualMouse
  1222.   {
  1223.     [MethodImpl]
  1224.     public extern void SendRelativeMouseEvent(int deltaX, int deltaY);
  1225.   }
  1226.  
  1227.   public sealed class VirtualTouchSurface : IVirtualTouchSurface
  1228.   {
  1229.     [MethodImpl]
  1230.     public extern void SendTouchSurfaceState(IVector<TouchState> states);
  1231.  
  1232.     [MethodImpl]
  1233.     public extern void SendIsEnabled(bool isEnabled);
  1234.   }
  1235. }

Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.

Syntax highlighting:

To highlight particular lines, prefix each line with {%HIGHLIGHT}




All content is user-submitted.
The administrators of this site (kpaste.net) are not responsible for their content.
Abuse reports should be emailed to us at