1
0
Форкнуть 0
This commit is contained in:
Wade Wegner 2011-12-16 12:02:03 -08:00
Коммит d21c86c1c4
43 изменённых файлов: 4747 добавлений и 0 удалений

34
.gitignore поставляемый Normal file
Просмотреть файл

@ -0,0 +1,34 @@
bin/
obj/
*.suo
#ignore thumbnails created by windows
Thumbs.db
#Ignore files build by Visual Studio
*.build.csdef
*.obj
*.exe
*.pdb
*.user
*.aps
*.pch
*.vspscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.cache
*.ilk
*.log
[Bb]in
[Dd]ebug*/
*.lib
*.sbr
*.resharper.user
obj/
[Rr]elease*/
_ReSharper*/
[Tt]est[Rr]esult*
App_Data/

Просмотреть файл

@ -0,0 +1,20 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AzureManagementWithKinect", "AzureManagementWithKinect\AzureManagementWithKinect.csproj", "{602539B8-D783-496C-81F9-66FB0A5F20C2}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{602539B8-D783-496C-81F9-66FB0A5F20C2}.Debug|x86.ActiveCfg = Debug|x86
{602539B8-D783-496C-81F9-66FB0A5F20C2}.Debug|x86.Build.0 = Debug|x86
{602539B8-D783-496C-81F9-66FB0A5F20C2}.Release|x86.ActiveCfg = Release|x86
{602539B8-D783-496C-81F9-66FB0A5F20C2}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Просмотреть файл

@ -0,0 +1,8 @@
<Application x:Class="AzureManagementWithKinect.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
</Application.Resources>
</Application>

Просмотреть файл

@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;
namespace AzureManagementWithKinect
{
/// <summary>
/// Interaction logic for App.xaml
/// </summary>
public partial class App : Application
{
}
}

Просмотреть файл

@ -0,0 +1,162 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{602539B8-D783-496C-81F9-66FB0A5F20C2}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>AzureManagementWithKinect</RootNamespace>
<AssemblyName>AzureManagementWithKinect</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>
</TargetFrameworkProfile>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Coding4Fun.Kinect.Wpf">
<HintPath>..\packages\Coding4Fun.Kinect.Wpf.1.1.0\lib\Coding4Fun.Kinect.Wpf.dll</HintPath>
</Reference>
<Reference Include="Kinect.Toolbox">
<HintPath>..\packages\KinectToolbox.1.1.0.2\lib\Kinect.Toolbox.dll</HintPath>
</Reference>
<Reference Include="Kinect.Toolbox.Voice">
<HintPath>..\packages\KinectToolbox.1.1.0.2\lib\Kinect.Toolbox.Voice.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Expression.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Coding4Fun.Kinect.Wpf.1.1.0\lib\Microsoft.Expression.Drawing.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Research.Kinect, Version=1.0.0.45, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL" />
<Reference Include="Microsoft.Json">
<HintPath>..\packages\JsonValue.0.5.0\lib\40\Microsoft.Json.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Net.Http, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\HttpClient.0.5.0\lib\40\Microsoft.Net.Http.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Net.Http.Formatting, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\HttpClient.0.5.0\lib\40\Microsoft.Net.Http.Formatting.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Server.Common">
<HintPath>..\packages\JsonValue.0.5.0\lib\40\Microsoft.Server.Common.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.ServiceModel.Activation" />
<Reference Include="System.ServiceModel.Web" />
<Reference Include="System.Xml" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Xaml">
<RequiredTargetFramework>4.0</RequiredTargetFramework>
</Reference>
<Reference Include="WindowsBase" />
<Reference Include="PresentationCore" />
<Reference Include="PresentationFramework" />
</ItemGroup>
<ItemGroup>
<ApplicationDefinition Include="App.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Compile Include="AzureManagementWrapper.cs" />
<Compile Include="ViewModel\DeploymentViewModel.cs" />
<Page Include="KinectColorViewer.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Compile Include="App.xaml.cs">
<DependentUpon>App.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
<Compile Include="Constants.cs" />
<Compile Include="InteropBitmapHelper.cs" />
<Compile Include="KinectColorViewer.xaml.cs">
<DependentUpon>KinectColorViewer.xaml</DependentUpon>
</Compile>
<Compile Include="MainWindow.xaml.cs">
<DependentUpon>MainWindow.xaml</DependentUpon>
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<Compile Include="Model\Deployment.cs" />
<Compile Include="Model\HostedService.cs" />
<Compile Include="Model\OperationTracking.cs" />
<Compile Include="Model\ServiceManagementError.cs" />
<Compile Include="Properties\AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
</EmbeddedResource>
<None Include="app.config" />
<None Include="packages.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<AppDesigner Include="Properties\" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\Hand_Basic.png">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Resource>
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\gears.png" />
</ItemGroup>
<ItemGroup />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

Просмотреть файл

@ -0,0 +1,203 @@
namespace AzureManagementWithKinect
{
using System;
using System.Globalization;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Net.Http.Formatting;
using System.Runtime.Serialization;
using System.Security.Cryptography.X509Certificates;
using System.Xml.Linq;
using AzureManagementWithKinect.Model;
public class AzureManagementWrapper
{
private HttpClient client;
public AzureManagementWrapper(string subscriptionId, X509Certificate2 managementCertificate, string versionHeader = Constants.VersionHeaderContent)
{
this.SubscriptionId = subscriptionId;
this.client = GetClient(subscriptionId, managementCertificate, versionHeader);
}
public string SubscriptionId { get; private set; }
public HostedServiceList GetHostedServices()
{
var response = this.client.Get("services/hostedservices");
return ReadResponseContent<HostedServiceList>(response);
}
public HostedService GetHostedService(string name)
{
var response = this.client.Get("services/hostedservices/" + name);
return ReadResponseContent<HostedService>(response);
}
public Deployment GetDeployment(string serviceName, string deploymentSlot, bool embedDetails = false)
{
var uri = string.Format("services/hostedservices/{0}/deploymentslots/{1}", serviceName, deploymentSlot);
if (embedDetails)
{
uri += "?embed-detail=TRUE";
}
var response = this.client.Get(uri);
return ReadResponseContent<Deployment>(response, false);
}
public string SwapDeployment(string serviceName)
{
var production = this.GetDeployment(serviceName, DeploymentSlotType.Production);
var staging = this.GetDeployment(serviceName, DeploymentSlotType.Staging);
if (staging == null || string.IsNullOrWhiteSpace(staging.Name)) return null;
var swapDeploymentInput = new SwapDeploymentInput
{
Production = (production == null || string.IsNullOrWhiteSpace(production.Name)) ? null : production.Name,
SourceDeployment = staging.Name
};
var formatter = new XmlMediaTypeFormatter();
formatter.SetSerializer<SwapDeploymentInput>(new DataContractSerializer(typeof(SwapDeploymentInput)));
using (var content = new ObjectContent<SwapDeploymentInput>(swapDeploymentInput, "application/xml", new[] { formatter }))
{
var requestUri = string.Format("services/hostedservices/{0}", serviceName);
var response = this.client.Post(requestUri, content);
if (!response.IsSuccessStatusCode)
{
var errorDetails = GetErrorDetails(response);
throw new InvalidOperationException(errorDetails.Message);
}
return response.Headers.GetValues(Constants.OperationTrackingIdHeader).FirstOrDefault();
}
}
public string UpdateRoleInstances(string serviceName, string deploymentSlot, string roleName, int instancesCount, string configuration = "")
{
if (string.IsNullOrWhiteSpace(configuration))
{
configuration = this.GetDeployment(serviceName, deploymentSlot).Configuration;
}
var configXml = XDocument.Parse(configuration);
var roleConfiguration = configXml.Root.Descendants(Constants.ServiceConfigurationNS + "Role").SingleOrDefault(r => r.Attribute("name").Value == roleName);
if (roleConfiguration != null)
{
roleConfiguration.Descendants(Constants.ServiceConfigurationNS + "Instances").First().Attribute("count").Value = instancesCount.ToString(CultureInfo.InvariantCulture);
}
else
{
throw new InvalidOperationException("The role does not exist");
}
return this.UpdateDeploymentConfiguration(serviceName, deploymentSlot, configXml.ToString());
}
public string UpdateDeploymentConfiguration(string serviceName, string deploymentSlot, string configuration, bool treatWarningsAsError = false, string mode = "Auto")
{
var deploymentStatus = new ChangeConfigurationInput
{
Configuration = configuration,
Mode = mode,
TreatWarningsAsError = treatWarningsAsError
};
var formatter = new XmlMediaTypeFormatter();
formatter.SetSerializer<ChangeConfigurationInput>(new DataContractSerializer(typeof(ChangeConfigurationInput)));
using (var content = new ObjectContent<ChangeConfigurationInput>(deploymentStatus, "application/xml", new[] { formatter }))
{
var requestUri = string.Format("services/hostedservices/{0}/deploymentslots/{1}/?comp=config", serviceName, deploymentSlot);
var response = this.client.Post(requestUri, content);
if (!response.IsSuccessStatusCode)
{
var errorDetails = GetErrorDetails(response);
throw new InvalidOperationException(errorDetails.Message);
}
return response.Headers.GetValues(Constants.OperationTrackingIdHeader).FirstOrDefault();
}
}
public string UpdateDeploymentStatus(string serviceName, string deploymentSlot, DeploymentStatus status)
{
var deploymentStatus = new UpdateDeploymentStatusInput
{
Status = status.ToString()
};
var formatter = new XmlMediaTypeFormatter();
formatter.SetSerializer<UpdateDeploymentStatusInput>(new DataContractSerializer(typeof(UpdateDeploymentStatusInput)));
using (var content = new ObjectContent<UpdateDeploymentStatusInput>(deploymentStatus, "application/xml", new[] { formatter }))
{
var requestUri = string.Format("services/hostedservices/{0}/deploymentslots/{1}/?comp=status", serviceName, deploymentSlot);
var response = this.client.Post(requestUri, content);
if (!response.IsSuccessStatusCode)
{
var errorDetails = GetErrorDetails(response);
throw new InvalidOperationException(errorDetails.Message);
}
return response.Headers.GetValues(Constants.OperationTrackingIdHeader).FirstOrDefault();
}
}
public Operation GetOperationStatus(string operationId)
{
var response = this.client.Get("operations/" + operationId);
return ReadResponseContent<Operation>(response);
}
private static ServiceManagementError GetErrorDetails(HttpResponseMessage response)
{
var formatter = new XmlMediaTypeFormatter();
formatter.SetSerializer<ServiceManagementError>(new DataContractSerializer(typeof(ServiceManagementError)));
var error = response.Content.ReadAsOrDefault<ServiceManagementError>(new[] { formatter });
return error ?? new ServiceManagementError { Code = response.StatusCode.ToString(), Message = response.ReasonPhrase };
}
private static T ReadResponseContent<T>(HttpResponseMessage response, bool throwErrorIfNotFound = true)
{
if (!response.IsSuccessStatusCode)
{
if (response.StatusCode == HttpStatusCode.NotFound && !throwErrorIfNotFound)
{
return default(T);
}
var errorDetails = GetErrorDetails(response);
throw new InvalidOperationException(errorDetails.Message);
}
var formatter = new XmlMediaTypeFormatter();
formatter.SetSerializer<T>(new DataContractSerializer(typeof(T)));
return response.Content.ReadAs<T>(new[] { formatter });
}
private static HttpClient GetClient(string subscriptionId, X509Certificate2 managementCertificate, string versionHeader)
{
var clientHandler = new WebRequestHandler();
clientHandler.ClientCertificates.Add(managementCertificate);
clientHandler.ClientCertificateOptions = ClientCertificateOption.Manual;
var client = new HttpClient(clientHandler);
client.BaseAddress = new Uri(string.Format("{0}/{1}/", Constants.ServiceManagementEndpoint, subscriptionId));
client.DefaultRequestHeaders.Add(Constants.VersionHeaderName, versionHeader);
return client;
}
}
}

Просмотреть файл

@ -0,0 +1,75 @@
namespace AzureManagementWithKinect
{
using System.Xml.Linq;
public enum DeploymentStatus
{
Running,
Suspended
}
public static class Constants
{
public const string ServiceManagementEndpoint = "https://management.core.windows.net";
public const string ServiceManagementNS = "http://schemas.microsoft.com/windowsazure";
public const string OperationTrackingIdHeader = "x-ms-request-id";
public const string VersionHeaderName = "x-ms-version";
public const string VersionHeaderContent = "2011-10-01";
public const string PrincipalHeader = "x-ms-principal-id";
public static XNamespace ServiceConfigurationNS
{
get { return "http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration"; }
}
}
public static class ServiceStatus
{
public const string ResolvingDns = "ResolvingDns";
public const string Creating = "Creating";
public const string Created = "Created";
}
public static class DeploymentState
{
public const string Running = "Running";
public const string Suspended = "Suspended";
public const string RunningTransitioning = "RunningTransitioning";
public const string SuspendedTransitioning = "SuspendedTransitioning";
public const string Starting = "Starting";
public const string Suspending = "Suspending";
public const string Deploying = "Deploying";
public const string Deleting = "Deleting";
}
public static class RoleInstanceStatus
{
public const string RoleStateUnknown = "RoleStateUnknown";
public const string CreatingVM = "CreatingVM";
public const string StartingVM = "StartingVM";
public const string CreatingRole = "CreatingRole";
public const string StartingRole = "StartingRole";
public const string ReadyRole = "ReadyRole";
public const string BusyRole = "BusyRole";
public const string StoppingRole = "StoppingRole";
public const string DeletingVM = "DeletingVM";
public const string StoppedVM = "StoppedVM";
public const string RestartingRole = "RestartingRole";
public const string CyclingRole = "CyclingRole";
public const string FailedStartingRole = "FailedStartingRole";
public const string UnresponsiveRole = "UnresponsiveRole";
}
public static class OperationState
{
public const string InProgress = "InProgress";
public const string Succeeded = "Succeeded";
public const string Failed = "Failed";
}
public static class DeploymentSlotType
{
public const string Staging = "Staging";
public const string Production = "Production";
}
}

Просмотреть файл

@ -0,0 +1,69 @@
using System;
using System.Runtime.InteropServices;
using System.Windows.Interop;
using System.Windows.Media;
namespace AzureManagementWithKinect
{
/// <summary>
/// InteropBitmapHelper is a helper class meant to ease the scenario of using an interopBitmap.
/// InteropBitmaps are a construct in WPF which allow update of the image bits in an efficient way.
/// </summary>
public class InteropBitmapHelper
{
#region ctors
public InteropBitmapHelper(int width, int height, byte[] imageBits)
: this(width, height, imageBits, PixelFormats.Bgr32)
{
}
public InteropBitmapHelper(int width, int height, byte[] imageBits, PixelFormat pixelFormat)
{
_Width = width;
_Height = height;
_PixelFormat = pixelFormat;
int stride = width * pixelFormat.BitsPerPixel / 8;
_ColorByteCount = (uint)(height * stride);
var colorFileMapping = CreateFileMapping(new IntPtr(-1), IntPtr.Zero, 0x04, 0, _ColorByteCount, null);
_ImageBits = MapViewOfFile(colorFileMapping, 0xF001F, 0, 0, _ColorByteCount);
Marshal.Copy(imageBits, 0, _ImageBits, (int)_ColorByteCount);
InteropBitmap = Imaging.CreateBitmapSourceFromMemorySection(colorFileMapping, width, height, pixelFormat, stride, 0) as InteropBitmap;
}
#endregion
#region public API
public void UpdateBits(byte[] imageBits)
{
Marshal.Copy(imageBits, 0, _ImageBits, (int)_ColorByteCount);
InteropBitmap.Invalidate();
}
public InteropBitmap InteropBitmap { get; private set; }
#endregion
#region private state
private int _Width;
private int _Height;
private PixelFormat _PixelFormat;
private IntPtr _ImageBits;
private uint _ColorByteCount;
#endregion
#region DllImports
[DllImport("kernel32.dll", SetLastError = true)]
static extern IntPtr CreateFileMapping(IntPtr hFile,
IntPtr lpFileMappingAttributes,
uint flProtect,
uint dwMaximumSizeHigh,
uint dwMaximumSizeLow,
string lpName);
[DllImport("kernel32.dll", SetLastError = true)]
static extern IntPtr MapViewOfFile(IntPtr hFileMappingObject,
uint dwDesiredAccess,
uint dwFileOffsetHigh,
uint dwFileOffsetLow,
uint dwNumberOfBytesToMap);
#endregion
}
}

Просмотреть файл

@ -0,0 +1,9 @@
<UserControl x:Class="AzureManagementWithKinect.KinectColorViewer"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Image Name="kinectColorImage" />
</UserControl>

Просмотреть файл

@ -0,0 +1,60 @@
namespace AzureManagementWithKinect
{
using System.Windows.Controls;
using Microsoft.Research.Kinect.Nui;
using KinectNui = Microsoft.Research.Kinect.Nui; //Microsoft.Runtime is conflicting with using Runtime without an expicit namespace. This happens because the namespace starts with "Microsoft."
public partial class KinectColorViewer : UserControl
{
private KinectNui.Runtime kinect;
private InteropBitmapHelper imageHelper;
public RuntimeOptions RuntimeOptions { get; set; }
public KinectColorViewer()
{
InitializeComponent();
}
public KinectNui.Runtime Kinect
{
get
{
return kinect;
}
set
{
if (kinect != null)
{
kinect.VideoFrameReady -= ColorImageReady;
}
kinect = value;
if (kinect != null && kinect.Status == KinectStatus.Connected)
{
kinect.VideoStream.Open(ImageStreamType.Video, 1, ImageResolution.Resolution640x480, ImageType.Color);
kinect.VideoFrameReady += ColorImageReady;
}
}
}
void ColorImageReady(object sender, ImageFrameReadyEventArgs e)
{
PlanarImage planarImage = e.ImageFrame.Image;
//An interopBitmap is a WPF construct that enables resetting the Bits of the image.
//This is more efficient than doing a BitmapSource.Create call every frame.
if (imageHelper == null)
{
imageHelper = new InteropBitmapHelper(planarImage.Width, planarImage.Height, planarImage.Bits);
kinectColorImage.Source = imageHelper.InteropBitmap;
}
else
{
imageHelper.UpdateBits(planarImage.Bits);
}
}
}
}

Просмотреть файл

@ -0,0 +1,186 @@
<Window x:Class="AzureManagementWithKinect.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:kt="clr-namespace:AzureManagementWithKinect"
xmlns:Controls="clr-namespace:Coding4Fun.Kinect.Wpf.Controls;assembly=Coding4Fun.Kinect.Wpf"
Title="Kinect Powered Windows Azure" WindowState="Maximized">
<Window.Resources>
<Style x:Key="DetailTextBlockKeyStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="White" />
<Setter Property="FontSize" Value="20" />
<Setter Property="Padding" Value="8,4" />
<Setter Property="Margin" Value="4" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontWeight" Value="DemiBold" />
</Style>
<Style x:Key="DetailTextBlockValueStyle" TargetType="TextBlock">
<Setter Property="Foreground" Value="White" />
<Setter Property="FontSize" Value="20" />
<Setter Property="Padding" Value="8,4" />
<Setter Property="Margin" Value="4" />
<Setter Property="FontFamily" Value="Segoe UI" />
</Style>
<Style x:Key="DetailButtonStyle" TargetType="Button">
<Setter Property="Margin" Value="10 30 10 0" />
<Setter Property="Background" Value="Orange" />
<Setter Property="Opacity" Value="0.55" />
<Setter Property="FontSize" Value="20" />
<Setter Property="HorizontalAlignment" Value="Center" />
<Setter Property="Width" Value="180" />
<Setter Property="Height" Value="90" />
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontWeight" Value="Bold" />
</Style>
<Style x:Key="TrackingTextBlockStyle" TargetType="TextBlock">
<Setter Property="FontSize" Value="18" />
<Setter Property="HorizontalAlignment" Value="Left" />
<Setter Property="VerticalAlignment" Value="Bottom" />
<Setter Property="FontFamily" Value="Segoe UI Semilight" />
<Setter Property="Opacity" Value="0.85" />
<Setter Property="Margin" Value="10 0 10 25" />
<Setter Property="Foreground" Value="White" />
<Setter Property="Visibility" Value="Hidden" />
<Setter Property="Background" Value="Red" />
<Setter Property="Padding" Value="5" />
</Style>
<Storyboard x:Key="LoadingStoryBoard" RepeatBehavior="Forever">
<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="ellipse" Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
<SplineDoubleKeyFrame KeyTime="00:00:02" Value="360"/>
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</Window.Resources>
<Grid>
<kt:KinectColorViewer x:Name="kinectColorViewer" x:FieldModifier="public" HorizontalAlignment="Stretch" />
<TextBlock Name ="Title" FontSize="36" Text="Kinect Powered Windows Azure"
HorizontalAlignment="Center" VerticalAlignment="Top"
FontFamily="Segoe UI" Opacity="0.85"
Margin="0 20 0 0" Background="White"
Padding="20 5 20 5" Height="65"/>
<ListView Name="MainView" Background="Transparent" >
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel Height="250" Width="200" Background="Orange" Margin="30 0 30 0" Opacity="0.55">
<Image Source="/Resources/gears.png" Width="130" HorizontalAlignment="Center" Margin="0 25 0 0" />
<TextBlock FontSize="20" Text="{Binding HostedServiceName}" HorizontalAlignment="Center" FontFamily="Segoe UI" Margin="0 25 0 0" TextTrimming="WordEllipsis" FontWeight="DemiBold" Padding="5 0 5 0"/>
<TextBlock FontSize="18" Text="{Binding RoleName}" HorizontalAlignment="Center" FontFamily="Segoe UI" Margin="0 5 0 0" TextTrimming="WordEllipsis" FontWeight="DemiBold" Padding="5 0 5 0"/>
<TextBlock FontSize="16" Text="{Binding Environment}" HorizontalAlignment="Center" FontFamily="Segoe UI" Margin="0 5 0 0" TextTrimming="WordEllipsis" FontWeight="DemiBold" Padding="5 0 5 0"/>
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal" ScrollViewer.CanContentScroll="True"></StackPanel>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Name="DetailView" Visibility="Collapsed">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="300"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="300"/>
</Grid.ColumnDefinitions>
<Grid Grid.Column="1" Height="500" Width="700" Background="red" Margin="0 100 0 0" Opacity="0.7">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.Column="0" Text="Role Name" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="0" Grid.Column="1" Text="{Binding Role.RoleName}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="1" Grid.Column="0" Text="OS Version" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="1" Grid.Column="1" Text="{Binding Role.OsVersion}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="2" Grid.Column="0" Text="Name" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="2" Grid.Column="1" Text="{Binding Deployment.Name}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="3" Grid.Column="0" Text="Label" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="3" Grid.Column="1" Text="{Binding Deployment.Label}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="4" Grid.Column="0" Text="Role Instance Count" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="4" Grid.Column="1" Text="{Binding RoleInstanceCount}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="5" Grid.Column="0" Text="Url" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="5" Grid.Column="1" Text="{Binding Deployment.Url}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="6" Grid.Column="0" Text="Environment" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="6" Grid.Column="1" Text="{Binding Deployment.DeploymentSlot}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="7" Grid.Column="0" Text="SDK Version" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="7" Grid.Column="1" Text="{Binding Deployment.SdkVersion}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
<TextBlock Grid.Row="8" Grid.Column="0" Text="Status" Style="{StaticResource DetailTextBlockKeyStyle}"></TextBlock>
<TextBlock Grid.Row="8" Grid.Column="1" Text="{Binding Deployment.Status}" Style="{StaticResource DetailTextBlockValueStyle}"></TextBlock>
</Grid>
<StackPanel Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Left">
<Button Name="ScaleUpButton" Content="Scale Up" Style="{StaticResource DetailButtonStyle}"></Button>
<Button Name="ScaleDownButton" Content="Scale Down" Style="{StaticResource DetailButtonStyle}"></Button>
<Button Name="SwapButton" Content="Swap VIP" Style="{StaticResource DetailButtonStyle}"></Button>
<Button Name="StopButton" Content="Stop Instance" Style="{StaticResource DetailButtonStyle}"></Button>
</StackPanel>
<StackPanel Grid.Column="0" VerticalAlignment="Center" HorizontalAlignment="Right">
<Button Name="RefreshButton" Grid.Column="0" Content="Refresh" Style="{StaticResource DetailButtonStyle}"/>
<Button Name="BackButton" Grid.Column="0" Content="&lt;&lt; Back" Style="{StaticResource DetailButtonStyle}"/>
</StackPanel>
</Grid>
<Canvas Background="Transparent" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Controls:HoverButton Margin="0" Padding="0" x:Name="kinectButton" ImageSize="64"
ImageSource="/Resources/Hand_Basic.png"
ActiveImageSource="/Resources/Hand_Basic.png"
TimeInterval="2000" Canvas.Left="0" Canvas.Top="0" Panel.ZIndex="1000" />
</Canvas>
<Grid Name="LoadingImage" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Visibility="Hidden" Background="White" Opacity="0.8">
<StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
<Ellipse x:Name="ellipse" StrokeThickness="15" RenderTransformOrigin="0.5,0.5" Width="90" Height="90">
<Ellipse.RenderTransform>
<TransformGroup>
<ScaleTransform/>
<SkewTransform/>
<RotateTransform/>
</TransformGroup>
</Ellipse.RenderTransform>
<Ellipse.Stroke>
<LinearGradientBrush EndPoint="0.445,0.997" StartPoint="0.555,0.003">
<GradientStop Color="White" Offset="0"/>
<GradientStop Color="Black" Offset="1"/>
</LinearGradientBrush>
</Ellipse.Stroke>
</Ellipse>
<TextBlock Name="LoadingText" Text="Loading..." FontSize="20" Foreground="Black" />
</StackPanel>
</Grid>
<TextBlock Name="TrackingText" Text="Tracking" Style="{StaticResource TrackingTextBlockStyle}"/>
</Grid>
</Window>

Просмотреть файл

@ -0,0 +1,509 @@
namespace AzureManagementWithKinect
{
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.IO;
using System.Linq;
using System.Security.Cryptography.X509Certificates;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Threading;
using System.Xml.Linq;
using AzureManagementWithKinect.Model;
using AzureManagementWithKinect.ViewModel;
using Coding4Fun.Kinect.Wpf;
using Coding4Fun.Kinect.Wpf.Controls;
using Kinect.Toolbox;
using Microsoft.Research.Kinect.Nui;
public partial class MainWindow : Window
{
private readonly SwipeGestureDetector swipeGestureRecognizer = new SwipeGestureDetector();
private dynamic selectedItem;
private ListViewItem selectedListItem;
private Button selectedButton;
private readonly Storyboard loading;
private static double _handLeft;
private static double _handTop;
private const double ButtonOpacity = 0.55;
private readonly AzureManagementWrapper service;
private Deployment selectedDeployment;
private const string ResumeInstanceText = "Resume Instance";
private const string SuspendInstanceText = "Suspend Instance";
private readonly BackgroundWorker backgroundWorker = new BackgroundWorker();
public MainWindow()
{
InitializeComponent();
this.Loaded += new RoutedEventHandler(MainWindow_Loaded);
this.kinectButton.Click += new RoutedEventHandler(kinectButton_Click);
var certificatePath = Path.Combine(Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location), ConfigurationManager.AppSettings["ManagementCertificateName"]);
var certificate = new X509Certificate2(certificatePath, ConfigurationManager.AppSettings["ManagementCertificatePassword"]);
var subscriptionId = ConfigurationManager.AppSettings["SubscriptionsIdentifier"];
this.service = new AzureManagementWrapper(subscriptionId, certificate);
this.loading = this.Resources["LoadingStoryBoard"] as Storyboard;
this.BeginStoryboard(loading);
backgroundWorker.DoWork += ((sender, args) =>
{
this.Dispatcher.BeginInvoke(DispatcherPriority.Normal,
new Action(delegate()
{
this.kinectButton.Visibility = Visibility.Hidden;
this.LoadingImage.Visibility = Visibility.Visible;
}));
((Action)args.Argument).Invoke();
});
backgroundWorker.RunWorkerCompleted += ((sender, args) => this.Dispatcher.BeginInvoke(DispatcherPriority.Normal,
new Action(delegate()
{
this.kinectButton.Visibility = Visibility.Visible;
this.LoadingImage.Visibility = Visibility.Hidden;
})));
Action loadHostedServices = () =>
{
var serviceNameFilter = ConfigurationManager.AppSettings["ServiceNameFilter"];
var slotFilter = ConfigurationManager.AppSettings["SlotFilter"].Split(';');
var services = string.IsNullOrWhiteSpace(serviceNameFilter) ?
service.GetHostedServices() :
service.GetHostedServices().Where(hs => hs.ServiceName.ToLowerInvariant().Contains(serviceNameFilter.ToLowerInvariant()));
services.ToList().ForEach(hs => slotFilter.ToList().ForEach(s => AddHostedServiceRoles(hs, s)));
};
backgroundWorker.RunWorkerAsync(loadHostedServices);
}
private void AddHostedServiceRoles(HostedService hostedService, string environment)
{
var deployment = service.GetDeployment(hostedService.ServiceName, environment, true);
if ((deployment != null) && !string.IsNullOrEmpty(deployment.Name))
{
foreach (var role in deployment.RoleList)
{
if (role == null) continue;
this.MainView.Dispatcher.BeginInvoke(DispatcherPriority.Normal,
new Action(
() =>
this.MainView.Items.Add(
new
{
HostedServiceName = hostedService.ServiceName,
Environment = deployment.DeploymentSlot,
RoleName = role.RoleName,
Role = role
})));
}
}
}
void kinectButton_Click(object sender, RoutedEventArgs e)
{
if (this.DetailView.Visibility == Visibility.Visible)
{
if (this.selectedButton.Equals(this.BackButton))
{
this.MainView.Visibility = Visibility.Visible;
this.DetailView.Visibility = Visibility.Collapsed;
}
else if (this.selectedButton.Equals(this.RefreshButton))
{
AsyncRefreshInstanceData();
}
else if (this.selectedButton.Equals(this.ScaleUpButton))
{
var role = this.selectedDeployment.RoleList.FirstOrDefault();
if (role != null)
{
int count = GetInstanceCountByRole(role.RoleName);
this.LoadingText.Text = "Scaling up";
UpdateInstaceCountOnRole(role.RoleName, ++count);
}
}
else if (this.selectedButton.Equals(this.ScaleDownButton))
{
var role = this.selectedDeployment.RoleList.FirstOrDefault();
if (role != null)
{
int count = GetInstanceCountByRole(role.RoleName);
if (count > 1)
{
this.LoadingText.Text = "Scaling down";
UpdateInstaceCountOnRole(role.RoleName, --count);
}
}
}
else if (this.selectedButton.Equals(this.SwapButton))
{
var role = this.selectedDeployment.RoleList.FirstOrDefault();
if (role != null)
{
this.LoadingText.Text = "Swaping instances";
Action action = () =>
{
service.SwapDeployment(this.selectedItem.HostedServiceName);
this.RefreshInstanceData();
};
this.backgroundWorker.RunWorkerAsync(action);
}
}
else if (this.selectedButton.Equals(this.StopButton))
{
if (this.selectedDeployment.Status.Equals(DeploymentState.Running))
service.UpdateDeploymentStatus(this.selectedItem.HostedServiceName, this.selectedDeployment.DeploymentSlot, DeploymentStatus.Suspended);
else
service.UpdateDeploymentStatus(this.selectedItem.HostedServiceName, this.selectedDeployment.DeploymentSlot, DeploymentStatus.Running);
RefreshInstanceData();
}
}
else
{
AsyncRefreshInstanceData();
this.MainView.Visibility = Visibility.Collapsed;
this.DetailView.Visibility = Visibility.Visible;
}
}
private void UpdateInstaceCountOnRole(string roleName, int count)
{
Action action = () =>
{
service.UpdateRoleInstances(this.selectedItem.HostedServiceName,
this.selectedDeployment.DeploymentSlot, roleName, count);
RefreshInstanceData();
};
this.backgroundWorker.RunWorkerAsync(action);
}
private int GetInstanceCountByRole(string roleName)
{
var configXml = XDocument.Parse(this.selectedDeployment.Configuration);
var roleConfiguration = configXml.Root.Descendants(Constants.ServiceConfigurationNS + "Role").SingleOrDefault(r => r.Attribute("name").Value == roleName);
if (roleConfiguration != null)
{
return Convert.ToInt32(roleConfiguration.Descendants(Constants.ServiceConfigurationNS + "Instances").First().Attribute("count").Value);
}
throw new InvalidOperationException("The role does not exist");
}
private void AsyncRefreshInstanceData()
{
this.backgroundWorker.RunWorkerAsync(this.RefreshInstanceData());
}
private Action RefreshInstanceData()
{
Action refreshInstance = () =>
{
this.LoadingText.Dispatcher.BeginInvoke(DispatcherPriority.Normal,
new Action(
delegate()
{
this.LoadingText.Text =
"Refreshing data...";
}));
this.selectedDeployment = service.GetDeployment(this.selectedItem.HostedServiceName, this.selectedItem.Environment, true);
this.Dispatcher.BeginInvoke(DispatcherPriority.Normal,
new Action(delegate()
{
this.DataContext = new RoleViewModel() { Deployment = this.selectedDeployment, Role = selectedItem.Role };
}));
this.StopButton.Dispatcher.BeginInvoke(DispatcherPriority.Normal,
new Action(delegate()
{
this.StopButton.Content = this.selectedDeployment.Status.Equals(DeploymentState.Running) ? SuspendInstanceText : ResumeInstanceText;
}));
};
refreshInstance.Invoke();
return refreshInstance;
}
void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
var kinect = Runtime.Kinects.FirstOrDefault();
InitializeKinect(kinect);
Runtime.Kinects.StatusChanged += Kinects_StatusChanged;
}
public static DependencyObject GetScrollViewer(DependencyObject o)
{
if (o is ScrollViewer)
{ return o; }
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(o); i++)
{
var child = VisualTreeHelper.GetChild(o, i);
var result = GetScrollViewer(child);
if (result == null)
{
continue;
}
return result;
}
return null;
}
private void InitializeKinect(Runtime kinect)
{
if (kinect != null)
{
kinect.Initialize(RuntimeOptions.UseColor | RuntimeOptions.UseDepthAndPlayerIndex |
RuntimeOptions.UseSkeletalTracking);
kinect.SkeletonFrameReady += kinectRuntime_SkeletonFrameReady;
kinect.SkeletonEngine.TransformSmooth = true;
var parameters = new TransformSmoothParameters
{
Smoothing = 1.0f,
Correction = 0.1f,
Prediction = 0.1f,
JitterRadius = 0.05f,
MaxDeviationRadius = 0.05f
};
this.swipeGestureRecognizer.OnGestureDetected += OnGestureDetected;
kinect.SkeletonEngine.SmoothParameters = parameters;
var foundViewer = this.kinectColorViewer;
if (foundViewer != null)
{
foundViewer.Kinect = kinect;
}
}
}
private void OnGestureDetected(string gesture)
{
if (this.DetailView.Visibility == Visibility.Visible) return;
var scrollViewer = GetScrollViewer(this.MainView) as ScrollViewer;
if (scrollViewer == null) return;
if (gesture == "SwipeToRight")
scrollViewer.ScrollToHorizontalOffset(scrollViewer.HorizontalOffset - 1);
if (gesture == "SwipeToLeft")
scrollViewer.ScrollToHorizontalOffset(scrollViewer.HorizontalOffset + 1);
return;
}
bool ProcessFrame(SkeletonFrame frame)
{
bool tracking = false;
foreach (var skeleton in frame.Skeletons)
{
if (skeleton == null) continue;
if (skeleton.TrackingState != SkeletonTrackingState.Tracked)
continue;
tracking = true;
JointsCollection joints = skeleton.Joints;
Joint rightHand = joints[JointID.HandRight];
Joint leftHand = joints[JointID.HandLeft];
var joinCursorHand = (rightHand.Position.Y > leftHand.Position.Y) ? rightHand : leftHand;
float posX = joinCursorHand.ScaleTo((int)SystemParameters.PrimaryScreenWidth, (int)SystemParameters.PrimaryScreenHeight).Position.X;
float posY = joinCursorHand.ScaleTo((int)SystemParameters.PrimaryScreenWidth, (int)SystemParameters.PrimaryScreenHeight).Position.Y;
var kinect = Runtime.Kinects.FirstOrDefault();
swipeGestureRecognizer.Add(joinCursorHand.Position, kinect.SkeletonEngine);
var scaledCursorJoint = new Joint
{
TrackingState = JointTrackingState.Tracked,
Position = new Microsoft.Research.Kinect.Nui.Vector
{
X = posX,
Y = posY,
Z = joinCursorHand.Position.Z
}
};
OnButtonLocationChanged(kinectButton, (int)scaledCursorJoint.Position.X, (int)scaledCursorJoint.Position.Y);
}
return tracking;
}
void kinectRuntime_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
{
this.TrackingText.Visibility = Visibility.Hidden;
if (e.SkeletonFrame.Skeletons.Count() == 0) return;
if (ProcessFrame(e.SkeletonFrame)) this.TrackingText.Visibility = Visibility.Visible;
}
private void OnButtonLocationChanged(HoverButton hand, int X, int Y)
{
if (IsButtonOverObject(hand)) hand.Hovering(); else hand.Release();
Canvas.SetLeft(hand, X - (hand.ActualWidth / 2));
Canvas.SetTop(hand, Y - (hand.ActualHeight / 2));
}
public bool IsButtonOverObject(FrameworkElement hand)
{
if (!Window.GetWindow(hand).IsActive || this.kinectButton.Visibility.Equals(Visibility.Hidden)) return false;
// get the location of the top left of the hand and then use it to find the middle of the hand
var handTopLeft = new Point(Canvas.GetTop(hand), Canvas.GetLeft(hand));
_handLeft = handTopLeft.X + (hand.ActualWidth / 2);
_handTop = handTopLeft.Y + (hand.ActualHeight / 2);
if (this.DetailView.Visibility == Visibility.Visible)
{
var buttons = GetListViewElements2<Button>(this.DetailView);
buttons.ToList().ForEach(i => i.Background = new SolidColorBrush(Colors.Orange) { Opacity = ButtonOpacity });
foreach (var target in buttons)
{
Point targetTopLeft = target.PointToScreen(new Point());
if (_handTop > targetTopLeft.X
&& _handTop < targetTopLeft.X + target.ActualWidth
&& _handLeft > targetTopLeft.Y
&& _handLeft < targetTopLeft.Y + target.ActualHeight)
{
target.Background = new SolidColorBrush(Colors.Orange);
target.Opacity = 1;
this.selectedButton = target;
return true;
}
}
}
else
{
var listviewItems = GetListViewElements2<ListViewItem>(this.MainView);
foreach (var target in listviewItems)
{
Point targetTopLeft = target.PointToScreen(new Point());
if (_handTop > targetTopLeft.X
&& _handTop < targetTopLeft.X + target.ActualWidth
&& _handLeft > targetTopLeft.Y
&& _handLeft < targetTopLeft.Y + target.ActualHeight)
{
this.selectedListItem = target;
this.selectedItem = this.selectedListItem.Content;
break;
}
}
var children = GetListViewElements<StackPanel>(this.MainView);
children.ToList().ForEach(i => i.Background = new SolidColorBrush(Colors.Orange) { Opacity = ButtonOpacity });
foreach (var target in children)
{
Point targetTopLeft = target.PointToScreen(new Point());
if (_handTop > targetTopLeft.X
&& _handTop < targetTopLeft.X + target.ActualWidth
&& _handLeft > targetTopLeft.Y
&& _handLeft < targetTopLeft.Y + target.ActualHeight)
{
target.Background = new SolidColorBrush(Colors.Orange);
target.Opacity = 1;
return true;
}
}
}
return false;
}
public List<T> GetListViewElements<T>(FrameworkElement parent) where T : FrameworkElement
{
List<T> elements = new List<T>();
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(parent); i++)
{
var child = VisualTreeHelper.GetChild(parent, i);
if ((child is T) && (((double)child.GetValue(ActualWidthProperty)) == 200))
{
elements.Add(child as T);
continue;
}
if (VisualTreeHelper.GetChildrenCount(child) > 0)
{
var children = GetListViewElements<T>(child as FrameworkElement);
elements.AddRange(children);
}
}
return elements;
}
public List<T> GetListViewElements2<T>(FrameworkElement parent) where T : FrameworkElement
{
List<T> elements = new List<T>();
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(parent); i++)
{
var child = VisualTreeHelper.GetChild(parent, i);
if (child is T)
{
elements.Add(child as T);
continue;
}
if (VisualTreeHelper.GetChildrenCount(child) > 0)
{
var children = GetListViewElements2<T>(child as FrameworkElement);
elements.AddRange(children);
}
}
return elements;
}
private void Kinects_StatusChanged(object sender, StatusChangedEventArgs e)
{
if (e.Status == KinectStatus.Connected)
{
InitializeKinect(e.KinectRuntime);
var foundViewer = this.kinectColorViewer;
if (foundViewer != null)
{
foundViewer.Kinect = e.KinectRuntime;
}
}
}
}
}

Просмотреть файл

@ -0,0 +1,279 @@
namespace AzureManagementWithKinect.Model
{
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Text;
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class Deployment : IExtensibleDataObject
{
private string label;
private string configuration;
[DataMember(Order = 1, EmitDefaultValue = false)]
public string Name { get; set; }
[DataMember(Order = 2, EmitDefaultValue = false)]
public string DeploymentSlot { get; set; }
[DataMember(Order = 3, EmitDefaultValue = false)]
public string PrivateID { get; set; }
/// <summary>
/// The class DeploymentStatus defines its possible values.
/// </summary>
[DataMember(Order = 4, EmitDefaultValue = false)]
public string Status { get; set; }
[DataMember(Order = 5, EmitDefaultValue = false)]
public string Label
{
get
{
return this.label;
}
set
{
this.label = Encoding.UTF8.GetString(Convert.FromBase64String(value));
}
}
[DataMember(Order = 6, EmitDefaultValue = false)]
public Uri Url { get; set; }
[DataMember(Order = 7, EmitDefaultValue = false)]
public string Configuration
{
get
{
return this.configuration;
}
set
{
this.configuration = Encoding.UTF8.GetString(Convert.FromBase64String(value));
}
}
[DataMember(Order = 8, EmitDefaultValue = false)]
public RoleInstanceList RoleInstanceList { get; set; }
[DataMember(Order = 10, EmitDefaultValue = false)]
public UpgradeStatus UpgradeStatus { get; set; }
[DataMember(Order = 11, EmitDefaultValue = false)]
public int UpgradeDomainCount { get; set; }
[DataMember(Order = 12, EmitDefaultValue = false)]
public RoleList RoleList { get; set; }
[DataMember(Order = 13)]
public string SdkVersion { get; set; }
[DataMember(Order = 14, EmitDefaultValue = false)]
public InputEndpointList InputEndpointList { get; set; }
[DataMember(Order = 15)]
public bool Locked { get; set; }
[DataMember(Order = 16)]
public bool RollbackAllowed { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[CollectionDataContract(Name = "RoleList", ItemName = "Role", Namespace = Constants.ServiceManagementNS)]
public class RoleList : List<Role>
{
public RoleList()
{
}
public RoleList(IEnumerable<Role> roles)
: base(roles)
{
}
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class Role : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string RoleName { get; set; }
[DataMember(Order = 2)]
public string OsVersion { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[CollectionDataContract(Name = "RoleInstanceList", ItemName = "RoleInstance", Namespace = Constants.ServiceManagementNS)]
public class RoleInstanceList : List<RoleInstance>
{
public RoleInstanceList()
{
}
public RoleInstanceList(IEnumerable<RoleInstance> roles)
: base(roles)
{
}
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class RoleInstance : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string RoleName { get; set; }
[DataMember(Order = 2)]
public string InstanceName { get; set; }
[DataMember(Order = 3)]
public string InstanceStatus { get; set; }
[DataMember(Order = 4)]
public int InstanceUpgradeDomain { get; set; }
[DataMember(Order = 5)]
public int InstanceFaultDomain { get; set; }
[DataMember(Order = 6)]
public string InstanceSize { get; set; }
[DataMember(Order = 7)]
public string InstanceStateDetails { get; set; }
[DataMember(Order = 8)]
public string InstanceErrorCode { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[CollectionDataContract(Name = "InputEndpointList", ItemName = "InputEndpoint", Namespace = Constants.ServiceManagementNS)]
public class InputEndpointList : List<InputEndpoint>
{
public InputEndpointList()
{
}
public InputEndpointList(IEnumerable<InputEndpoint> inputEndpoint)
: base(inputEndpoint)
{
}
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class InputEndpoint : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string RoleName { get; set; }
[DataMember(Order = 2)]
public string Vip { get; set; }
[DataMember(Order = 3)]
public int Port { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[DataContract(Name = "Swap", Namespace = Constants.ServiceManagementNS)]
public class SwapDeploymentInput : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string Production { get; set; }
[DataMember(Order = 2)]
public string SourceDeployment { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class UpgradeStatus : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string UpgradeType { get; set; }
[DataMember(Order = 2)]
public string CurrentUpgradeDomainState { get; set; }
[DataMember(Order = 3)]
public int CurrentUpgradeDomain { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class ConfigurationWarning : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string WarningCode { get; set; }
[DataMember(Order = 2)]
public string WarningMessage { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
public override string ToString()
{
return string.Format("WarningCode:{0} WarningMessage:{1}", this.WarningCode, this.WarningMessage);
}
}
[CollectionDataContract(Namespace = Constants.ServiceManagementNS)]
public class ConfigurationWarningsList : List<ConfigurationWarning>
{
public override string ToString()
{
var warnings = new StringBuilder(string.Format("ConfigurationWarnings({0}):\n", this.Count));
foreach (ConfigurationWarning warning in this)
{
warnings.Append(warning + "\n");
}
return warnings.ToString();
}
}
[DataContract(Name = "UpdateDeploymentStatus", Namespace = Constants.ServiceManagementNS)]
public class UpdateDeploymentStatusInput : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string Status { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[DataContract(Name = "ChangeConfiguration", Namespace = Constants.ServiceManagementNS)]
public class ChangeConfigurationInput : IExtensibleDataObject
{
private string configuration;
[DataMember(Order = 1)]
public string Configuration
{
get
{
return this.configuration;
}
set
{
this.configuration = Convert.ToBase64String(Encoding.UTF8.GetBytes(value));
}
}
[DataMember(Order = 2, EmitDefaultValue = false)]
public bool? TreatWarningsAsError { get; set; }
[DataMember(Order = 3)]
public string Mode { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
}

Просмотреть файл

@ -0,0 +1,66 @@
namespace AzureManagementWithKinect.Model
{
using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.Text;
[CollectionDataContract(Name = "HostedServices", ItemName = "HostedService", Namespace = Constants.ServiceManagementNS)]
public class HostedServiceList : List<HostedService>
{
public HostedServiceList()
{
}
public HostedServiceList(IEnumerable<HostedService> hostedServices)
: base(hostedServices)
{
}
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class HostedService : IExtensibleDataObject
{
[DataMember(Order = 1)]
public Uri Url { get; set; }
[DataMember(Order = 2, EmitDefaultValue = false)]
public string ServiceName { get; set; }
[DataMember(Order = 3, EmitDefaultValue = false)]
public HostedServiceProperties HostedServiceProperties { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class HostedServiceProperties : IExtensibleDataObject
{
private string label;
[DataMember(Order = 1)]
public string Description { get; set; }
[DataMember(Order = 2, EmitDefaultValue = false)]
public string AffinityGroup { get; set; }
[DataMember(Order = 3, EmitDefaultValue = false)]
public string Location { get; set; }
[DataMember(Order = 4)]
public string Label
{
get
{
return this.label;
}
set
{
this.label = Encoding.UTF8.GetString(Convert.FromBase64String(value));
}
}
public ExtensionDataObject ExtensionData { get; set; }
}
}

Просмотреть файл

@ -0,0 +1,25 @@
namespace AzureManagementWithKinect.Model
{
using System.Runtime.Serialization;
[DataContract(Namespace = Constants.ServiceManagementNS)]
public class Operation : IExtensibleDataObject
{
[DataMember(Name = "ID", Order = 1)]
public string OperationTrackingId { get; set; }
/// <summary>
/// The class OperationState defines its possible values.
/// </summary>
[DataMember(Order = 2)]
public string Status { get; set; }
[DataMember(Order = 3, EmitDefaultValue = false)]
public int HttpStatusCode { get; set; }
[DataMember(Order = 4, EmitDefaultValue = false)]
public ServiceManagementError Error { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
}

Просмотреть файл

@ -0,0 +1,38 @@
namespace AzureManagementWithKinect.Model
{
using System.Runtime.Serialization;
public static class ErrorCode
{
public const string MissingOrIncorrectVersionHeader = "MissingOrIncorrectVersionHeader";
public const string InvalidRequest = "InvalidRequest";
public const string InvalidXmlRequest = "InvalidXmlRequest";
public const string InvalidContentType = "InvalidContentType";
public const string MissingOrInvalidRequiredQueryParameter = "MissingOrInvalidRequiredQueryParameter";
public const string InvalidHttpVerb = "InvalidHttpVerb";
public const string InternalError = "InternalError";
public const string BadRequest = "BadRequest";
public const string AuthenticationFailed = "AuthenticationFailed";
public const string ResourceNotFound = "ResourceNotFound";
public const string SubscriptionDisabled = "SubscriptionDisabled";
public const string ServerBusy = "ServerBusy";
public const string TooManyRequests = "TooManyRequests";
public const string ConflictError = "ConflictError";
public const string ConfiguraitonError = "ConfigurationError";
}
[DataContract(Name = "Error", Namespace = Constants.ServiceManagementNS)]
public class ServiceManagementError : IExtensibleDataObject
{
[DataMember(Order = 1)]
public string Code { get; set; }
[DataMember(Order = 2)]
public string Message { get; set; }
[DataMember(Order = 3, EmitDefaultValue = false)]
public ConfigurationWarningsList ConfigurationWarnings { get; set; }
public ExtensionDataObject ExtensionData { get; set; }
}
}

Просмотреть файл

@ -0,0 +1,55 @@
using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Windows;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("AzureManagementWithKinect")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("Microsoft")]
[assembly: AssemblyProduct("AzureManagementWithKinect")]
[assembly: AssemblyCopyright("Copyright © Microsoft 2011")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
//In order to begin building localizable applications, set
//<UICulture>CultureYouAreCodingWith</UICulture> in your .csproj file
//inside a <PropertyGroup>. For example, if you are using US english
//in your source files, set the <UICulture> to en-US. Then uncomment
//the NeutralResourceLanguage attribute below. Update the "en-US" in
//the line below to match the UICulture setting in the project file.
//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
[assembly: ThemeInfo(
ResourceDictionaryLocation.None, //where theme specific resource dictionaries are located
//(used if a resource is not found in the page,
// or application resource dictionaries)
ResourceDictionaryLocation.SourceAssembly //where the generic resource dictionary is located
//(used if a resource is not found in the page,
// app, or any theme specific resource dictionaries)
)]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

63
AzureManagementWithKinect/Properties/Resources.Designer.cs сгенерированный Normal file
Просмотреть файл

@ -0,0 +1,63 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.225
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace AzureManagementWithKinect.Properties {
using System;
/// <summary>
/// A strongly-typed resource class, for looking up localized strings, etc.
/// </summary>
// This class was auto-generated by the StronglyTypedResourceBuilder
// class via a tool like ResGen or Visual Studio.
// To add or remove a member, edit your .ResX file then rerun ResGen
// with the /str option, or rebuild your VS project.
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// Returns the cached ResourceManager instance used by this class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("AzureManagementWithKinect.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// Overrides the current thread's CurrentUICulture property for all
/// resource lookups using this strongly typed resource class.
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
}
}

Просмотреть файл

@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

26
AzureManagementWithKinect/Properties/Settings.Designer.cs сгенерированный Normal file
Просмотреть файл

@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.225
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace AzureManagementWithKinect.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
}
}

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>

Двоичные данные
AzureManagementWithKinect/Resources/Hand_Basic.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 1.3 KiB

Двоичные данные
AzureManagementWithKinect/Resources/gears.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 6.4 KiB

Просмотреть файл

@ -0,0 +1,244 @@
<StyleCopSettings Version="105">
<Analyzers>
<Analyzer AnalyzerId="StyleCop.CSharp.DocumentationRules">
<Rules>
<Rule Name="ElementsMustBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="PartialElementsMustBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="EnumerationItemsMustBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="DocumentationMustContainValidXml">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementDocumentationMustHaveSummary">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="PartialElementDocumentationMustHaveSummary">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementDocumentationMustHaveSummaryText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="PartialElementDocumentationMustHaveSummaryText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementDocumentationMustNotHaveDefaultSummary">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementParametersMustBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementParameterDocumentationMustMatchElementParameters">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementParameterDocumentationMustDeclareParameterName">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementParameterDocumentationMustHaveText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementReturnValueMustBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementReturnValueDocumentationMustHaveText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="VoidReturnValueMustNotBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="GenericTypeParametersMustBeDocumented">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="GenericTypeParametersMustBeDocumentedPartialClass">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="GenericTypeParameterDocumentationMustMatchTypeParameters">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="GenericTypeParameterDocumentationMustDeclareParameterName">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="GenericTypeParameterDocumentationMustHaveText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="PropertySummaryDocumentationMustMatchAccessors">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="PropertySummaryDocumentationMustOmitSetAccessorWithRestrictedAccess">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementDocumentationMustNotBeCopiedAndPasted">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="SingleLineCommentsMustNotUseDocumentationStyleSlashes">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="DocumentationTextMustNotBeEmpty">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="DocumentationTextMustContainWhitespace">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="DocumentationMustMeetCharacterPercentage">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ConstructorSummaryDocumentationMustBeginWithStandardText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="DestructorSummaryDocumentationMustBeginWithStandardText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="DocumentationHeadersMustNotContainBlankLines">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="IncludedDocumentationXPathDoesNotExist">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="IncludeNodeDoesNotContainValidFileAndPath">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="InheritDocMustBeUsedWithInheritingClass">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileMustHaveHeader">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileHeaderMustShowCopyright">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileHeaderMustHaveCopyrightText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileHeaderMustContainFileName">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileHeaderFileNameDocumentationMustMatchFileName">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileHeaderMustHaveValidCompanyText">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="FileHeaderFileNameDocumentationMustMatchTypeName">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
</Rules>
<AnalyzerSettings />
</Analyzer>
<Analyzer AnalyzerId="StyleCop.CSharp.LayoutRules">
<Rules>
<Rule Name="CurlyBracketsForMultiLineStatementsMustNotShareLine">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="StatementMustNotBeOnSingleLine">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="ElementMustNotBeOnSingleLine">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="CurlyBracketsMustNotBeOmitted">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
<Rule Name="AllAccessorsMustBeMultiLineOrSingleLine">
<RuleSettings>
<BooleanProperty Name="Enabled">False</BooleanProperty>
</RuleSettings>
</Rule>
</Rules>
<AnalyzerSettings />
</Analyzer>
</Analyzers>
</StyleCopSettings>

Просмотреть файл

@ -0,0 +1,17 @@
namespace AzureManagementWithKinect.ViewModel
{
using Model;
using System.Linq;
public class RoleViewModel : Deployment
{
public Deployment Deployment { get; set; }
public Role Role { get; set; }
public int RoleInstanceCount
{
get { return this.Deployment.RoleInstanceList.Count(i => i.RoleName.Equals(this.Role.RoleName)); }
}
}
}

Просмотреть файл

@ -0,0 +1,14 @@
<?xml version="1.0"?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<appSettings>
<add key="ManagementCertificateName" value="YOURCERTIFICATE.pfx" />
<add key="ManagementCertificatePassword" value="YOURPASSWORD" />
<add key="SubscriptionsIdentifier" value="YOURSUBSCRIPTION" />
<add key="ServiceNameFilter" value="" />
<add key="SlotFilter" value="production;staging" />
</appSettings>
</configuration>

Просмотреть файл

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Coding4Fun.Kinect.Wpf" version="1.1.0" />
<package id="KinectToolbox" version="1.1.0.2" />
<package id="HttpClient" version="0.5.0" />
<package id="JsonValue" version="0.5.0" />
</packages>

0
README.md Normal file
Просмотреть файл

Двоичные данные
packages/Coding4Fun.Kinect.Wpf.1.1.0/Coding4Fun.Kinect.Wpf.1.1.0.nupkg поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/Coding4Fun.Kinect.Wpf.1.1.0/lib/Coding4Fun.Kinect.Wpf.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/Coding4Fun.Kinect.Wpf.1.1.0/lib/Microsoft.Expression.Drawing.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/HttpClient.0.5.0/HttpClient.0.5.0.nupkg поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/HttpClient.0.5.0/lib/40/Microsoft.Net.Http.Formatting.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/HttpClient.0.5.0/lib/40/Microsoft.Net.Http.dll поставляемый Normal file

Двоичный файл не отображается.

512
packages/HttpClient.0.5.0/lib/40/Microsoft.Net.Http.xml поставляемый Normal file
Просмотреть файл

@ -0,0 +1,512 @@
<?xml version="1.0" encoding="utf-8"?>
<doc>
<assembly>
<name>System.Net.Http</name>
</assembly>
<members>
<member name="T:System.Net.Http.ByteArrayContent"></member>
<member name="M:System.Net.Http.ByteArrayContent.#ctor(System.Byte[])"></member>
<member name="M:System.Net.Http.ByteArrayContent.#ctor(System.Byte[],System.Int32,System.Int32)"></member>
<member name="M:System.Net.Http.ByteArrayContent.CreateContentReadStream"></member>
<member name="M:System.Net.Http.ByteArrayContent.SerializeToStream(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.ByteArrayContent.SerializeToStreamAsync(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.ByteArrayContent.TryComputeLength(System.Int64@)"></member>
<member name="T:System.Net.Http.DelegatingHandler"></member>
<member name="M:System.Net.Http.DelegatingHandler.#ctor(System.Net.Http.HttpMessageHandler)"></member>
<member name="M:System.Net.Http.DelegatingHandler.Dispose(System.Boolean)"></member>
<member name="M:System.Net.Http.DelegatingHandler.Send(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.DelegatingHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="T:System.Net.Http.FormUrlEncodedContent"></member>
<member name="M:System.Net.Http.FormUrlEncodedContent.#ctor(System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.String}})"></member>
<member name="M:System.Net.Http.FormUrlEncodedContent.CreateContentReadStream"></member>
<member name="M:System.Net.Http.FormUrlEncodedContent.SerializeToStream(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.FormUrlEncodedContent.SerializeToStreamAsync(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.FormUrlEncodedContent.TryComputeLength(System.Int64@)"></member>
<member name="T:System.Net.Http.HttpClient"></member>
<member name="M:System.Net.Http.HttpClient.#ctor"></member>
<member name="M:System.Net.Http.HttpClient.#ctor(System.Net.Http.HttpMessageHandler)"></member>
<member name="P:System.Net.Http.HttpClient.BaseAddress"></member>
<member name="M:System.Net.Http.HttpClient.CancelPendingRequests"></member>
<member name="P:System.Net.Http.HttpClient.DefaultRequestHeaders"></member>
<member name="M:System.Net.Http.HttpClient.Delete(System.String)"></member>
<member name="M:System.Net.Http.HttpClient.Delete(System.Uri)"></member>
<member name="M:System.Net.Http.HttpClient.DeleteAsync(System.String)"></member>
<member name="M:System.Net.Http.HttpClient.DeleteAsync(System.Uri)"></member>
<member name="M:System.Net.Http.HttpClient.Dispose"></member>
<member name="M:System.Net.Http.HttpClient.Dispose(System.Boolean)"></member>
<member name="M:System.Net.Http.HttpClient.Get(System.String)"></member>
<member name="M:System.Net.Http.HttpClient.Get(System.Uri)"></member>
<member name="M:System.Net.Http.HttpClient.GetAsync(System.String)"></member>
<member name="M:System.Net.Http.HttpClient.GetAsync(System.Uri)"></member>
<member name="P:System.Net.Http.HttpClient.MaxResponseContentBufferSize"></member>
<member name="M:System.Net.Http.HttpClient.Post(System.String,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.Post(System.Uri,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.PostAsync(System.String,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.PostAsync(System.Uri,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.Put(System.String,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.Put(System.Uri,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.PutAsync(System.String,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.PutAsync(System.Uri,System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.HttpClient.Send(System.Net.Http.HttpRequestMessage)"></member>
<member name="M:System.Net.Http.HttpClient.Send(System.Net.Http.HttpRequestMessage,System.Net.Http.HttpCompletionOption)"></member>
<member name="M:System.Net.Http.HttpClient.Send(System.Net.Http.HttpRequestMessage,System.Net.Http.HttpCompletionOption,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.HttpClient.Send(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.HttpClient.SendAsync(System.Net.Http.HttpRequestMessage)"></member>
<member name="M:System.Net.Http.HttpClient.SendAsync(System.Net.Http.HttpRequestMessage,System.Net.Http.HttpCompletionOption)"></member>
<member name="M:System.Net.Http.HttpClient.SendAsync(System.Net.Http.HttpRequestMessage,System.Net.Http.HttpCompletionOption,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.HttpClient.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="P:System.Net.Http.HttpClient.Timeout"></member>
<member name="T:System.Net.Http.HttpClientHandler"></member>
<member name="M:System.Net.Http.HttpClientHandler.#ctor"></member>
<member name="P:System.Net.Http.HttpClientHandler.AllowAutoRedirect"></member>
<member name="P:System.Net.Http.HttpClientHandler.AutomaticDecompression"></member>
<member name="P:System.Net.Http.HttpClientHandler.CookieContainer"></member>
<member name="P:System.Net.Http.HttpClientHandler.Credentials"></member>
<member name="M:System.Net.Http.HttpClientHandler.Dispose(System.Boolean)"></member>
<member name="P:System.Net.Http.HttpClientHandler.MaxAutomaticRedirections"></member>
<member name="P:System.Net.Http.HttpClientHandler.MaxRequestContentBufferSize"></member>
<member name="P:System.Net.Http.HttpClientHandler.PreAuthenticate"></member>
<member name="P:System.Net.Http.HttpClientHandler.Proxy"></member>
<member name="M:System.Net.Http.HttpClientHandler.Send(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.HttpClientHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="P:System.Net.Http.HttpClientHandler.SupportsAutomaticDecompression"></member>
<member name="P:System.Net.Http.HttpClientHandler.SupportsProxy"></member>
<member name="P:System.Net.Http.HttpClientHandler.SupportsRedirectConfiguration"></member>
<member name="P:System.Net.Http.HttpClientHandler.UseCookies"></member>
<member name="P:System.Net.Http.HttpClientHandler.UseDefaultCredentials"></member>
<member name="P:System.Net.Http.HttpClientHandler.UseProxy"></member>
<member name="T:System.Net.Http.HttpCompletionOption"></member>
<member name="F:System.Net.Http.HttpCompletionOption.ResponseContentRead">
<summary />
</member>
<member name="F:System.Net.Http.HttpCompletionOption.ResponseHeadersRead">
<summary />
</member>
<member name="T:System.Net.Http.HttpContent"></member>
<member name="M:System.Net.Http.HttpContent.#ctor"></member>
<member name="P:System.Net.Http.HttpContent.ContentReadStream"></member>
<member name="M:System.Net.Http.HttpContent.CopyTo(System.IO.Stream)"></member>
<member name="M:System.Net.Http.HttpContent.CopyTo(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.HttpContent.CopyToAsync(System.IO.Stream)"></member>
<member name="M:System.Net.Http.HttpContent.CopyToAsync(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.HttpContent.CreateContentReadStream"></member>
<member name="M:System.Net.Http.HttpContent.Dispose"></member>
<member name="M:System.Net.Http.HttpContent.Dispose(System.Boolean)"></member>
<member name="P:System.Net.Http.HttpContent.Headers"></member>
<member name="M:System.Net.Http.HttpContent.LoadIntoBuffer"></member>
<member name="M:System.Net.Http.HttpContent.LoadIntoBuffer(System.Int32)"></member>
<member name="M:System.Net.Http.HttpContent.LoadIntoBufferAsync"></member>
<member name="M:System.Net.Http.HttpContent.LoadIntoBufferAsync(System.Int32)"></member>
<member name="M:System.Net.Http.HttpContent.ReadAsByteArray"></member>
<member name="M:System.Net.Http.HttpContent.ReadAsString"></member>
<member name="M:System.Net.Http.HttpContent.SerializeToStream(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.HttpContent.SerializeToStreamAsync(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.HttpContent.TryComputeLength(System.Int64@)"></member>
<member name="T:System.Net.Http.HttpMessageHandler"></member>
<member name="M:System.Net.Http.HttpMessageHandler.#ctor"></member>
<member name="M:System.Net.Http.HttpMessageHandler.Dispose"></member>
<member name="M:System.Net.Http.HttpMessageHandler.Dispose(System.Boolean)"></member>
<member name="M:System.Net.Http.HttpMessageHandler.Send(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.HttpMessageHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="T:System.Net.Http.HttpMethod"></member>
<member name="M:System.Net.Http.HttpMethod.#ctor(System.String)"></member>
<member name="P:System.Net.Http.HttpMethod.Delete"></member>
<member name="M:System.Net.Http.HttpMethod.Equals(System.Net.Http.HttpMethod)"></member>
<member name="M:System.Net.Http.HttpMethod.Equals(System.Object)"></member>
<member name="P:System.Net.Http.HttpMethod.Get"></member>
<member name="M:System.Net.Http.HttpMethod.GetHashCode"></member>
<member name="P:System.Net.Http.HttpMethod.Head"></member>
<member name="P:System.Net.Http.HttpMethod.Method"></member>
<member name="M:System.Net.Http.HttpMethod.op_Equality(System.Net.Http.HttpMethod,System.Net.Http.HttpMethod)"></member>
<member name="M:System.Net.Http.HttpMethod.op_Inequality(System.Net.Http.HttpMethod,System.Net.Http.HttpMethod)"></member>
<member name="P:System.Net.Http.HttpMethod.Options"></member>
<member name="P:System.Net.Http.HttpMethod.Post"></member>
<member name="P:System.Net.Http.HttpMethod.Put"></member>
<member name="M:System.Net.Http.HttpMethod.ToString"></member>
<member name="P:System.Net.Http.HttpMethod.Trace"></member>
<member name="T:System.Net.Http.HttpRequestException"></member>
<member name="M:System.Net.Http.HttpRequestException.#ctor"></member>
<member name="M:System.Net.Http.HttpRequestException.#ctor(System.String)"></member>
<member name="M:System.Net.Http.HttpRequestException.#ctor(System.String,System.Exception)"></member>
<member name="T:System.Net.Http.HttpRequestMessage"></member>
<member name="M:System.Net.Http.HttpRequestMessage.#ctor"></member>
<member name="M:System.Net.Http.HttpRequestMessage.#ctor(System.Net.Http.HttpMethod,System.String)"></member>
<member name="M:System.Net.Http.HttpRequestMessage.#ctor(System.Net.Http.HttpMethod,System.Uri)"></member>
<member name="P:System.Net.Http.HttpRequestMessage.Content"></member>
<member name="M:System.Net.Http.HttpRequestMessage.Dispose"></member>
<member name="M:System.Net.Http.HttpRequestMessage.Dispose(System.Boolean)"></member>
<member name="P:System.Net.Http.HttpRequestMessage.Headers"></member>
<member name="P:System.Net.Http.HttpRequestMessage.Method"></member>
<member name="P:System.Net.Http.HttpRequestMessage.Properties"></member>
<member name="P:System.Net.Http.HttpRequestMessage.RequestUri"></member>
<member name="M:System.Net.Http.HttpRequestMessage.ToString"></member>
<member name="P:System.Net.Http.HttpRequestMessage.Version"></member>
<member name="T:System.Net.Http.HttpResponseMessage"></member>
<member name="M:System.Net.Http.HttpResponseMessage.#ctor"></member>
<member name="M:System.Net.Http.HttpResponseMessage.#ctor(System.Net.HttpStatusCode)"></member>
<member name="P:System.Net.Http.HttpResponseMessage.Content"></member>
<member name="M:System.Net.Http.HttpResponseMessage.Dispose"></member>
<member name="M:System.Net.Http.HttpResponseMessage.Dispose(System.Boolean)"></member>
<member name="M:System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode"></member>
<member name="P:System.Net.Http.HttpResponseMessage.Headers"></member>
<member name="P:System.Net.Http.HttpResponseMessage.IsSuccessStatusCode"></member>
<member name="P:System.Net.Http.HttpResponseMessage.ReasonPhrase"></member>
<member name="P:System.Net.Http.HttpResponseMessage.RequestMessage"></member>
<member name="P:System.Net.Http.HttpResponseMessage.StatusCode"></member>
<member name="M:System.Net.Http.HttpResponseMessage.ToString"></member>
<member name="P:System.Net.Http.HttpResponseMessage.Version"></member>
<member name="T:System.Net.Http.MessageProcessingHandler"></member>
<member name="M:System.Net.Http.MessageProcessingHandler.#ctor(System.Net.Http.HttpMessageHandler)"></member>
<member name="M:System.Net.Http.MessageProcessingHandler.ProcessRequest(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.MessageProcessingHandler.ProcessResponse(System.Net.Http.HttpResponseMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.MessageProcessingHandler.Send(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="M:System.Net.Http.MessageProcessingHandler.SendAsync(System.Net.Http.HttpRequestMessage,System.Threading.CancellationToken)"></member>
<member name="T:System.Net.Http.MultipartContent"></member>
<member name="M:System.Net.Http.MultipartContent.#ctor"></member>
<member name="M:System.Net.Http.MultipartContent.#ctor(System.String)"></member>
<member name="M:System.Net.Http.MultipartContent.#ctor(System.String,System.String)"></member>
<member name="M:System.Net.Http.MultipartContent.Add(System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.MultipartContent.GetEnumerator"></member>
<member name="M:System.Net.Http.MultipartContent.SerializeToStream(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.MultipartContent.SerializeToStreamAsync(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.MultipartContent.System#Collections#IEnumerable#GetEnumerator"></member>
<member name="M:System.Net.Http.MultipartContent.TryComputeLength(System.Int64@)"></member>
<member name="T:System.Net.Http.MultipartFormDataContent"></member>
<member name="M:System.Net.Http.MultipartFormDataContent.#ctor"></member>
<member name="M:System.Net.Http.MultipartFormDataContent.#ctor(System.String)"></member>
<member name="M:System.Net.Http.MultipartFormDataContent.Add(System.Net.Http.HttpContent)"></member>
<member name="M:System.Net.Http.MultipartFormDataContent.Add(System.Net.Http.HttpContent,System.String)"></member>
<member name="M:System.Net.Http.MultipartFormDataContent.Add(System.Net.Http.HttpContent,System.String,System.String)"></member>
<member name="T:System.Net.Http.StreamContent"></member>
<member name="M:System.Net.Http.StreamContent.#ctor(System.IO.Stream)"></member>
<member name="M:System.Net.Http.StreamContent.#ctor(System.IO.Stream,System.Int32)"></member>
<member name="M:System.Net.Http.StreamContent.CreateContentReadStream"></member>
<member name="M:System.Net.Http.StreamContent.Dispose(System.Boolean)"></member>
<member name="M:System.Net.Http.StreamContent.SerializeToStream(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.StreamContent.SerializeToStreamAsync(System.IO.Stream,System.Net.TransportContext)"></member>
<member name="M:System.Net.Http.StreamContent.TryComputeLength(System.Int64@)"></member>
<member name="T:System.Net.Http.StringContent"></member>
<member name="M:System.Net.Http.StringContent.#ctor(System.String)"></member>
<member name="M:System.Net.Http.StringContent.#ctor(System.String,System.Text.Encoding)"></member>
<member name="M:System.Net.Http.StringContent.#ctor(System.String,System.Text.Encoding,System.String)"></member>
<member name="T:System.Net.Http.Headers.AuthenticationHeaderValue"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.#ctor(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.AuthenticationHeaderValue.Parameter"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.AuthenticationHeaderValue.Scheme"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.AuthenticationHeaderValue.TryParse(System.String,System.Net.Http.Headers.AuthenticationHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.CacheControlHeaderValue"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.#ctor"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.Equals(System.Object)"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.Extensions"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.MaxAge"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.MaxStale"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.MaxStaleLimit"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.MinFresh"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.MustRevalidate"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.NoCache"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.NoCacheHeaders"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.NoStore"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.NoTransform"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.OnlyIfCached"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.Private"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.PrivateHeaders"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.ProxyRevalidate"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.Public"></member>
<member name="P:System.Net.Http.Headers.CacheControlHeaderValue.SharedMaxAge"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.CacheControlHeaderValue.TryParse(System.String,System.Net.Http.Headers.CacheControlHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.ContentRangeHeaderValue"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.#ctor(System.Int64)"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.#ctor(System.Int64,System.Int64)"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.#ctor(System.Int64,System.Int64,System.Int64)"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.Equals(System.Object)"></member>
<member name="P:System.Net.Http.Headers.ContentRangeHeaderValue.From"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.ContentRangeHeaderValue.HasLength"></member>
<member name="P:System.Net.Http.Headers.ContentRangeHeaderValue.HasRange"></member>
<member name="P:System.Net.Http.Headers.ContentRangeHeaderValue.Length"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.System#ICloneable#Clone"></member>
<member name="P:System.Net.Http.Headers.ContentRangeHeaderValue.To"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.ContentRangeHeaderValue.TryParse(System.String,System.Net.Http.Headers.ContentRangeHeaderValue@)"></member>
<member name="P:System.Net.Http.Headers.ContentRangeHeaderValue.Unit"></member>
<member name="T:System.Net.Http.Headers.EntityTagHeaderValue"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.#ctor(System.String,System.Boolean)"></member>
<member name="P:System.Net.Http.Headers.EntityTagHeaderValue.Any"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.EntityTagHeaderValue.IsWeak"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.System#ICloneable#Clone"></member>
<member name="P:System.Net.Http.Headers.EntityTagHeaderValue.Tag"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.EntityTagHeaderValue.TryParse(System.String,System.Net.Http.Headers.EntityTagHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.HttpContentHeaders"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.Allow"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentEncoding"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentLanguage"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentLength"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentLocation"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentMD5"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentRange"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.ContentType"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.Expires"></member>
<member name="P:System.Net.Http.Headers.HttpContentHeaders.LastModified"></member>
<member name="T:System.Net.Http.Headers.HttpHeaders"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.#ctor"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.Add(System.String,System.Collections.Generic.IEnumerable{System.String})"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.Add(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.AddWithoutValidation(System.String,System.Collections.Generic.IEnumerable{System.String})"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.AddWithoutValidation(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.Clear"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.Contains(System.String)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.GetEnumerator"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.GetValues(System.String)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.Remove(System.String)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.System#Collections#IEnumerable#GetEnumerator"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.ToString"></member>
<member name="M:System.Net.Http.Headers.HttpHeaders.TryGetValues(System.String,System.Collections.Generic.IEnumerable{System.String}@)"></member>
<member name="T:System.Net.Http.Headers.HttpHeaderValueCollection`1">
<typeparam name="T"></typeparam>
</member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.Add(`0)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.Clear"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.Contains(`0)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.CopyTo(`0[],System.Int32)"></member>
<member name="P:System.Net.Http.Headers.HttpHeaderValueCollection`1.Count"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.GetEnumerator"></member>
<member name="P:System.Net.Http.Headers.HttpHeaderValueCollection`1.IsReadOnly"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.ParseAdd(System.String)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.Remove(`0)"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.System#Collections#IEnumerable#GetEnumerator"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.ToString"></member>
<member name="M:System.Net.Http.Headers.HttpHeaderValueCollection`1.TryParseAdd(System.String)"></member>
<member name="T:System.Net.Http.Headers.HttpRequestHeaders"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Accept"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.AcceptCharset"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.AcceptEncoding"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.AcceptLanguage"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Authorization"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.CacheControl"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Connection"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.ConnectionClose"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Date"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Expect"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.ExpectContinue"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.From"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Host"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.IfMatch"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.IfModifiedSince"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.IfNoneMatch"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.IfRange"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.IfUnmodifiedSince"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.MaxForwards"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Pragma"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.ProxyAuthorization"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Range"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Referrer"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.TE"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Trailer"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.TransferEncoding"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.TransferEncodingChunked"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Upgrade"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.UserAgent"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Via"></member>
<member name="P:System.Net.Http.Headers.HttpRequestHeaders.Warning"></member>
<member name="T:System.Net.Http.Headers.HttpResponseHeaders"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.AcceptRanges"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Age"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.CacheControl"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Connection"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.ConnectionClose"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Date"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.ETag"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Location"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Pragma"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.ProxyAuthenticate"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.RetryAfter"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Server"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Trailer"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.TransferEncoding"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.TransferEncodingChunked"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Upgrade"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Vary"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Via"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.Warning"></member>
<member name="P:System.Net.Http.Headers.HttpResponseHeaders.WwwAuthenticate"></member>
<member name="T:System.Net.Http.Headers.MediaTypeHeaderValue"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.#ctor(System.Net.Http.Headers.MediaTypeHeaderValue)"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.#ctor(System.String)"></member>
<member name="P:System.Net.Http.Headers.MediaTypeHeaderValue.CharSet"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.MediaTypeHeaderValue.MediaType"></member>
<member name="P:System.Net.Http.Headers.MediaTypeHeaderValue.Parameters"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.MediaTypeHeaderValue.TryParse(System.String,System.Net.Http.Headers.MediaTypeHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue"></member>
<member name="M:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.#ctor(System.String,System.Double)"></member>
<member name="M:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.Quality"></member>
<member name="M:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.MediaTypeWithQualityHeaderValue.TryParse(System.String,System.Net.Http.Headers.MediaTypeWithQualityHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.NameValueHeaderValue"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.#ctor(System.Net.Http.Headers.NameValueHeaderValue)"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.#ctor(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.NameValueHeaderValue.Name"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.NameValueHeaderValue.TryParse(System.String,System.Net.Http.Headers.NameValueHeaderValue@)"></member>
<member name="P:System.Net.Http.Headers.NameValueHeaderValue.Value"></member>
<member name="T:System.Net.Http.Headers.NameValueWithParametersHeaderValue"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.#ctor(System.Net.Http.Headers.NameValueWithParametersHeaderValue)"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.#ctor(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.NameValueWithParametersHeaderValue.Parameters"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.NameValueWithParametersHeaderValue.TryParse(System.String,System.Net.Http.Headers.NameValueWithParametersHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.ProductHeaderValue"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.#ctor(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.ProductHeaderValue.Name"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.ProductHeaderValue.TryParse(System.String,System.Net.Http.Headers.ProductHeaderValue@)"></member>
<member name="P:System.Net.Http.Headers.ProductHeaderValue.Version"></member>
<member name="T:System.Net.Http.Headers.ProductInfoHeaderValue"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.#ctor(System.Net.Http.Headers.ProductHeaderValue)"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.#ctor(System.String,System.String)"></member>
<member name="P:System.Net.Http.Headers.ProductInfoHeaderValue.Comment"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.ProductInfoHeaderValue.Product"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.ProductInfoHeaderValue.TryParse(System.String,System.Net.Http.Headers.ProductInfoHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.RangeConditionHeaderValue"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.#ctor(System.DateTimeOffset)"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.#ctor(System.Net.Http.Headers.EntityTagHeaderValue)"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.#ctor(System.String)"></member>
<member name="P:System.Net.Http.Headers.RangeConditionHeaderValue.Date"></member>
<member name="P:System.Net.Http.Headers.RangeConditionHeaderValue.EntityTag"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.RangeConditionHeaderValue.TryParse(System.String,System.Net.Http.Headers.RangeConditionHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.RangeHeaderValue"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.#ctor"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.#ctor(System.Nullable{System.Int64},System.Nullable{System.Int64})"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.RangeHeaderValue.Ranges"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.RangeHeaderValue.TryParse(System.String,System.Net.Http.Headers.RangeHeaderValue@)"></member>
<member name="P:System.Net.Http.Headers.RangeHeaderValue.Unit"></member>
<member name="T:System.Net.Http.Headers.RangeItemHeaderValue"></member>
<member name="M:System.Net.Http.Headers.RangeItemHeaderValue.#ctor(System.Nullable{System.Int64},System.Nullable{System.Int64})"></member>
<member name="M:System.Net.Http.Headers.RangeItemHeaderValue.Equals(System.Object)"></member>
<member name="P:System.Net.Http.Headers.RangeItemHeaderValue.From"></member>
<member name="M:System.Net.Http.Headers.RangeItemHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.RangeItemHeaderValue.System#ICloneable#Clone"></member>
<member name="P:System.Net.Http.Headers.RangeItemHeaderValue.To"></member>
<member name="M:System.Net.Http.Headers.RangeItemHeaderValue.ToString"></member>
<member name="T:System.Net.Http.Headers.RetryConditionHeaderValue"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.#ctor(System.DateTimeOffset)"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.#ctor(System.TimeSpan)"></member>
<member name="P:System.Net.Http.Headers.RetryConditionHeaderValue.Date"></member>
<member name="P:System.Net.Http.Headers.RetryConditionHeaderValue.Delta"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.RetryConditionHeaderValue.TryParse(System.String,System.Net.Http.Headers.RetryConditionHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.StringWithQualityHeaderValue"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.#ctor(System.String,System.Double)"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.StringWithQualityHeaderValue.Quality"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.StringWithQualityHeaderValue.TryParse(System.String,System.Net.Http.Headers.StringWithQualityHeaderValue@)"></member>
<member name="P:System.Net.Http.Headers.StringWithQualityHeaderValue.Value"></member>
<member name="T:System.Net.Http.Headers.TransferCodingHeaderValue"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.#ctor(System.Net.Http.Headers.TransferCodingHeaderValue)"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.GetHashCode"></member>
<member name="P:System.Net.Http.Headers.TransferCodingHeaderValue.Parameters"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.TransferCodingHeaderValue.TryParse(System.String,System.Net.Http.Headers.TransferCodingHeaderValue@)"></member>
<member name="P:System.Net.Http.Headers.TransferCodingHeaderValue.Value"></member>
<member name="T:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue"></member>
<member name="M:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue.#ctor(System.String)"></member>
<member name="M:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue.#ctor(System.String,System.Double)"></member>
<member name="M:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue.Quality"></member>
<member name="M:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.TransferCodingWithQualityHeaderValue.TryParse(System.String,System.Net.Http.Headers.TransferCodingWithQualityHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.ViaHeaderValue"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.#ctor(System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.#ctor(System.String,System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.#ctor(System.String,System.String,System.String,System.String)"></member>
<member name="P:System.Net.Http.Headers.ViaHeaderValue.Comment"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.Parse(System.String)"></member>
<member name="P:System.Net.Http.Headers.ViaHeaderValue.ProtocolName"></member>
<member name="P:System.Net.Http.Headers.ViaHeaderValue.ProtocolVersion"></member>
<member name="P:System.Net.Http.Headers.ViaHeaderValue.ReceivedBy"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.System#ICloneable#Clone"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.ViaHeaderValue.TryParse(System.String,System.Net.Http.Headers.ViaHeaderValue@)"></member>
<member name="T:System.Net.Http.Headers.WarningHeaderValue"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.#ctor(System.Int32,System.String,System.String)"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.#ctor(System.Int32,System.String,System.String,System.DateTimeOffset)"></member>
<member name="P:System.Net.Http.Headers.WarningHeaderValue.Agent"></member>
<member name="P:System.Net.Http.Headers.WarningHeaderValue.Code"></member>
<member name="P:System.Net.Http.Headers.WarningHeaderValue.Date"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.Equals(System.Object)"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.GetHashCode"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.Parse(System.String)"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.System#ICloneable#Clone"></member>
<member name="P:System.Net.Http.Headers.WarningHeaderValue.Text"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.ToString"></member>
<member name="M:System.Net.Http.Headers.WarningHeaderValue.TryParse(System.String,System.Net.Http.Headers.WarningHeaderValue@)"></member>
</members>
</doc>

Двоичные данные
packages/JsonValue.0.5.0/JsonValue.0.5.0.nupkg поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/JsonValue.0.5.0/lib/40/Microsoft.Json.dll поставляемый Normal file

Двоичный файл не отображается.

1922
packages/JsonValue.0.5.0/lib/40/Microsoft.Json.xml поставляемый Normal file

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Двоичные данные
packages/JsonValue.0.5.0/lib/40/Microsoft.Server.Common.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/KinectToolbox.1.1.0.2/KinectToolbox.1.1.0.2.nupkg поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/KinectToolbox.1.1.0.2/lib/Kinect.Toolbox.Voice.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/KinectToolbox.1.1.0.2/lib/Kinect.Toolbox.dll поставляемый Normal file

Двоичный файл не отображается.

Просмотреть файл

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<repositories>
<repository path="..\AzureManagementWithKinect\packages.config" />
</repositories>