Joystik-Test/packages/SharpDX.2.6.3/Bin/DirectX11_2-Signed-net40/SharpDX.DirectComposition.xml

3988 lines
460 KiB
XML

<?xml version="1.0"?>
<doc>
<assembly>
<name>SharpDX.DirectComposition</name>
</assembly>
<members>
<member name="T:SharpDX.DirectComposition.Animation">
<summary>
<p>Adds a cubic polynomial segment to the animation function.</p>
</summary>
<remarks>
<p>A cubic segment transitions time along a cubic polynomial. For a given time input (t), the output value is given by the following equation. </p><p><em>x</em>(<em>t</em>) = <em>at</em>3 + <em>bt</em>2 + <em>ct</em> + <em>d</em></p><p>This method fails if any of the parameters are NaN, positive infinity, or negative infinity.</p><p>Because animation segments must be added in increasing order, this method fails if the <em>beginOffset</em> parameter is less than or equal to the <em>beginOffset</em> parameter of the previous segment, if any.</p><p>This animation segment remains in effect until the begin time of the next segment in the animation function. If the animation function contains no more segments, this segment remains in effect indefinitely. </p><p>If all coefficients except <em>constantCoefficient</em> are zero, the value of this segment remains constant over time, and the animation does not cause a recomposition for the duration of the segment.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation']/*"/>
<msdn-id>hh437385</msdn-id>
<unmanaged>IDCompositionAnimation</unmanaged>
<unmanaged-short>IDCompositionAnimation</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Animation.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Animation"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Animation.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Animation">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Animation"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Animation.Reset">
<summary>
<p>Resets the animation function so that it contains no segments.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method returns the animation function to a clean state, as when the animation was first constructed. After this method is called, the next segment to be added becomes the first segment of the animation function. Because it is the first segment, it can have any non-negative beginning offset.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::Reset']/*"/>
<msdn-id>hh437389</msdn-id>
<unmanaged>HRESULT IDCompositionAnimation::Reset()</unmanaged>
<unmanaged-short>IDCompositionAnimation::Reset</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Animation.SetAbsoluteBeginTime(System.Int64)">
<summary>
<p>Sets the absolute time at which the animation function starts.</p>
</summary>
<param name="beginTime"><dd> <p>The starting time for this animation.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>By default, an animation function starts when the first frame of the animation takes effect. For example, if an application creates a simple animation function with a single primitive at offset zero, associates the animation with some property, and then calls the <strong><see cref="M:SharpDX.DirectComposition.Device.Commit"/></strong> method, the first frame that includes the commit samples the animation at offset zero for the first primitive. This implies that the actual default start time of all animations varies depending on the time between when the application creates the animation and calls <strong>Commit</strong>, to the time it takes the composition engine to pick up the committed changes. The application can use the <strong>SetAbsoluteBeginTime</strong> method to exercise finer control over the starting time of an animation. </p><p>This method does not control when animations take effect; it only affects how animations are sampled after they start. If the application specifies the exact time of the next frame as the absolute begin time, the result is the same as not calling this method at all. If the specified begin time is different from the time of the next frame, the result is one of following: </p><ul> <li>If the specified time is later than the next frame time, the animation start is delayed until the specified begin time.</li> <li>If the specified time is earlier than the next frame time, the beginning of the animation is dropped and sampling starts into the animation function.
</li> </ul>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::SetAbsoluteBeginTime']/*"/>
<msdn-id>hh437390</msdn-id>
<unmanaged>HRESULT IDCompositionAnimation::SetAbsoluteBeginTime([In] LARGE_INTEGER beginTime)</unmanaged>
<unmanaged-short>IDCompositionAnimation::SetAbsoluteBeginTime</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Animation.AddCubic(System.Double,System.Single,System.Single,System.Single,System.Single)">
<summary>
<p>Adds a cubic polynomial segment to the animation function.</p>
</summary>
<param name="beginOffset"><dd> <p>The offset, in seconds, from the beginning of the animation function to the point when this segment should take effect.</p> </dd></param>
<param name="constantCoefficient"><dd> <p>The constant coefficient of the polynomial.</p> </dd></param>
<param name="linearCoefficient"><dd> <p>The linear coefficient of the polynomial.</p> </dd></param>
<param name="quadraticCoefficient"><dd> <p>The quadratic coefficient of the polynomial.</p> </dd></param>
<param name="cubicCoefficient"><dd> <p>The cubic coefficient of the polynomial.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A cubic segment transitions time along a cubic polynomial. For a given time input (t), the output value is given by the following equation. </p><p><em>x</em>(<em>t</em>) = <em>at</em>3 + <em>bt</em>2 + <em>ct</em> + <em>d</em></p><p>This method fails if any of the parameters are NaN, positive infinity, or negative infinity.</p><p>Because animation segments must be added in increasing order, this method fails if the <em>beginOffset</em> parameter is less than or equal to the <em>beginOffset</em> parameter of the previous segment, if any.</p><p>This animation segment remains in effect until the begin time of the next segment in the animation function. If the animation function contains no more segments, this segment remains in effect indefinitely. </p><p>If all coefficients except <em>constantCoefficient</em> are zero, the value of this segment remains constant over time, and the animation does not cause a recomposition for the duration of the segment.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::AddCubic']/*"/>
<msdn-id>hh437385</msdn-id>
<unmanaged>HRESULT IDCompositionAnimation::AddCubic([In] double beginOffset,[In] float constantCoefficient,[In] float linearCoefficient,[In] float quadraticCoefficient,[In] float cubicCoefficient)</unmanaged>
<unmanaged-short>IDCompositionAnimation::AddCubic</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Animation.AddSinusoidal(System.Double,System.Single,System.Single,System.Single,System.Single)">
<summary>
<p>Adds a sinusoidal segment to the animation function.</p>
</summary>
<param name="beginOffset"><dd> <p>The offset, in seconds, from the beginning of the animation function to the point when this segment should take effect. </p> </dd></param>
<param name="bias"><dd> <p>A constant that is added to the sinusoidal.</p> </dd></param>
<param name="amplitude"><dd> <p>A scale factor that is applied to the sinusoidal.</p> </dd></param>
<param name="frequency"><dd> <p>A scale factor that is applied to the time offset, in Hertz.</p> </dd></param>
<param name="phase"><dd> <p>A constant that is added to the time offset, in degrees.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if any of the parameters are NaN, positive infinity, or negative infinity, or if the <em>beginOffset</em> parameter is negative. </p><p>Because animation segments must be added in increasing order, this method fails if the <em>beginOffset</em> parameter is less than or equal to the <em>beginOffset</em> parameter of the previous segment, if any.</p><p>This animation segment remains in effect until the begin time of the next segment in the animation function. If the animation function contains no more segments, this segment remains in effect indefinitely. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::AddSinusoidal']/*"/>
<msdn-id>hh437387</msdn-id>
<unmanaged>HRESULT IDCompositionAnimation::AddSinusoidal([In] double beginOffset,[In] float bias,[In] float amplitude,[In] float frequency,[In] float phase)</unmanaged>
<unmanaged-short>IDCompositionAnimation::AddSinusoidal</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Animation.AddRepeat(System.Double,System.Double)">
<summary>
<p>Adds a repeat segment that causes the specified portion of an animation function to be repeated.</p>
</summary>
<param name="beginOffset"><dd> <p>The offset, in seconds, from the beginning of the animation to the point at which the repeat should begin.</p> </dd></param>
<param name="durationToRepeat"><dd> <p>The duration, in seconds, of a portion of the animation immediately preceding the begin time that is specified by <em>beginOffset</em>. This is the portion that will be repeated.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if any of the parameters are NaN, positive infinity, or negative infinity.</p><p>Because animation segments must be added in increasing order, this method fails if the <em>beginOffset</em> parameter is less than or equal to the <em>beginOffset</em> parameter of the previous segment. This method also fails if this is the first segment to be added to the animation function.</p><p>This animation segment remains in effect until the begin time of the next segment. If the animation function contains no more segments, this segment remains in effect indefinitely.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::AddRepeat']/*"/>
<msdn-id>hh437386</msdn-id>
<unmanaged>HRESULT IDCompositionAnimation::AddRepeat([In] double beginOffset,[In] double durationToRepeat)</unmanaged>
<unmanaged-short>IDCompositionAnimation::AddRepeat</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Animation.End(System.Double,System.Single)">
<summary>
<p>Adds an end segment that marks the end of an animation function. </p>
</summary>
<param name="endOffset"><dd> <p>The offset, in seconds, from the beginning of the animation function to the point when the function ends.</p> </dd></param>
<param name="endValue"><dd> <p>The final value of the animation.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When the specified offset is reached, the property or properties affected by this animation are set to the specified final value, and then the animation stops. If no end segment is added, the final segment of the animation function runs indefinitely. Calling this method is semantically identical to making the last segment of the animation function a cubic polynomial where the cubic, quadratic, and linear coefficients are all zeros, and the constant coefficient is the desired final value.</p><p>Because animation segments must be added in increasing order, this method fails if the <em>endOffset</em> parameter is less than or equal to the <em>beginOffset</em> parameter of the previous segment. This method also fails if this is the first segment to be added to the animation function.</p><p>After this method is called, all methods on this animation object fail except the <strong><see cref="M:SharpDX.DirectComposition.Animation.Reset"/></strong> method.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::End']/*"/>
<msdn-id>hh437388</msdn-id>
<unmanaged>HRESULT IDCompositionAnimation::End([In] double endOffset,[In] float endValue)</unmanaged>
<unmanaged-short>IDCompositionAnimation::End</unmanaged-short>
</member>
<member name="P:SharpDX.DirectComposition.Animation.AbsoluteBeginTime">
<summary>
<p>Sets the absolute time at which the animation function starts.</p>
</summary>
<remarks>
<p>By default, an animation function starts when the first frame of the animation takes effect. For example, if an application creates a simple animation function with a single primitive at offset zero, associates the animation with some property, and then calls the <strong><see cref="M:SharpDX.DirectComposition.Device.Commit"/></strong> method, the first frame that includes the commit samples the animation at offset zero for the first primitive. This implies that the actual default start time of all animations varies depending on the time between when the application creates the animation and calls <strong>Commit</strong>, to the time it takes the composition engine to pick up the committed changes. The application can use the <strong>SetAbsoluteBeginTime</strong> method to exercise finer control over the starting time of an animation. </p><p>This method does not control when animations take effect; it only affects how animations are sampled after they start. If the application specifies the exact time of the next frame as the absolute begin time, the result is the same as not calling this method at all. If the specified begin time is different from the time of the next frame, the result is one of following: </p><ul> <li>If the specified time is later than the next frame time, the animation start is delayed until the specified begin time.</li> <li>If the specified time is earlier than the next frame time, the beginning of the animation is dropped and sampling starts into the animation function.
</li> </ul>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionAnimation::SetAbsoluteBeginTime']/*"/>
<msdn-id>hh437390</msdn-id>
<unmanaged>SetAbsoluteBeginTime</unmanaged>
<unmanaged-short>SetAbsoluteBeginTime</unmanaged-short>
<unmanaged>HRESULT IDCompositionAnimation::SetAbsoluteBeginTime([In] LARGE_INTEGER beginTime)</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.DesktopDevice">
<summary>
<p>An application must use the <see cref="T:SharpDX.DirectComposition.DesktopDevice"/> interface in order to use DirectComposition in a Win32 desktop application. This interface allows the application to connect a visual tree to a window and to host layered child windows for composition</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDesktopDevice']/*"/>
<msdn-id>dn280350</msdn-id>
<unmanaged>IDCompositionDesktopDevice</unmanaged>
<unmanaged-short>IDCompositionDesktopDevice</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Device2">
<summary>
<p>Serves as a factory for all other Microsoft DirectComposition objects and provides methods to control transactional composition.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2']/*"/>
<msdn-id>dn280354</msdn-id>
<unmanaged>IDCompositionDevice2</unmanaged>
<unmanaged-short>IDCompositionDevice2</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.#ctor(SharpDX.ComObject)">
<summary>
Creates a new device object that can be used to create other Microsoft DirectComposition objects.
</summary>
<param name="renderingDevice">An optional reference to a DirectX device to be used to create DirectComposition surface
objects. Must be a reference to an object implementing the <strong><see cref="T:SharpDX.DXGI.Device"/></strong> or
<strong><see cref="!:SharpDX.Direct2D1.Device"/></strong> interfaces.</param>
</member>
<member name="M:SharpDX.DirectComposition.Device2.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Device2"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Device2.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Device2">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Device2"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Device2.Commit">
<summary>
<p>Commits all DirectComposition commands that are pending on this device.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Calls to DirectComposition methods are always batched and executed atomically as a single transaction. Calls take effect only when <strong><see cref="M:SharpDX.DirectComposition.Device2.Commit"/></strong> is called, at which time all pending method calls for a device are executed at once.</p><p>An application that uses multiple devices must call <strong>Commit</strong> for each device separately. However, because the composition engine processes the calls individually, the batch of commands might not take effect at the same time.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::Commit']/*"/>
<msdn-id>dn280355</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::Commit()</unmanaged>
<unmanaged-short>IDCompositionDevice2::Commit</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.WaitForCommitCompletion">
<summary>
<p>Waits for the composition engine to finish processing the previous call to the <strong><see cref="M:SharpDX.DirectComposition.Device2.Commit"/></strong> method. </p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::WaitForCommitCompletion']/*"/>
<msdn-id>dn280376</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::WaitForCommitCompletion()</unmanaged>
<unmanaged-short>IDCompositionDevice2::WaitForCommitCompletion</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.GetFrameStatistics(SharpDX.DirectComposition.FrameStatistics@)">
<summary>
<p>Retrieves information from the composition engine about composition times and the frame rate.</p>
</summary>
<param name="statistics"><dd> <p>A structure that receives composition times and frame rate information.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method retrieves timing information about the composition engine that an application can use to synchronize the rasterization of bitmaps with independent animations.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::GetFrameStatistics']/*"/>
<msdn-id>dn280375</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::GetFrameStatistics([Out] DCOMPOSITION_FRAME_STATISTICS* statistics)</unmanaged>
<unmanaged-short>IDCompositionDevice2::GetFrameStatistics</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateVisual(SharpDX.DirectComposition.Visual2)">
<summary>
<p>Creates a new visual object.</p>
</summary>
<param name="visual"><dd> <p>The new visual object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new visual object has a static value of zero for the OffsetX and OffsetY properties, and <c>null</c> for the Transform, Clip, and Content properties. Initially, the visual does not cause the contents of a window to change. The visual must be added as a child of another visual, or as the root of a composition target, before it can affect the appearance of a window.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateVisual']/*"/>
<msdn-id>dn280373</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateVisual([Out, Fast] IDCompositionVisual2** visual)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateVisual</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateSurfaceFactory(SharpDX.ComObject,SharpDX.DirectComposition.SurfaceFactory)">
<summary>
<p>Creates a Microsoft DirectComposition surface factory object, which can be used to create other DirectComposition surface or virtual surface objects</p>
</summary>
<param name="renderingDevice"><dd> <p>A reference to a DirectX device to be used to create DirectComposition surface objects. Must be a reference to an object implementing the <strong><see cref="T:SharpDX.DXGI.Device"/></strong> or <strong><see cref="!:SharpDX.Direct2D1.Device"/></strong> interfaces. This parameter must not be <c>null</c>.</p> </dd></param>
<param name="surfaceFactory"><dd> <p>The newly created surface factory object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A surface factory allows an application to simultaneously use more than one single DXGI or Direct2D device with DirectComposition. Each surface factory has a permanent association with one DXGI or Direct2D device, but a DirectComposition device may have any number of surface factories. </p><p>Each surface factory manages resources independently from the others. In particular, DirectComposition pools surface allocations to mitigate surface allocation and deallocation costs. This pool is done on a per-surface factory basis. </p><p>If the <strong><see cref="M:SharpDX.DirectComposition.DComp.CreateDevice2(SharpDX.ComObject,System.Guid,System.IntPtr@)"/></strong> function is called with a non-<c>null</c> <em>renderingDevice</em> parameter, the returned DirectComposition device object has an implicit surface factory under the covers associated with the given rendering device. This implicit surface factory is used to service the <strong><see cref="M:SharpDX.DirectComposition.Device.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)"/></strong>, <strong><see cref="M:SharpDX.DirectComposition.Device.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)"/></strong>, <strong><see cref="M:SharpDX.DirectComposition.Device2.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)"/></strong> and <strong><see cref="M:SharpDX.DirectComposition.Device2.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)"/></strong> methods. </p><p>A surface object remains alive as long as any of the surfaces or virtual surfaces that it created remain alive, either directly because the application holds a direct reference, or indirectly because one or more such surfaces are associated with one or more visual objects.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateSurfaceFactory']/*"/>
<msdn-id>dn280367</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateSurfaceFactory([In] IUnknown* renderingDevice,[Out, Fast] IDCompositionSurfaceFactory** surfaceFactory)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateSurfaceFactory</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)">
<summary>
<p>Creates an updateable surface object that can be associated with one or more visuals for composition.</p>
</summary>
<param name="width"><dd> <p>The width of the surface, in pixels. Constrained by the feature level of the rendering device that was passed in at the time the DirectComposition device was created. </p> </dd></param>
<param name="height"><dd> <p>The height of the surface, in pixels. Constrained by the feature level of the rendering device that was passed in at the time the DirectComposition device was created.</p> </dd></param>
<param name="pixelFormat"><dd> <p>The pixel format of the surface.</p> </dd></param>
<param name="alphaMode"><dd> <p>The format of the alpha channel, if an alpha channel is included in the pixel format. It can be one of the following values:</p> <table> <tr><th>Value</th><th>Meaning</th></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Unspecified"/></strong></dt> </dl> </td><td> <p>The alpha channel is not specified. This value has the same effect as <strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong>.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Premultiplied"/></strong></dt> </dl> </td><td> <p>The color channels contain values that are premultiplied with the alpha channel.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong></dt> </dl> </td><td> <p>The alpha channel should be ignored and the bitmap should be rendered opaquely.</p> </td></tr> </table> <p>?</p> </dd></param>
<param name="surface"><dd> <p>The newly created surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A Microsoft DirectComposition surface is a rectangular array of pixels that can be associated with a visual for composition. </p><p>A newly created surface object is in an uninitialized state. While it is uninitialized, the surface has no effect on the composition of the visual tree. It behaves exactly like a surface that has 100% transparent pixels. </p><p>To initialize the surface with pixel data, use the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> and <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong> methods. The first call to this method must cover the entire surface area to provide an initial value for every pixel. Subsequent calls may specify smaller sub-rectangles of the surface to update. </p><p>DirectComposition surfaces support the following pixel formats: </p><ul> <li><strong><see cref="F:SharpDX.DXGI.Format.B8G8R8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R8G8B8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R16G16B16A16_Float"/></strong></li> </ul>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateSurface']/*"/>
<msdn-id>dn280366</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateSurface([In] unsigned int width,[In] unsigned int height,[In] DXGI_FORMAT pixelFormat,[In] DXGI_ALPHA_MODE alphaMode,[Out, Fast] IDCompositionSurface** surface)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)">
<summary>
<p>Creates a sparsely populated surface that can be associated with one or more visuals for composition.</p>
</summary>
<param name="initialWidth"><dd> <p>The width of the surface, in pixels. The maximum width is 16,777,216 pixels.</p> </dd></param>
<param name="initialHeight"><dd> <p>The height of the surface, in pixels. The maximum height is 16,777,216 pixels.</p> </dd></param>
<param name="pixelFormat"><dd> <p>The pixel format of the surface.</p> </dd></param>
<param name="alphaMode"><dd> <p>The meaning of the alpha channel, if the pixel format contains an alpha channel. It can be one of the following values:</p> <table> <tr><th>Value</th><th>Meaning</th></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Unspecified"/></strong></dt> </dl> </td><td> <p>The alpha channel is not specified. This value has the same effect as <strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong>.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Premultiplied"/></strong></dt> </dl> </td><td> <p>The color channels contain values that are premultiplied with the alpha channel.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong></dt> </dl> </td><td> <p>The alpha channel should be ignored and the bitmap should be rendered opaquely.</p> </td></tr> </table> <p>?</p> </dd></param>
<param name="virtualSurface"><dd> <p>The newly created surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A Microsoft DirectComposition sparse surface is a logical object that behaves like a rectangular array of pixels that can be associated with a visual for composition. The surface is not necessarily backed by any physical video or system memory for every one of its pixels. The application can realize or virtualize parts of the logical surface at different times. </p><p>A newly created surface object is in an uninitialized state. While it is uninitialized, the surface has no effect on the composition of the visual tree. It behaves exactly like a surface that is initialized with 100% transparent pixels. </p><p>To initialize the surface with pixel data, use the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> and <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong> methods. This method not only provides pixels for the surface, but it also allocates actual storage space for those pixels. The memory allocation persists until the application returns some of the memory to the system. The application can free part or all of the allocated memory by calling the <strong><see cref="M:SharpDX.DirectComposition.VirtualSurface.Trim(SharpDX.Rectangle[],System.Int32)"/></strong> method.</p><p>DirectComposition surfaces support the following pixel formats:</p><ul> <li><strong><see cref="F:SharpDX.DXGI.Format.B8G8R8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R8G8B8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R16G16B16A16_Float"/></strong></li> </ul><p>This method fails if <em>initialWidth</em> or <em>initialHeight</em> exceeds 16,777,216 pixels. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateVirtualSurface']/*"/>
<msdn-id>dn280372</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateVirtualSurface([In] unsigned int initialWidth,[In] unsigned int initialHeight,[In] DXGI_FORMAT pixelFormat,[In] DXGI_ALPHA_MODE alphaMode,[Out, Fast] IDCompositionVirtualSurface** virtualSurface)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateVirtualSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateTranslateTransform(SharpDX.DirectComposition.TranslateTransform)">
<summary>
<p>Creates a 2D translation transform object.</p>
</summary>
<param name="translateTransform"><dd> <p>The new 2D translation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D translation transform object has a static value of zero for the OffsetX and OffsetY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateTranslateTransform']/*"/>
<msdn-id>dn280370</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateTranslateTransform([Out, Fast] IDCompositionTranslateTransform** translateTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateTranslateTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateScaleTransform(SharpDX.DirectComposition.ScaleTransform)">
<summary>
<p>Creates a 2D scale transform object.</p>
</summary>
<param name="scaleTransform"><dd> <p>The new 2D scale transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D scale transform object has a static value of zero for the ScaleX, ScaleY, CenterX, and CenterY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateScaleTransform']/*"/>
<msdn-id>dn280363</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateScaleTransform([Out, Fast] IDCompositionScaleTransform** scaleTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateScaleTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateRotateTransform(SharpDX.DirectComposition.RotateTransform)">
<summary>
<p>Creates a 2D rotation transform object.</p>
</summary>
<param name="rotateTransform"><dd> <p>The new rotation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D rotation transform object has a static value of zero for the Angle, CenterX, and CenterY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateRotateTransform']/*"/>
<msdn-id>dn280361</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateRotateTransform([Out, Fast] IDCompositionRotateTransform** rotateTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateRotateTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateSkewTransform(SharpDX.DirectComposition.SkewTransform)">
<summary>
<p>Creates a 2D skew transform object.</p>
</summary>
<param name="skewTransform"><dd> <p>The new 2D skew transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D skew transform object has a static value of zero for the AngleX, AngleY, CenterX, and CenterY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateSkewTransform']/*"/>
<msdn-id>dn280365</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateSkewTransform([Out, Fast] IDCompositionSkewTransform** skewTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateSkewTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateMatrixTransform(SharpDX.DirectComposition.MatrixTransform)">
<summary>
<p>Creates a 2D 3-by-2 matrix transform object.</p>
</summary>
<param name="matrixTransform"><dd> <p>The new matrix transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new matrix transform object has the identity matrix as its initial value. The identity matrix is the 3x2 matrix with ones on the main diagonal and zeros elsewhere, as shown in the following illustration. </p><p></p><p>When an identity transform is applied to an object, it does not change the position, shape, or size of the object. It is similar to the way that multiplying a number by one does not change the number. Any transform other than the identity transform will modify the position, shape, and/or size of objects.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateMatrixTransform']/*"/>
<msdn-id>dn280358</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateMatrixTransform([Out, Fast] IDCompositionMatrixTransform** matrixTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateMatrixTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateTransformGroup(SharpDX.DirectComposition.Transform[],System.Int32,SharpDX.DirectComposition.Transform)">
<summary>
<p>Creates a 2D transform group object that holds an array of 2D transform objects.</p>
</summary>
<param name="transforms"><dd> <p>An array of 2D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transformGroup"><dd> <p>The new transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateTransformGroup']/*"/>
<msdn-id>dn280369</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateTransformGroup([In, Buffer] IDCompositionTransform** transforms,[In] unsigned int elements,[Out, Fast] IDCompositionTransform** transformGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateTransformGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateTransformGroup(SharpDX.ComArray{SharpDX.DirectComposition.Transform},System.Int32,SharpDX.DirectComposition.Transform)">
<summary>
<p>Creates a 2D transform group object that holds an array of 2D transform objects.</p>
</summary>
<param name="transforms"><dd> <p>An array of 2D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transformGroup"><dd> <p>The new transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateTransformGroup']/*"/>
<msdn-id>dn280369</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateTransformGroup([In, Buffer] IDCompositionTransform** transforms,[In] unsigned int elements,[Out, Fast] IDCompositionTransform** transformGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateTransformGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateTranslateTransform3D(SharpDX.DirectComposition.TranslateTransform3D)">
<summary>
<p>Creates a 3D translation transform object.</p>
</summary>
<param name="translateTransform3D"><dd> <p>The new 3D translation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If this method succeeds, it returns <strong><see cref="F:SharpDX.Result.Ok"/></strong>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code.</p></returns>
<remarks>
<p>A newly created 3D translation transform has a static value of 0 for the OffsetX, OffsetY, and OffsetZ properties. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateTranslateTransform3D']/*"/>
<msdn-id>dn280371</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateTranslateTransform3D([Out, Fast] IDCompositionTranslateTransform3D** translateTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateTranslateTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateScaleTransform3D(SharpDX.DirectComposition.ScaleTransform3D)">
<summary>
<p>Creates a 3D scale transform object.</p>
</summary>
<param name="scaleTransform3D"><dd> <p>The new 3D scale transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 3D scale transform object has a static value of 1.0 for the ScaleX, ScaleY, and ScaleZ properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateScaleTransform3D']/*"/>
<msdn-id>dn280364</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateScaleTransform3D([Out, Fast] IDCompositionScaleTransform3D** scaleTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateScaleTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateRotateTransform3D(SharpDX.DirectComposition.RotateTransform3D)">
<summary>
<p>Creates a 3D rotation transform object.</p>
</summary>
<param name="rotateTransform3D"><dd> <p>The new 3D rotation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 3D rotation transform object has a default static value of zero for the Angle, CenterX, CenterY, CenterZ, AxisX, and AxisY properties, and a default static value of 1.0 for the AxisZ property.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateRotateTransform3D']/*"/>
<msdn-id>dn280362</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateRotateTransform3D([Out, Fast] IDCompositionRotateTransform3D** rotateTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateRotateTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateMatrixTransform3D(SharpDX.DirectComposition.MatrixTransform3D)">
<summary>
<p>Creates a 3D 4-by-4 matrix transform object.</p>
</summary>
<param name="matrixTransform3D"><dd> <p>The new 3D matrix transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The new 3D matrix transform has the identity matrix as its value. The identity matrix is the 4-by-4 matrix with ones on the main diagonal and zeros elsewhere, as shown in the following illustration. </p><p></p><p>When an identity transform is applied to an object, it does not change the position, shape, or size of the object. It is similar to the way that multiplying a number by one does not change the number. Any transform other than the identity transform will modify the position, shape, and/or size of objects.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateMatrixTransform3D']/*"/>
<msdn-id>dn280359</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateMatrixTransform3D([Out, Fast] IDCompositionMatrixTransform3D** matrixTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateMatrixTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateTransform3DGroup(SharpDX.DirectComposition.Transform3D[],System.Int32,SharpDX.DirectComposition.Transform3D)">
<summary>
<p>Creates a 3D transform group object that holds an array of 3D transform objects.</p>
</summary>
<param name="transforms3D"><dd> <p>An array of 3D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transform3DGroup"><dd> <p>The new 3D transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a 3D transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateTransform3DGroup']/*"/>
<msdn-id>dn280368</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateTransform3DGroup([In, Buffer] IDCompositionTransform3D** transforms3D,[In] unsigned int elements,[Out, Fast] IDCompositionTransform3D** transform3DGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateTransform3DGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateTransform3DGroup(SharpDX.ComArray{SharpDX.DirectComposition.Transform3D},System.Int32,SharpDX.DirectComposition.Transform3D)">
<summary>
<p>Creates a 3D transform group object that holds an array of 3D transform objects.</p>
</summary>
<param name="transforms3D"><dd> <p>An array of 3D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transform3DGroup"><dd> <p>The new 3D transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a 3D transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateTransform3DGroup']/*"/>
<msdn-id>dn280368</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateTransform3DGroup([In, Buffer] IDCompositionTransform3D** transforms3D,[In] unsigned int elements,[Out, Fast] IDCompositionTransform3D** transform3DGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateTransform3DGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateEffectGroup(SharpDX.DirectComposition.EffectGroup)">
<summary>
<p>Creates an object that represents multiple effects to be applied to a visual subtree.</p>
</summary>
<param name="effectGroup"><dd> <p>The new effect group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>An effect group enables an application to apply multiple effects to a single visual subtree. </p><p>A new effect group has a default opacity value of 1.0 and no 3D transformations.</p><p>To set the opacity and transform values, use the corresponding methods on the <strong><see cref="T:SharpDX.DirectComposition.EffectGroup"/></strong> that was created.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateEffectGroup']/*"/>
<msdn-id>dn280357</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateEffectGroup([Out, Fast] IDCompositionEffectGroup** effectGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateEffectGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateRectangleClip(SharpDX.DirectComposition.RectangleClip)">
<summary>
<p>Creates a clip object that can be used to restrict the rendering of a visual subtree to a rectangular area.</p>
</summary>
<param name="clip"><dd> <p>The new clip object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A newly created clip object has a static value of FLT_MAX for the left and top properties, and a static value of ?FLT_MAX for the right and bottom properties, effectively making it a no-op clip object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateRectangleClip']/*"/>
<msdn-id>dn280360</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateRectangleClip([Out, Fast] IDCompositionRectangleClip** clip)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateRectangleClip</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device2.CreateAnimation(SharpDX.DirectComposition.Animation)">
<summary>
<p>Creates an animation object that is used to animate one or more scalar properties of one or more Microsoft DirectComposition objects. </p>
</summary>
<param name="animation"><dd> <p>The new animation object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A number of DirectComposition object properties can have an animation object as the value of the property. When a property has an animation object as its value, DirectComposition redraws the visual at the refresh rate to reflect the changing value of the property that is being animated.</p><p>A newly created animation object does not have any animation segments associated with it. An application must use the methods of the <strong><see cref="T:SharpDX.DirectComposition.Animation"/></strong> interface to build an animation function before setting the animation object as the property of another DirectComposition object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::CreateAnimation']/*"/>
<msdn-id>dn280356</msdn-id>
<unmanaged>HRESULT IDCompositionDevice2::CreateAnimation([Out, Fast] IDCompositionAnimation** animation)</unmanaged>
<unmanaged-short>IDCompositionDevice2::CreateAnimation</unmanaged-short>
</member>
<member name="P:SharpDX.DirectComposition.Device2.FrameStatistics">
<summary>
<p>Retrieves information from the composition engine about composition times and the frame rate.</p>
</summary>
<remarks>
<p>This method retrieves timing information about the composition engine that an application can use to synchronize the rasterization of bitmaps with independent animations.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice2::GetFrameStatistics']/*"/>
<msdn-id>dn280375</msdn-id>
<unmanaged>GetFrameStatistics</unmanaged>
<unmanaged-short>GetFrameStatistics</unmanaged-short>
<unmanaged>HRESULT IDCompositionDevice2::GetFrameStatistics([Out] DCOMPOSITION_FRAME_STATISTICS* statistics)</unmanaged>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.#ctor(SharpDX.ComObject)">
<summary>
Creates a new device object that can be used to create other Microsoft DirectComposition objects.
</summary>
<param name="renderingDevice">An optional reference to a DirectX device to be used to create DirectComposition surface objects. Must be a reference to an object implementing the <strong><see cref="T:SharpDX.DXGI.Device"/></strong> or <strong><see cref="!:SharpDX.Direct2D1.Device"/></strong> interfaces.</param>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.SetWindowIsCloaked(System.IntPtr,System.Boolean)">
<summary>
Sets the DWM cloaking state for the given window.
</summary>
<param name="hwnd">A window handle.</param>
<param name="cloaked">True to cloak the window, false to make the window visible again.</param>
<remarks>
When a window is used as a source in a DirectComposition tree, by default it will still be rendered in its original position and
layout. Cloaking the window causes it to disappear from its original position and render only through the DirectComposition tree.
</remarks>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.GetWindowIsCloaked(System.IntPtr)">
<summary>
Gets the cloaking state for a given window.
</summary>
<param name="hwnd">A window handle.</param>
<returns>True if the window is currently being cloaked, false if it is visible in its regular position.</returns>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.SetWindowIsLayered(System.IntPtr,System.Boolean)">
<summary>
Sets or clears the WS_EX_LAYERED extended style for a window.
</summary>
<param name="hwnd">A window handle.</param>
<param name="isLayered">True to apply the layered style to the window, false to clear the style.</param>
<remarks>
Only windows with the WS_EX_LAYERED style can be used as Visual content. Starting in Windows 8, child windows can also be layered windows.
</remarks>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.GetWindowIsLayered(System.IntPtr)">
<summary>
Gets whether a given window has the WS_EX_LAYERED extended style applied.
</summary>
<param name="hwnd">A window handle.</param>
<returns>True if the window has the layered style applied, false otherwise.</returns>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.DesktopDevice"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.DesktopDevice">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.DesktopDevice"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.CreateTargetForHwnd(System.IntPtr,SharpDX.Bool)">
<summary>
<p>Creates a composition target object that is bound to the window that is represented by the specified window handle.</p>
</summary>
<param name="hwnd"><dd> <p>The window to which the composition target object should be bound. This parameter must not be <c>null</c>.</p> </dd></param>
<param name="topmost"><dd> <p>TRUE if the visual tree should be displayed on top of the children of the window specified by the hwnd parameter; otherwise, the visual tree is displayed behind the children.</p> </dd></param>
<returns><dd> <p>The new composition target object. This parameter must not be <c>null</c>.</p> </dd></returns>
<remarks>
<p>A DirectComposition visual tree must be bound to a window before anything can be displayed on screen. The window can be a top-level window or a child window. In either case, the window can be a layered window, but in all cases the window must belong to the calling process. If the window belongs to a different process, this method returns DCOMPOSITION_ERROR_ACCESS_DENIED.</p><p>When DirectComposition content is composed to the window, the content is always composed on top of whatever is drawn directly to that window through the device context returned by the <strong>GetDC</strong> function, or by calls to DirectX Present methods. However, because window clipping rules apply to DirectComposition content, if the window has child windows, those child windows may clip the visual tree. The topmost parameter determines whether child windows clip the visual tree.</p><p>Conceptually, each window consists of four layers:</p><ol> <li>The contents drawn directly to the window handle (this is the bottommost layer).</li> <li>An optional DirectComposition visual tree.</li> <li>The contents of all child windows, if any.</li> <li>Another optional DirectComposition visual tree (this is the topmost layer).</li> </ol><p>All four layers are clipped to the window?s visible region.</p><p>At most, only two composition targets can be created for each window in the system, one topmost and one not topmost. If a composition target is already bound to the specified window at the specified layer, this method fails. When a composition target object is destroyed, the layer it composed is available for use by a new composition target object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDesktopDevice::CreateTargetForHwnd']/*"/>
<msdn-id>dn280353</msdn-id>
<unmanaged>HRESULT IDCompositionDesktopDevice::CreateTargetForHwnd([In] HWND hwnd,[In] BOOL topmost,[Out] IDCompositionTarget** target)</unmanaged>
<unmanaged-short>IDCompositionDesktopDevice::CreateTargetForHwnd</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.CreateSurfaceFromHandle(System.IntPtr)">
<summary>
<p>Creates a new composition surface object that wraps an existing composition surface.</p>
</summary>
<param name="handle"><dd> <p>The handle of an existing composition surface that was created by a call to the <strong><see cref="M:SharpDX.DirectComposition.DComp.CreateSurfaceHandle(System.Int32,System.Nullable{SharpDX.Win32.SecurityAttributes},System.IntPtr@)"/></strong> function.</p> </dd></param>
<returns><dd> <p>The new composition surface object. This parameter must not be <c>null</c>.</p> </dd></returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDesktopDevice::CreateSurfaceFromHandle']/*"/>
<msdn-id>dn280351</msdn-id>
<unmanaged>HRESULT IDCompositionDesktopDevice::CreateSurfaceFromHandle([In] void* handle,[Out] IUnknown** surface)</unmanaged>
<unmanaged-short>IDCompositionDesktopDevice::CreateSurfaceFromHandle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.DesktopDevice.CreateSurfaceFromHwnd(System.IntPtr)">
<summary>
<p>Creates a wrapper object that represents the rasterization of a layered window, and that can be associated with a visual for composition.</p>
</summary>
<param name="hwnd"><dd> <p>The handle of the layered window for which to create a wrapper. A layered window is created by specifying WS_EX_LAYERED when creating the window with the <strong>CreateWindowEx</strong> function or by setting WS_EX_LAYERED via <strong>SetWindowLong</strong> after the window has been created.</p> </dd></param>
<returns><dd> <p>The new composition surface object. This parameter must not be <c>null</c>.</p> </dd></returns>
<remarks>
<p>You can use the surface reference in calls to the <see cref="M:SharpDX.DirectComposition.Visual.SetContent(SharpDX.ComObject)"/> method to set the content of one or more visuals. After setting the content, the visuals compose the contents of the specified layered window as long as the window is layered. If the window is unlayered, the window content disappears from the output of the composition tree. If the window is later re-layered, the window content reappears as long as it is still associated with a visual. If the window is resized, the affected visuals are re-composed. </p><p>The contents of the window are not cached beyond the life of the window. That is, if the window is destroyed, the affected visuals stop composing the window. </p><p>If the window is moved off-screen or resized to zero, the system stops composing the content of those visuals. You should use the <strong>DwmSetWindowAttribute</strong> function with the DWMWA_CLOAK flag to "cloak" the layered child window when you need to hide the original window while allowing the system to continue to compose the content of the visuals.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDesktopDevice::CreateSurfaceFromHwnd']/*"/>
<msdn-id>dn280352</msdn-id>
<unmanaged>HRESULT IDCompositionDesktopDevice::CreateSurfaceFromHwnd([In] HWND hwnd,[Out] IUnknown** surface)</unmanaged>
<unmanaged-short>IDCompositionDesktopDevice::CreateSurfaceFromHwnd</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Device">
<summary>
<p>Serves as a factory for all other Microsoft DirectComposition objects and provides methods to control transactional composition.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice']/*"/>
<msdn-id>hh437392</msdn-id>
<unmanaged>IDCompositionDevice</unmanaged>
<unmanaged-short>IDCompositionDevice</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.#ctor(SharpDX.DXGI.Device)">
<summary>
Creates a new device object that can be used to create other Microsoft DirectComposition objects.
</summary>
<param name="device">The DXGI device to use to create DirectComposition surface objects.</param>
</member>
<member name="M:SharpDX.DirectComposition.Device.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Device"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Device.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Device">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Device"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Device.Commit">
<summary>
<p>Commits all DirectComposition commands that are pending on this device.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Calls to DirectComposition methods are always batched and executed atomically as a single transaction. Calls take effect only when <strong><see cref="M:SharpDX.DirectComposition.Device.Commit"/></strong> is called, at which time all pending method calls for a device are executed at once. </p><p>An application that uses multiple devices must call <strong>Commit</strong> for each device separately. However, because the composition engine processes the calls individually, the batch of commands might not take effect at the same time. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::Commit']/*"/>
<msdn-id>hh437393</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::Commit()</unmanaged>
<unmanaged-short>IDCompositionDevice::Commit</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.WaitForCommitCompletion">
<summary>
<p>Waits for the composition engine to finish processing the previous call to the <strong><see cref="M:SharpDX.DirectComposition.Device.Commit"/></strong> method. </p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::WaitForCommitCompletion']/*"/>
<msdn-id>hh920928</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::WaitForCommitCompletion()</unmanaged>
<unmanaged-short>IDCompositionDevice::WaitForCommitCompletion</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.GetFrameStatistics(SharpDX.DirectComposition.FrameStatistics@)">
<summary>
<p>Retrieves information from the composition engine about composition times and the frame rate.</p>
</summary>
<param name="statistics"><dd> <p>A structure that receives composition times and frame rate information.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method retrieves timing information about the composition engine that an application can use to synchronize the rasterization of bitmaps with independent animations.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::GetFrameStatistics']/*"/>
<msdn-id>hh437415</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::GetFrameStatistics([Out] DCOMPOSITION_FRAME_STATISTICS* statistics)</unmanaged>
<unmanaged-short>IDCompositionDevice::GetFrameStatistics</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTargetForHwnd(System.IntPtr,SharpDX.Bool,SharpDX.DirectComposition.Target@)">
<summary>
<p>Creates a composition target object that is bound to the window that is represented by the specified window handle (<strong><see cref="T:System.IntPtr"/></strong>).</p>
</summary>
<param name="hwnd">No documentation.</param>
<param name="topmost">No documentation.</param>
<param name="target">No documentation.</param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A Microsoft DirectComposition visual tree must be bound to a window before anything can be displayed on screen. The window can be a top-level window or a child window. In either case, the window can be a layered window, but in all cases the window must belong to the calling process. If the window belongs to a different process, this method returns <strong>DCOMPOSITION_ERROR_ACCESS_DENIED</strong>. </p><p>When DirectComposition content is composed to the window, the content is always composed on top of whatever is drawn directly to that window through the device context (<strong><see cref="T:System.IntPtr"/></strong>) returned by the <strong>GetDC</strong> function, or by calls to Microsoft DirectX <strong>Present</strong> methods. However, because window clipping rules apply to DirectComposition content, if the window has child windows, those child windows may clip the visual tree. The <em>topmost</em> parameter determines whether child windows clip the visual tree. </p><p> Conceptually, each window consists of four layers:</p><ol> <li>The contents drawn directly to the window handle (this is the bottommost layer).</li> <li>An optional DirectComposition visual tree.</li> <li>The contents of all child windows, if any.</li> <li>Another optional DirectComposition visual tree (this is the topmost layer).</li> </ol><p>All four layers are clipped to the window's visible region.</p><p>At most, only two composition targets can be created for each window in the system, one topmost and one not topmost. If a composition target is already bound to the specified window at the specified layer, this method fails. When a composition target object is destroyed, the layer it composed is available for use by a new composition target object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTargetForHwnd']/*"/>
<msdn-id>hh437396</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTargetForHwnd([In] HWND hwnd,[In] BOOL topmost,[Out] IDCompositionTarget** target)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTargetForHwnd</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateVisual(SharpDX.DirectComposition.Visual)">
<summary>
<p>Creates a new visual object.</p>
</summary>
<param name="visual"><dd> <p>The new visual object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new visual object has a static value of zero for the OffsetX and OffsetY properties, and <c>null</c> for the Transform, Clip, and Content properties. Initially, the visual does not cause the contents of a window to change. The visual must be added as a child of another visual, or as the root of a composition target, before it can affect the appearance of a window.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateVisual']/*"/>
<msdn-id>hh437414</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateVisual([Out, Fast] IDCompositionVisual** visual)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateVisual</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)">
<summary>
<p>Creates an updateable surface object that can be associated with one or more visuals for composition.</p>
</summary>
<param name="width"><dd> <p>The width of the surface, in pixels.</p> </dd></param>
<param name="height"><dd> <p>The height of the surface, in pixels.</p> </dd></param>
<param name="pixelFormat"><dd> <p>The pixel format of the surface.</p> </dd></param>
<param name="alphaMode"><dd> <p>The format of the alpha channel, if an alpha channel is included in the pixel format. It can be one of the following values:</p> <table> <tr><th>Value</th><th>Meaning</th></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Unspecified"/></strong></dt> </dl> </td><td> <p>The alpha channel is not specified. This value has the same effect as <strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong>.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Premultiplied"/></strong></dt> </dl> </td><td> <p>The color channels contain values that are premultiplied with the alpha channel.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong></dt> </dl> </td><td> <p>The alpha channel should be ignored and the bitmap should be rendered opaquely.</p> </td></tr> </table> <p>?</p> </dd></param>
<param name="surface"><dd> <p>The newly created surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A Microsoft DirectComposition surface is a rectangular array of pixels that can be associated with a visual for composition. </p><p>A newly created surface object is in an uninitialized state. While it is uninitialized, the surface has no effect on the composition of the visual tree. It behaves exactly like a surface that has 100% transparent pixels. </p><p>To initialize the surface with pixel data, use the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method. The first call to this method must cover the entire surface area to provide an initial value for every pixel. Subsequent calls may specify smaller sub-rectangles of the surface to update. </p><p>DirectComposition surfaces support the following pixel formats: </p><ul> <li><strong><see cref="F:SharpDX.DXGI.Format.B8G8R8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R8G8B8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R16G16B16A16_Float"/></strong></li> </ul>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateSurface']/*"/>
<msdn-id>hh437405</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateSurface([In] unsigned int width,[In] unsigned int height,[In] DXGI_FORMAT pixelFormat,[In] DXGI_ALPHA_MODE alphaMode,[Out, Fast] IDCompositionSurface** surface)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)">
<summary>
<p>Creates a sparsely populated surface that can be associated with one or more visuals for composition.</p>
</summary>
<param name="initialWidth"><dd> <p>The width of the surface, in pixels. The maximum width is 16,777,216 pixels.</p> </dd></param>
<param name="initialHeight"><dd> <p>The height of the surface, in pixels. The maximum height is 16,777,216 pixels.</p> </dd></param>
<param name="pixelFormat"><dd> <p>The pixel format of the surface.</p> </dd></param>
<param name="alphaMode"><dd> <p>The meaning of the alpha channel, if the pixel format contains an alpha channel. It can be one of the following values:</p> <table> <tr><th>Value</th><th>Meaning</th></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Unspecified"/></strong></dt> </dl> </td><td> <p>The alpha channel is not specified. This value has the same effect as <strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong>.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Premultiplied"/></strong></dt> </dl> </td><td> <p>The color channels contain values that are premultiplied with the alpha channel.</p> </td></tr> <tr><td><dl> <dt><strong><see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/></strong></dt> </dl> </td><td> <p>The alpha channel should be ignored and the bitmap should be rendered opaquely.</p> </td></tr> </table> <p>?</p> </dd></param>
<param name="virtualSurface"><dd> <p>The newly created surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A Microsoft DirectComposition sparse surface is a logical object that behaves like a rectangular array of pixels that can be associated with a visual for composition. The surface is not necessarily backed by any physical video or system memory for every one of its pixels. The application can realize or virtualize parts of the logical surface at different times. </p><p>A newly created surface object is in an uninitialized state. While it is uninitialized, the surface has no effect on the composition of the visual tree. It behaves exactly like a surface that is initialized with 100% transparent pixels. </p><p>To initialize the surface with pixel data, use the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method. This method not only provides pixels for the surface, but it also allocates actual storage space for those pixels. The memory allocation persists until the application returns some of the memory to the system. The application can free part or all of the allocated memory by calling the <strong>IDComposition::VirtualSurfaceTrim</strong> method. </p><p>DirectComposition surfaces support the following pixel formats:</p><ul> <li><strong><see cref="F:SharpDX.DXGI.Format.B8G8R8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R8G8B8A8_UNorm"/></strong></li> <li><strong><see cref="F:SharpDX.DXGI.Format.R16G16B16A16_Float"/></strong></li> </ul><p>This method fails if <em>initialWidth</em> or <em>initialHeight</em> exceeds 16,777,216 pixels. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateVirtualSurface']/*"/>
<msdn-id>hh437413</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateVirtualSurface([In] unsigned int initialWidth,[In] unsigned int initialHeight,[In] DXGI_FORMAT pixelFormat,[In] DXGI_ALPHA_MODE alphaMode,[Out, Fast] IDCompositionVirtualSurface** virtualSurface)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateVirtualSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateSurfaceFromHandle(System.IntPtr,SharpDX.ComObject@)">
<summary>
<p>Creates a new composition surface object that wraps an existing composition surface.</p>
</summary>
<param name="handle"><dd> <p>The handle of an existing composition surface that was created by a call to the <strong><see cref="M:SharpDX.DirectComposition.DComp.CreateSurfaceHandle(System.Int32,System.Nullable{SharpDX.Win32.SecurityAttributes},System.IntPtr@)"/></strong> function.</p> </dd></param>
<param name="surface"><dd> <p>The new composition surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method enables an application to use a shared composition surface in a composition tree. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateSurfaceFromHandle']/*"/>
<msdn-id>hh437406</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateSurfaceFromHandle([In] void* handle,[Out] IUnknown** surface)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateSurfaceFromHandle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateSurfaceFromHwnd(System.IntPtr,SharpDX.ComObject@)">
<summary>
<p>Creates a wrapper object that represents the rasterization of a layered window, and that can be associated with a visual for composition.</p>
</summary>
<param name="hwnd"><dd> <p>The handle of the layered window for which to create a wrapper. A layered window is created by specifying <strong>WS_EX_LAYERED</strong> when creating the window with the <strong>CreateWindowEx</strong> function or by setting <strong>WS_EX_LAYERED</strong> via <strong>SetWindowLong</strong> after the window has been created.</p> </dd></param>
<param name="surface"><dd> <p>The new composition surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>You can use the <em>surface</em> reference in calls to the <strong><see cref="M:SharpDX.DirectComposition.Visual.SetContent(SharpDX.ComObject)"/></strong> method to set the content of one or more visuals. After setting the content, the visuals compose the contents of the specified layered window as long as the window is layered. If the window is unlayered, the window content disappears from the output of the composition tree. If the window is later re-layered, the window content reappears as long as it is still associated with a visual. If the window is resized, the affected visuals are re-composed. </p><p>The contents of the window are not cached beyond the life of the window. That is, if the window is destroyed, the affected visuals stop composing the window.
</p><p>If the window is moved off-screen or resized to zero, the system stops composing the content of visuals. You should use the <strong>DwmSetWindowAttribute</strong> function with the <strong>DWMWA_CLOAK</strong> flag to "cloak" the layered child window when you need to hide the original window while allowing the system to continue to compose the content of the visuals. For more information, see How to animate the bitmap of a layered child window and DirectComposition layered child window sample.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateSurfaceFromHwnd']/*"/>
<msdn-id>hh437407</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateSurfaceFromHwnd([In] HWND hwnd,[Out] IUnknown** surface)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateSurfaceFromHwnd</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTranslateTransform(SharpDX.DirectComposition.TranslateTransform)">
<summary>
<p>Creates a 2D translation transform object.</p>
</summary>
<param name="translateTransform"><dd> <p>The new 2D translation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D translation transform object has a static value of zero for the OffsetX and OffsetY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTranslateTransform']/*"/>
<msdn-id>hh437411</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTranslateTransform([Out, Fast] IDCompositionTranslateTransform** translateTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTranslateTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateScaleTransform(SharpDX.DirectComposition.ScaleTransform)">
<summary>
<p>Creates a 2D scale transform object.</p>
</summary>
<param name="scaleTransform"><dd> <p>The new 2D scale transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D scale transform object has a static value of zero for the ScaleX, ScaleY, CenterX, and CenterY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateScaleTransform']/*"/>
<msdn-id>hh437402</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateScaleTransform([Out, Fast] IDCompositionScaleTransform** scaleTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateScaleTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateRotateTransform(SharpDX.DirectComposition.RotateTransform)">
<summary>
<p>Creates a 2D rotation transform object.</p>
</summary>
<param name="rotateTransform"><dd> <p>The new rotation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D rotation transform object has a static value of zero for the Angle, CenterX, and CenterY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateRotateTransform']/*"/>
<msdn-id>hh437400</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateRotateTransform([Out, Fast] IDCompositionRotateTransform** rotateTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateRotateTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateSkewTransform(SharpDX.DirectComposition.SkewTransform)">
<summary>
<p>Creates a 2D skew transform object.</p>
</summary>
<param name="skewTransform"><dd> <p>The new 2D skew transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 2D skew transform object has a static value of zero for the AngleX, AngleY, CenterX, and CenterY properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateSkewTransform']/*"/>
<msdn-id>hh437404</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateSkewTransform([Out, Fast] IDCompositionSkewTransform** skewTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateSkewTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateMatrixTransform(SharpDX.DirectComposition.MatrixTransform)">
<summary>
<p>Creates a 2D 3-by-2 matrix transform object.</p>
</summary>
<param name="matrixTransform"><dd> <p>The new matrix transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new matrix transform object has the identity matrix as its initial value. The identity matrix is the 3x2 matrix with ones on the main diagonal and zeros elsewhere, as shown in the following illustration. </p><p></p><p>When an identity transform is applied to an object, it does not change the position, shape, or size of the object. It is similar to the way that multiplying a number by one does not change the number. Any transform other than the identity transform will modify the position, shape, and/or size of objects.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateMatrixTransform']/*"/>
<msdn-id>hh437397</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateMatrixTransform([Out, Fast] IDCompositionMatrixTransform** matrixTransform)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateMatrixTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTransformGroup(SharpDX.DirectComposition.Transform[],System.Int32,SharpDX.DirectComposition.Transform)">
<summary>
<p>Creates a 2D transform group object that holds an array of 2D transform objects.</p>
</summary>
<param name="transforms"><dd> <p>An array of 2D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transformGroup"><dd> <p>The new transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTransformGroup']/*"/>
<msdn-id>hh437410</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTransformGroup([In, Buffer] IDCompositionTransform** transforms,[In] unsigned int elements,[Out, Fast] IDCompositionTransform** transformGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTransformGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTransformGroup(SharpDX.ComArray{SharpDX.DirectComposition.Transform},System.Int32,SharpDX.DirectComposition.Transform)">
<summary>
<p>Creates a 2D transform group object that holds an array of 2D transform objects.</p>
</summary>
<param name="transforms"><dd> <p>An array of 2D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transformGroup"><dd> <p>The new transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTransformGroup']/*"/>
<msdn-id>hh437410</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTransformGroup([In, Buffer] IDCompositionTransform** transforms,[In] unsigned int elements,[Out, Fast] IDCompositionTransform** transformGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTransformGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTranslateTransform3D(SharpDX.DirectComposition.TranslateTransform3D)">
<summary>
<p>Creates a 3D translation transform object.</p>
</summary>
<param name="translateTransform3D"><dd> <p>The new 3D translation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If this method succeeds, it returns <strong><see cref="F:SharpDX.Result.Ok"/></strong>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code.</p></returns>
<remarks>
<p>A newly created 3D translation transform has a static value of 0 for the OffsetX, OffsetY, and OffsetZ properties. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTranslateTransform3D']/*"/>
<msdn-id>hh437412</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTranslateTransform3D([Out, Fast] IDCompositionTranslateTransform3D** translateTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTranslateTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateScaleTransform3D(SharpDX.DirectComposition.ScaleTransform3D)">
<summary>
<p>Creates a 3D scale transform object.</p>
</summary>
<param name="scaleTransform3D"><dd> <p>The new 3D scale transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 3D scale transform object has a static value of 1.0 for the ScaleX, ScaleY, and ScaleZ properties.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateScaleTransform3D']/*"/>
<msdn-id>hh437403</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateScaleTransform3D([Out, Fast] IDCompositionScaleTransform3D** scaleTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateScaleTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateRotateTransform3D(SharpDX.DirectComposition.RotateTransform3D)">
<summary>
<p>Creates a 3D rotation transform object.</p>
</summary>
<param name="rotateTransform3D"><dd> <p>The new 3D rotation transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A new 3D rotation transform object has a default static value of zero for the Angle, CenterX, CenterY, AxisX, and AxisY properties, and a default static value of 1.0 for the AxisZ property.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateRotateTransform3D']/*"/>
<msdn-id>hh437401</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateRotateTransform3D([Out, Fast] IDCompositionRotateTransform3D** rotateTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateRotateTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateMatrixTransform3D(SharpDX.DirectComposition.MatrixTransform3D)">
<summary>
<p>Creates a 3D 4-by-4 matrix transform object.</p>
</summary>
<param name="matrixTransform3D"><dd> <p>The new 3D matrix transform object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The new 3D matrix transform has the identity matrix as its value. The identity matrix is the 4-by-4 matrix with ones on the main diagonal and zeros elsewhere, as shown in the following illustration. </p><p></p><p>When an identity transform is applied to an object, it does not change the position, shape, or size of the object. It is similar to the way that multiplying a number by one does not change the number. Any transform other than the identity transform will modify the position, shape, and/or size of objects.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateMatrixTransform3D']/*"/>
<msdn-id>hh437398</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateMatrixTransform3D([Out, Fast] IDCompositionMatrixTransform3D** matrixTransform3D)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateMatrixTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTransform3DGroup(SharpDX.DirectComposition.Transform3D[],System.Int32,SharpDX.DirectComposition.Transform3D)">
<summary>
<p>Creates a 3D transform group object that holds an array of 3D transform objects.</p>
</summary>
<param name="transforms3D"><dd> <p>An array of 3D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transform3DGroup"><dd> <p>The new 3D transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a 3D transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTransform3DGroup']/*"/>
<msdn-id>hh437409</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTransform3DGroup([In, Buffer] IDCompositionTransform3D** transforms3D,[In] unsigned int elements,[Out, Fast] IDCompositionTransform3D** transform3DGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTransform3DGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateTransform3DGroup(SharpDX.ComArray{SharpDX.DirectComposition.Transform3D},System.Int32,SharpDX.DirectComposition.Transform3D)">
<summary>
<p>Creates a 3D transform group object that holds an array of 3D transform objects.</p>
</summary>
<param name="transforms3D"><dd> <p>An array of 3D transform objects that make up this transform group.</p> </dd></param>
<param name="elements"><dd> <p>The number of elements in the <em>transforms</em> array.</p> </dd></param>
<param name="transform3DGroup"><dd> <p>The new 3D transform group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The array entries in a 3D transform group cannot be changed. However, each transform in the array can be modified through its own property setting methods. If a transform in the array is modified, the change is reflected in the computed matrix of the transform group.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateTransform3DGroup']/*"/>
<msdn-id>hh437409</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateTransform3DGroup([In, Buffer] IDCompositionTransform3D** transforms3D,[In] unsigned int elements,[Out, Fast] IDCompositionTransform3D** transform3DGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateTransform3DGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateEffectGroup(SharpDX.DirectComposition.EffectGroup)">
<summary>
<p>Creates an object that represents multiple effects to be applied to a visual subtree.</p>
</summary>
<param name="effectGroup"><dd> <p>The new effect group object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>An effect group enables an application to apply multiple effects to a single visual subtree. </p><p>A new effect group has a default opacity value of 1.0 and no 3D transformations.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateEffectGroup']/*"/>
<msdn-id>hh437395</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateEffectGroup([Out, Fast] IDCompositionEffectGroup** effectGroup)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateEffectGroup</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateRectangleClip(SharpDX.DirectComposition.RectangleClip)">
<summary>
<p>Creates a clip object that can be used to restrict the rendering of a visual subtree to a rectangular area.</p>
</summary>
<param name="clip"><dd> <p>The new clip object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A newly created clip object has a static value of ?FLT_MAX for the left and top properties, and a static value of ?FLT_MAX for the right and bottom properties, effectively making it a no-op clip object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateRectangleClip']/*"/>
<msdn-id>hh437399</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateRectangleClip([Out, Fast] IDCompositionRectangleClip** clip)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateRectangleClip</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CreateAnimation(SharpDX.DirectComposition.Animation)">
<summary>
<p>Creates an animation object that is used to animate one or more scalar properties of one or more Microsoft DirectComposition objects. </p>
</summary>
<param name="animation"><dd> <p>The new animation object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A number of DirectComposition object properties can have an animation object as the value of the property. When a property has an animation object as its value, DirectComposition redraws the visual at the refresh rate to reflect the changing value of the property that is being animated.</p><p>A newly created animation object does not have any animation segments associated with it. An application must use the methods of the <strong><see cref="T:SharpDX.DirectComposition.Animation"/></strong> interface to build an animation function before setting the animation object as the property of another DirectComposition object.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CreateAnimation']/*"/>
<msdn-id>hh437394</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CreateAnimation([Out, Fast] IDCompositionAnimation** animation)</unmanaged>
<unmanaged-short>IDCompositionDevice::CreateAnimation</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Device.CheckDeviceState(SharpDX.Bool@)">
<summary>
<p>Determines whether the DirectComposition device object is still valid.</p>
</summary>
<param name="fValidRef"><dd> <p>TRUE if the DirectComposition device object is still valid; otherwise <see cref="F:SharpDX.Result.False"/>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p> If the Microsoft DirectX Graphics Infrastructure (DXGI) device is lost, the DirectComposition device associated with the DXGI device is also lost. When it detects a lost device, DirectComposition sends the <strong>WM_PAINT</strong> message to all windows that are composing DirectComposition content using the lost device. An application should call <strong>CheckDeviceState</strong> in response to each <strong>WM_PAINT</strong> message to ensure that the DirectComposition device object is still valid. The application must take steps to recover content if the device object becomes invalid. Steps include creating new DXGI and DirectComposition devices, and recreating all content. (It?s not possible to create just a new DXGI device and associate it with the existing DirectComposition device.) The system ensures that the device object remains valid between <strong>WM_PAINT</strong> messages. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::CheckDeviceState']/*"/>
<msdn-id>Hh707428</msdn-id>
<unmanaged>HRESULT IDCompositionDevice::CheckDeviceState([Out] BOOL* pfValid)</unmanaged>
<unmanaged-short>IDCompositionDevice::CheckDeviceState</unmanaged-short>
</member>
<member name="P:SharpDX.DirectComposition.Device.FrameStatistics">
<summary>
<p>Retrieves information from the composition engine about composition times and the frame rate.</p>
</summary>
<remarks>
<p>This method retrieves timing information about the composition engine that an application can use to synchronize the rasterization of bitmaps with independent animations.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDevice::GetFrameStatistics']/*"/>
<msdn-id>hh437415</msdn-id>
<unmanaged>GetFrameStatistics</unmanaged>
<unmanaged-short>GetFrameStatistics</unmanaged-short>
<unmanaged>HRESULT IDCompositionDevice::GetFrameStatistics([Out] DCOMPOSITION_FRAME_STATISTICS* statistics)</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.EffectGroup">
<summary>
<p>Represents a group of bitmap effects that are applied together to modify the rasterization of a visual's subtree. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionEffectGroup']/*"/>
<msdn-id>hh437418</msdn-id>
<unmanaged>IDCompositionEffectGroup</unmanaged>
<unmanaged-short>IDCompositionEffectGroup</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Effect">
<summary>
<p>Represents a bitmap effect that modifies the rasterization of a visual's subtree. </p>
</summary>
<remarks>
<p><strong><see cref="T:SharpDX.DirectComposition.Effect"/></strong> is an abstract interface that represents a bitmap effect. An effect applies to the entire visual subtree rooted at the visual that the effect is associated with. An effect object can be associated with multiple visuals. When an effect object is modified, all affected visuals are recomposed to reflect the change. </p><p>More than one effect can be simultaneously applied to a visual by using the <strong><see cref="T:SharpDX.DirectComposition.EffectGroup"/></strong> interface.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionEffect']/*"/>
<msdn-id>hh437417</msdn-id>
<unmanaged>IDCompositionEffect</unmanaged>
<unmanaged-short>IDCompositionEffect</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Effect.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Effect"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Effect.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Effect">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Effect"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.EffectGroup.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.EffectGroup"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.EffectGroup.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.EffectGroup">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.EffectGroup"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.EffectGroup.SetOpacity(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the Opacity property. </p>
</summary>
<param name="animation"><dd> <p>An animation that represents how the value of the Opacity property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Opacity property unless this method is called again. If the Opacity property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected compostion effect group. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionEffectGroup::SetOpacity']/*"/>
<msdn-id>hh437421</msdn-id>
<unmanaged>HRESULT IDCompositionEffectGroup::SetOpacity([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionEffectGroup::SetOpacity</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.EffectGroup.SetOpacity(System.Single)">
<summary>
<p>Animates the value of the Opacity property. </p>
</summary>
<param name="opacity"><dd> <p>An animation that represents how the value of the Opacity property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Opacity property unless this method is called again. If the Opacity property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected compostion effect group. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionEffectGroup::SetOpacity']/*"/>
<msdn-id>hh437421</msdn-id>
<unmanaged>HRESULT IDCompositionEffectGroup::SetOpacity([In] float opacity)</unmanaged>
<unmanaged-short>IDCompositionEffectGroup::SetOpacity</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.EffectGroup.SetTransform3D(SharpDX.DirectComposition.Transform3D)">
<summary>
<p>Sets the 3D transformation effect object that modifies the rasterization of the visuals that this effect group is applied to.</p>
</summary>
<param name="transform3D"><dd> <p>Pointer to an <strong><see cref="T:SharpDX.DirectComposition.Transform3D"/></strong> interface or one of its derived interfaces. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if <em>transform3D</em> is an invalid reference, or if the reference was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as this effect group. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method. </p><p>If the <em>transform3D</em> parameter is <c>null</c>, the effect group does not apply any perspective transformations to the visuals. Setting the transform to <c>null</c> is equivalent to setting the transform to an <strong><see cref="T:SharpDX.DirectComposition.MatrixTransform3D"/></strong> object where the specified matrix is the identity matrix. However, an application should use a <c>null</c> transform whenever possible because it is slightly faster. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionEffectGroup::SetTransform3D']/*"/>
<msdn-id>hh437423</msdn-id>
<unmanaged>HRESULT IDCompositionEffectGroup::SetTransform3D([In, Optional] IDCompositionTransform3D* transform3D)</unmanaged>
<unmanaged-short>IDCompositionEffectGroup::SetTransform3D</unmanaged-short>
</member>
<member name="P:SharpDX.DirectComposition.EffectGroup.Transform3D">
<summary>
<p>Sets the 3D transformation effect object that modifies the rasterization of the visuals that this effect group is applied to.</p>
</summary>
<remarks>
<p>This method fails if <em>transform3D</em> is an invalid reference, or if the reference was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as this effect group. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method. </p><p>If the <em>transform3D</em> parameter is <c>null</c>, the effect group does not apply any perspective transformations to the visuals. Setting the transform to <c>null</c> is equivalent to setting the transform to an <strong><see cref="T:SharpDX.DirectComposition.MatrixTransform3D"/></strong> object where the specified matrix is the identity matrix. However, an application should use a <c>null</c> transform whenever possible because it is slightly faster. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionEffectGroup::SetTransform3D']/*"/>
<msdn-id>hh437423</msdn-id>
<unmanaged>SetTransform3D</unmanaged>
<unmanaged-short>SetTransform3D</unmanaged-short>
<unmanaged>HRESULT IDCompositionEffectGroup::SetTransform3D([In, Optional] IDCompositionTransform3D* transform3D)</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.MatrixTransform">
<summary>
<p>Represents an arbitrary affine 2D transformation defined by a 3-by-2 matrix.</p><p></p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform']/*"/>
<msdn-id>hh437424</msdn-id>
<unmanaged>IDCompositionMatrixTransform</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Transform">
<summary>
<p>Represents a 2D transformation that can be used to modify the coordinate space of a visual subtree. </p>
</summary>
<remarks>
<p>The <strong><see cref="T:SharpDX.DirectComposition.Transform"/></strong> interface is an abstract interface that represents a 2D affine transformation. Transformations affect the entire visual subtree that is rooted at the visual that the transform is associated with. A transform object can be associated with multiple visuals. When a transform object is modified, all affected visuals are recomposed to reflect the change.</p><p>Transforms operate by modifying the coordinate system for all rendering operations on a visual. For example, ordinarily a bitmap that is associated with a visual draws at position (0,0) and extends the full width and height of the bitmap. If a translation transform is applied, the bitmap draws at a position that is offset by that transform. If a scale transform is applied, the extent covered by the bitmap is affected by the scale transform. More than one transform can be simultaneously applied to a visual by using the <strong><see cref="M:SharpDX.DirectComposition.Device.CreateTransformGroup(SharpDX.DirectComposition.Transform[],System.Int32,SharpDX.DirectComposition.Transform)"/></strong> interface.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTransform']/*"/>
<msdn-id>hh449110</msdn-id>
<unmanaged>IDCompositionTransform</unmanaged>
<unmanaged-short>IDCompositionTransform</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Transform3D">
<summary>
<p>Represents a 3D transformation effect that can be used to modify the rasterization of a visual subtree. </p>
</summary>
<remarks>
<p>The <strong><see cref="T:SharpDX.DirectComposition.Transform3D"/></strong> interface is an abstract interface that represents a 3D perspective transformation effect. A 3D transform object can be associated with multiple visuals and multiple effect groups. When a 3D transform object is modified, all affected visuals are recomposed to reflect the change.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTransform3D']/*"/>
<msdn-id>hh449112</msdn-id>
<unmanaged>IDCompositionTransform3D</unmanaged>
<unmanaged-short>IDCompositionTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Transform3D.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Transform3D"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Transform3D.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Transform3D">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Transform3D"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Transform.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Transform"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Transform.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Transform">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Transform"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.MatrixTransform"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.MatrixTransform">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.MatrixTransform"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform.SetMatrix(SharpDX.Matrix3x2@)">
<summary>
<p>Changes all values of the matrix of this 2D transform.</p>
</summary>
<param name="matrix"><dd> <p>The new matrix for this 2D transform.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if any of the matrix values are NaN, positive infinity, or negative infinity.</p><p>If any of the matrix elements were previously animated, this method removes the animations and sets the elements to the specified static value.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform::SetMatrix']/*"/>
<msdn-id>hh437430</msdn-id>
<unmanaged>HRESULT IDCompositionMatrixTransform::SetMatrix([In] const D2D_MATRIX_3X2_F&amp; matrix)</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform::SetMatrix</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform.SetMatrixElement(System.Int32,System.Int32,SharpDX.DirectComposition.Animation)">
<summary>
Changes or animates the value of one element of the matrix of this 2D transform.
</summary>
<param name="row">No documentation.</param>
<param name="column">No documentation.</param>
<param name="animation">No documentation.</param>
<returns>No documentation.</returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform::SetMatrixElement']/*"/>
<msdn-id>hh437433</msdn-id>
<unmanaged>HRESULT IDCompositionMatrixTransform::SetMatrixElement([In] int row,[In] int column,[In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform::SetMatrixElement</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform.SetMatrixElement(System.Int32,System.Int32,System.Single)">
<summary>
Changes or animates the value of one element of the matrix of this 2D transform.
</summary>
<param name="row">No documentation.</param>
<param name="column">No documentation.</param>
<param name="value">No documentation.</param>
<returns>No documentation.</returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform::SetMatrixElement']/*"/>
<msdn-id>hh437433</msdn-id>
<unmanaged>HRESULT IDCompositionMatrixTransform::SetMatrixElement([In] int row,[In] int column,[In] float value)</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform::SetMatrixElement</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.MatrixTransform3D">
<summary>
<p>Represents an arbitrary 3D transformation defined by a 4-by-4 matrix.</p><p></p>
</summary>
<remarks>
<p>A 3D matrix transform represents the following 4-by-4 matrix:</p><p></p><p> The application can set any of the values in the first three columns. Note that the fourth column is padded to allow for matrix concatenation. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform3D']/*"/>
<msdn-id>hh437425</msdn-id>
<unmanaged>IDCompositionMatrixTransform3D</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform3D.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.MatrixTransform3D"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform3D.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.MatrixTransform3D">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.MatrixTransform3D"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform3D.SetMatrix(SharpDX.Matrix@)">
<summary>
<p>Changes all values of the matrix of this 3D transformation effect.</p>
</summary>
<param name="matrix"><dd> <p>The new matrix for this 3D transformation effect.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if any of the matrix values are NaN, positive infinity, or negative infinity.</p><p>If any of the matrix elements were previously animated, this method removes the animations and sets the elements to the specified static value.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform3D::SetMatrix']/*"/>
<msdn-id>hh437426</msdn-id>
<unmanaged>HRESULT IDCompositionMatrixTransform3D::SetMatrix([In] const D3DMATRIX&amp; matrix)</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform3D::SetMatrix</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform3D.SetMatrixElement(System.Int32,System.Int32,SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of one element of the matrix of this 3D transform.</p>
</summary>
<param name="row"><dd> <p>The row index of the element to change. This value must be between 0 and 3, inclusive.</p> </dd></param>
<param name="column"><dd> <p>The column index of the element to change. This value must be between 0 and 3, inclusive.</p> </dd></param>
<param name="animation"><dd> <p>An animation that represents how the value of the specified element changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the specified element unless this method is called again. If the specified element was previously animated, calling this method replaces the previous animation with the new animation.</p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected transform. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform3D::SetMatrixElement']/*"/>
<msdn-id>hh437428</msdn-id>
<unmanaged>HRESULT IDCompositionMatrixTransform3D::SetMatrixElement([In] int row,[In] int column,[In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform3D::SetMatrixElement</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.MatrixTransform3D.SetMatrixElement(System.Int32,System.Int32,System.Single)">
<summary>
<p>Animates the value of one element of the matrix of this 3D transform.</p>
</summary>
<param name="row"><dd> <p>The row index of the element to change. This value must be between 0 and 3, inclusive.</p> </dd></param>
<param name="column"><dd> <p>The column index of the element to change. This value must be between 0 and 3, inclusive.</p> </dd></param>
<param name="value"><dd> <p>An animation that represents how the value of the specified element changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the specified element unless this method is called again. If the specified element was previously animated, calling this method replaces the previous animation with the new animation.</p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected transform. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionMatrixTransform3D::SetMatrixElement']/*"/>
<msdn-id>hh437428</msdn-id>
<unmanaged>HRESULT IDCompositionMatrixTransform3D::SetMatrixElement([In] int row,[In] int column,[In] float value)</unmanaged>
<unmanaged-short>IDCompositionMatrixTransform3D::SetMatrixElement</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.BackFaceVisibility">
<summary>
<p>Specifies the backface visibility to be applied to a visual. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BACKFACE_VISIBILITY']/*"/>
<msdn-id>dn280348</msdn-id>
<unmanaged>DCOMPOSITION_BACKFACE_VISIBILITY</unmanaged>
<unmanaged-short>DCOMPOSITION_BACKFACE_VISIBILITY</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BackFaceVisibility.Visible">
<summary>
<dd> <p>Surfaces in this visual's sub-tree are visible regardless of transformation.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BACKFACE_VISIBILITY_VISIBLE']/*"/>
<msdn-id>dn280348</msdn-id>
<unmanaged>DCOMPOSITION_BACKFACE_VISIBILITY_VISIBLE</unmanaged>
<unmanaged-short>DCOMPOSITION_BACKFACE_VISIBILITY_VISIBLE</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BackFaceVisibility.Hidden">
<summary>
<dd> <p>Surfaces in this visual's sub-tree are only visible when facing the observer.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BACKFACE_VISIBILITY_HIDDEN']/*"/>
<msdn-id>dn280348</msdn-id>
<unmanaged>DCOMPOSITION_BACKFACE_VISIBILITY_HIDDEN</unmanaged>
<unmanaged-short>DCOMPOSITION_BACKFACE_VISIBILITY_HIDDEN</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit">
<summary>
<dd> <p>The back face visibility is the same as that of the target visual's parent visual.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BACKFACE_VISIBILITY_INHERIT']/*"/>
<msdn-id>dn280348</msdn-id>
<unmanaged>DCOMPOSITION_BACKFACE_VISIBILITY_INHERIT</unmanaged>
<unmanaged-short>DCOMPOSITION_BACKFACE_VISIBILITY_INHERIT</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.BitmapInterpolationMode">
<summary>
<p>Specifies the interpolation mode to be used when a bitmap is composed with any transform where the pixels in the bitmap don't line up exactly one-to-one with pixels on screen. </p>
</summary>
<remarks>
<p>The default interpolation mode for a visual is <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>. If all visuals in a visual tree specify this mode, the default for all visuals is nearest neighbor sampling, which is the fastest mode.</p><p>A single visual can have any combination of visual properties. However, if a
visual has the following combination of properties, the borders of the visual will default
to <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Hard"/></strong>. </p><ul> <li><code>SetCompositeMode(<see cref="F:SharpDX.DirectComposition.CompositeMode.DestinationInvert"/>)
</code></li> <li><code>SetBorderMode(<see cref="F:SharpDX.DirectComposition.BorderMode.Soft"/>)
</code></li> <li><code>SetBitmapInterpolationMode(<see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.NearestNeighbor"/>)</code></li> </ul><p>If you want a visual to be drawn with antialiasing, use <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Linear"/></strong> for the content of the visual, and <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Soft"/></strong> for the edges.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BITMAP_INTERPOLATION_MODE']/*"/>
<msdn-id>hh437364</msdn-id>
<unmanaged>DCOMPOSITION_BITMAP_INTERPOLATION_MODE</unmanaged>
<unmanaged-short>DCOMPOSITION_BITMAP_INTERPOLATION_MODE</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BitmapInterpolationMode.NearestNeighbor">
<summary>
<dd> <p>Bitmaps are interpolated by using nearest-neighbor sampling.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR']/*"/>
<msdn-id>hh437364</msdn-id>
<unmanaged>DCOMPOSITION_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR</unmanaged>
<unmanaged-short>DCOMPOSITION_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BitmapInterpolationMode.Linear">
<summary>
<dd> <p>Bitmaps are interpolated by using linear sampling.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BITMAP_INTERPOLATION_MODE_LINEAR']/*"/>
<msdn-id>hh437364</msdn-id>
<unmanaged>DCOMPOSITION_BITMAP_INTERPOLATION_MODE_LINEAR</unmanaged>
<unmanaged-short>DCOMPOSITION_BITMAP_INTERPOLATION_MODE_LINEAR</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit">
<summary>
<dd> <p>Bitmaps are interpolated according to the mode established by the parent visual.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BITMAP_INTERPOLATION_MODE_INHERIT']/*"/>
<msdn-id>hh437364</msdn-id>
<unmanaged>DCOMPOSITION_BITMAP_INTERPOLATION_MODE_INHERIT</unmanaged>
<unmanaged-short>DCOMPOSITION_BITMAP_INTERPOLATION_MODE_INHERIT</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.BorderMode">
<summary>
<p>Specifies the border mode to use when composing a bitmap or applying a clip with any transform such that the edges of the bitmap or clip are not axis-aligned with integer coordinates. </p>
</summary>
<remarks>
<p>The default border mode for any given visual is <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>, which delegates the determination of the border mode to the parent visual. If all visuals in a visual tree specify this mode, the default for all visuals is aliased rendering, which is the fastest mode.</p><p>A single visual can have any combination of visual properties. However, if a
visual has the following combination of properties, the borders of the visual will default
to <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Hard"/></strong>. </p><ul> <li><code>SetCompositeMode(<see cref="F:SharpDX.DirectComposition.CompositeMode.DestinationInvert"/>)
</code></li> <li><code>SetBorderMode(<see cref="F:SharpDX.DirectComposition.BorderMode.Soft"/>)
</code></li> <li><code>SetBitmapInterpolationMode(<see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.NearestNeighbor"/>)</code></li> </ul><p>If you want a visual to be drawn with antialiasing, use <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Linear"/></strong> for the content of the visual, and <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Soft"/></strong> for the edges.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BORDER_MODE']/*"/>
<msdn-id>hh437365</msdn-id>
<unmanaged>DCOMPOSITION_BORDER_MODE</unmanaged>
<unmanaged-short>DCOMPOSITION_BORDER_MODE</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BorderMode.Soft">
<summary>
<dd> <p>Bitmap and clip edges are antialiased.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BORDER_MODE_SOFT']/*"/>
<msdn-id>hh437365</msdn-id>
<unmanaged>DCOMPOSITION_BORDER_MODE_SOFT</unmanaged>
<unmanaged-short>DCOMPOSITION_BORDER_MODE_SOFT</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BorderMode.Hard">
<summary>
<dd> <p>Bitmap and clip edges are aliased. See Remarks.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BORDER_MODE_HARD']/*"/>
<msdn-id>hh437365</msdn-id>
<unmanaged>DCOMPOSITION_BORDER_MODE_HARD</unmanaged>
<unmanaged-short>DCOMPOSITION_BORDER_MODE_HARD</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.BorderMode.Inherit">
<summary>
<dd> <p>Bitmap and clip edges are drawn according to the mode established by the parent visual.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_BORDER_MODE_INHERIT']/*"/>
<msdn-id>hh437365</msdn-id>
<unmanaged>DCOMPOSITION_BORDER_MODE_INHERIT</unmanaged>
<unmanaged-short>DCOMPOSITION_BORDER_MODE_INHERIT</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.CompositeMode">
<summary>
<p>The mode to use to blend the bitmap content of a visual with the render target.</p>
</summary>
<remarks>
<p>A single visual can have any combination of visual properties. However, if a
visual has the following combination of properties, the borders of the visual will default
to <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Hard"/></strong>. </p><ul> <li><code>SetCompositeMode(<see cref="F:SharpDX.DirectComposition.CompositeMode.DestinationInvert"/>)
</code></li> <li><code>SetBorderMode(<see cref="F:SharpDX.DirectComposition.BorderMode.Soft"/>)
</code></li> <li><code>SetBitmapInterpolationMode(<see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.NearestNeighbor"/>)</code></li> </ul><p>If you want a visual to be drawn with antialiasing, use <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Linear"/></strong> for the content of the visual, and <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Soft"/></strong> for the edges.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_COMPOSITE_MODE']/*"/>
<msdn-id>Hh802900</msdn-id>
<unmanaged>DCOMPOSITION_COMPOSITE_MODE</unmanaged>
<unmanaged-short>DCOMPOSITION_COMPOSITE_MODE</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.CompositeMode.SourceOver">
<summary>
<dd> <p>The standard source-over-destination blend mode.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_COMPOSITE_MODE_SOURCE_OVER']/*"/>
<msdn-id>Hh802900</msdn-id>
<unmanaged>DCOMPOSITION_COMPOSITE_MODE_SOURCE_OVER</unmanaged>
<unmanaged-short>DCOMPOSITION_COMPOSITE_MODE_SOURCE_OVER</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.CompositeMode.DestinationInvert">
<summary>
<dd> <p>The bitmap colors are inverted. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_COMPOSITE_MODE_DESTINATION_INVERT']/*"/>
<msdn-id>Hh802900</msdn-id>
<unmanaged>DCOMPOSITION_COMPOSITE_MODE_DESTINATION_INVERT</unmanaged>
<unmanaged-short>DCOMPOSITION_COMPOSITE_MODE_DESTINATION_INVERT</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.CompositeMode.MinimumBlend">
<summary>
<dd> <p>Bitmap colors subtract for color channels in the background. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_COMPOSITE_MODE_MIN_BLEND']/*"/>
<msdn-id>Hh802900</msdn-id>
<unmanaged>DCOMPOSITION_COMPOSITE_MODE_MIN_BLEND</unmanaged>
<unmanaged-short>DCOMPOSITION_COMPOSITE_MODE_MIN_BLEND</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.CompositeMode.Inherit">
<summary>
<dd> <p>Bitmaps are blended according to the mode established by the parent visual. </p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_COMPOSITE_MODE_INHERIT']/*"/>
<msdn-id>Hh802900</msdn-id>
<unmanaged>DCOMPOSITION_COMPOSITE_MODE_INHERIT</unmanaged>
<unmanaged-short>DCOMPOSITION_COMPOSITE_MODE_INHERIT</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.OpacityMode">
<summary>
<p>Specifies how the effective opacity value of a visual is applied to that visual?s content and children.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_OPACITY_MODE']/*"/>
<msdn-id>dn280349</msdn-id>
<unmanaged>DCOMPOSITION_OPACITY_MODE</unmanaged>
<unmanaged-short>DCOMPOSITION_OPACITY_MODE</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.OpacityMode.Layer">
<summary>
<dd> <p>The target visual defines a logical layer into which its entire sub-tree is composed with a starting effective opacity of 1.0. The original opacity value is then used to blend the layer onto the visual?s background.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_OPACITY_MODE_LAYER']/*"/>
<msdn-id>dn280349</msdn-id>
<unmanaged>DCOMPOSITION_OPACITY_MODE_LAYER</unmanaged>
<unmanaged-short>DCOMPOSITION_OPACITY_MODE_LAYER</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.OpacityMode.Multiply">
<summary>
<dd> <p>The opacity value is multiplied with the effective opacity of the parent visual and the result is then individually applied to each piece of content in this visual?s sub-tree.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_OPACITY_MODE_MULTIPLY']/*"/>
<msdn-id>dn280349</msdn-id>
<unmanaged>DCOMPOSITION_OPACITY_MODE_MULTIPLY</unmanaged>
<unmanaged-short>DCOMPOSITION_OPACITY_MODE_MULTIPLY</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.OpacityMode.Inherit">
<summary>
<dd> <p>The opacity mode is the same as that of the target visual?s parent visual.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_OPACITY_MODE_INHERIT']/*"/>
<msdn-id>dn280349</msdn-id>
<unmanaged>DCOMPOSITION_OPACITY_MODE_INHERIT</unmanaged>
<unmanaged-short>DCOMPOSITION_OPACITY_MODE_INHERIT</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.DComp">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.DirectComposition.DComp']/*"/>
</member>
<member name="M:SharpDX.DirectComposition.DComp.CreateSurfaceHandle(System.Int32,System.Nullable{SharpDX.Win32.SecurityAttributes},System.IntPtr@)">
<summary>
<p>Creates a new composition surface object that can be bound to a
Microsoft DirectX swap chain or swap buffer and associated
with a visual.</p>
</summary>
<param name="desiredAccess"><dd> <p>The requested access to the composition surface object. It can be one of the following values:</p> <table> <tr><th>Value</th><th>Meaning</th></tr> <tr><td><dl> <dt><strong></strong></dt> <dt>0x0000L</dt> </dl> </td><td> <p>No access.</p> </td></tr> <tr><td><dl> <dt><strong>COMPOSITIONSURFACE_READ</strong></dt> <dt>0x0001L</dt> </dl> </td><td> <p>Read access. For internal use only.</p> </td></tr> <tr><td><dl> <dt><strong>COMPOSITIONSURFACE_WRITE</strong></dt> <dt>0x0002L</dt> </dl> </td><td> <p>Write access. For internal use only.</p> </td></tr> <tr><td><dl> <dt><strong>COMPOSITIONSURFACE_ALL_ACCESS</strong></dt> <dt>0x0003L</dt> </dl> </td><td> <p>Read/write access. Always specify this flag except when duplicating a surface in another process, in which case set <em>desiredAccess</em> to 0.</p> </td></tr> </table> <p>?</p> </dd></param>
<param name="securityAttributes"><dd> <p>Contains the security descriptor for the composition surface object, and specifies whether the handle of the composition surface object is inheritable when a child process is created. If this parameter is <c>null</c>, the composition surface object is created with default security attributes that grant read and write access to the current process, but do not enable child processes to inherit the handle.</p> </dd></param>
<param name="surfaceHandle"><dd> <p>The handle of the new composition surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes. </p></returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCompositionCreateSurfaceHandle']/*"/>
<msdn-id>hh437360</msdn-id>
<unmanaged>HRESULT DCompositionCreateSurfaceHandle([In] unsigned int desiredAccess,[In, Optional] SECURITY_ATTRIBUTES* securityAttributes,[Out] void** surfaceHandle)</unmanaged>
<unmanaged-short>DCompositionCreateSurfaceHandle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.DComp.CreateDevice2(SharpDX.ComObject,System.Guid,System.IntPtr@)">
<summary>
<p>Creates a new device object that can be used to create other Microsoft DirectComposition objects.</p>
</summary>
<param name="renderingDevice"><dd> <p>An optional reference to a DirectX device to be used to create DirectComposition surface objects. Must be a reference to an object implementing the <strong><see cref="T:SharpDX.DXGI.Device"/></strong> or <strong><see cref="!:SharpDX.Direct2D1.Device"/></strong> interfaces.</p> </dd></param>
<param name="iid"><dd> <p>The identifier of the interface to retrieve. This must be one of __uuidof(<see cref="T:SharpDX.DirectComposition.Device"/>) or __uuidof(<see cref="T:SharpDX.DirectComposition.DesktopDevice"/>).</p> </dd></param>
<param name="dcompositionDevice"><dd> <p>Receives an interface reference to the newly created device object. The reference is of the type specified by the <em>iid</em> parameter. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A device object serves as the factory for all other DirectComposition objects. It also controls transactional composition through the <see cref="M:SharpDX.DirectComposition.Device2.Commit"/> method. </p><p>The <em>renderingDevice</em> parameter may point to a DXGI, Direct3D, Direct2D device object, or it may be <c>null</c>. This parameter affects the behavior of the <see cref="M:SharpDX.DirectComposition.Device2.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)"/>, <see cref="M:SharpDX.DirectComposition.Device2.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)"/> and <see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/> methods. </p><p>If the <em>renderingDevice</em> parameter is <c>null</c> then the returned DirectComposition device cannot directly create DirectComposition surface objects. In particular, <see cref="M:SharpDX.DirectComposition.Device2.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)"/> and <see cref="M:SharpDX.DirectComposition.Device2.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)"/> methods return E_INVALIDARG, regardless of the supplied parameters. However, such a DirectComposition device object can still be used to indirectly create surfaces if the application creates a surface factory object via the <see cref="M:SharpDX.DirectComposition.Device2.CreateSurfaceFactory(SharpDX.ComObject,SharpDX.DirectComposition.SurfaceFactory)"/> method. </p><p>If the <em>renderingDevice</em> parameter points to a DXGI device, that device is used to allocate all video memory needed by the <see cref="M:SharpDX.DirectComposition.Device2.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)"/> and <see cref="M:SharpDX.DirectComposition.Device2.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)"/> methods. Moreover, the <see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/> method returns an interface reference to a DXGI surface that belongs to that same DXGI device. </p><p>If the <em>renderingDevice</em> parameter points to a Direct2D device object, DirectComposition extracts from it the underlying DXGI device object and uses it as if that DXGI device object had been passed in as the <em>renderingDevice</em> parameter. However, passing in a Direct2D object further causes <see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/> to accept __uuidof(<see cref="!:SharpDX.Direct2D1.DeviceContext"/>) for its <em>iid</em> parameter for any objects created with the <see cref="M:SharpDX.DirectComposition.Device2.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)"/> or <see cref="M:SharpDX.DirectComposition.Device2.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)"/> methods. In that case, the Direct2D device context object returned by <see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/> will belong to the same Direct2D device passed as the <em>renderingDevice</em> parameter. </p><p>If the <em>iid</em> parameter is __uuidof(<see cref="T:SharpDX.DirectComposition.Device"/>), then the dcompositionDevice parameter receives a reference to a Version 1 <see cref="T:SharpDX.DirectComposition.Device"/> interface, but the underlying object is a Version 2 desktop device object. The application can later obtain a reference to either the <see cref="T:SharpDX.DirectComposition.Device2"/> or <see cref="T:SharpDX.DirectComposition.DesktopDevice"/> interfaces by calling the <strong>QueryInterface</strong> method on that device. Similarly, all DirectComposition objects created from such a device are Version 2 objects under the covers. For example, the <see cref="M:SharpDX.DirectComposition.Device.CreateVisual(SharpDX.DirectComposition.Visual)"/> method will return an <see cref="T:SharpDX.DirectComposition.Visual"/> interface to the created visual, but the application can obtain a reference to the <see cref="T:SharpDX.DirectComposition.Visual2"/> interface via the QueryInterface method. This behavior allows an application written to the DirectComposition V1 API to incrementally adopt DirectComposition V2 features by changing the device creation method from <see cref="M:SharpDX.DirectComposition.DComp.CreateDevice(SharpDX.DXGI.Device,System.Guid,System.IntPtr@)"/> to <see cref="M:SharpDX.DirectComposition.DComp.CreateDevice2(SharpDX.ComObject,System.Guid,System.IntPtr@)"/>, while still requesting the <see cref="T:SharpDX.DirectComposition.Device2"/> interface. This allows the rest of the code to remain unchanged, while allowing the application to use QueryInterface in just the places where new functionality is needed.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCompositionCreateDevice2']/*"/>
<msdn-id>dn280347</msdn-id>
<unmanaged>HRESULT DCompositionCreateDevice2([In, Optional] IUnknown* renderingDevice,[In] const GUID&amp; iid,[Out] void** dcompositionDevice)</unmanaged>
<unmanaged-short>DCompositionCreateDevice2</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.DComp.CreateDevice(SharpDX.DXGI.Device,System.Guid,System.IntPtr@)">
<summary>
<p>Creates a new device object that can be used to create other Microsoft DirectComposition objects.</p>
</summary>
<param name="dxgiDevice"><dd> <p>The DXGI device to use to create DirectComposition surface objects.</p> </dd></param>
<param name="iid"><dd> <p>The identifier of the interface to retrieve. </p> </dd></param>
<param name="dcompositionDevice"><dd> <p>Receives an interface reference to the newly created device object. The reference is of the type specified by the <em>iid</em> parameter. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A device object serves as the factory for all other DirectComposition objects. It also controls transactional composition through the <strong><see cref="M:SharpDX.DirectComposition.Device.Commit"/></strong> method.</p><p>The DXGI device specified by <em>dxgiDevice</em> is used to create all DirectComposition surface objects. In particular, the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method returns an interface reference to a DXGI surface that belongs to the device specified by the <em>dxgiDevice</em> parameter. </p><p>When creating the DXGI device, developers must specify the <strong>D3D11_CREATE_DEVICE BGRA_SUPPORT</strong> or <strong><see cref="!:SharpDX.Direct3D10.DeviceCreationFlags.BgraSupport"/></strong> flag for Direct2D interoperability with Microsoft Direct3D resources.</p><p>The <em>iid</em> parameter must be <code>__uuidof(<see cref="T:SharpDX.DirectComposition.Device"/>)</code>, and the <em>dcompositionDevice</em> parameter receives a reference to an <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCompositionCreateDevice']/*"/>
<msdn-id>hh437359</msdn-id>
<unmanaged>HRESULT DCompositionCreateDevice([In, Optional] IDXGIDevice* dxgiDevice,[In] const GUID&amp; iid,[Out] void** dcompositionDevice)</unmanaged>
<unmanaged-short>DCompositionCreateDevice</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.ResultCode">
<summary>
Functions
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='SharpDX.DirectComposition.ResultCode']/*"/>
</member>
<member name="F:SharpDX.DirectComposition.ResultCode.SurfaceNotBeingRendered">
<summary>Constant SurfaceNotBeingRendered.</summary>
<unmanaged>DCOMPOSITION_ERROR_SURFACE_NOT_BEING_RENDERED</unmanaged>
</member>
<member name="F:SharpDX.DirectComposition.ResultCode.WindowAlreadyComposed">
<summary>Constant WindowAlreadyComposed.</summary>
<unmanaged>DCOMPOSITION_ERROR_WINDOW_ALREADY_COMPOSED</unmanaged>
</member>
<member name="F:SharpDX.DirectComposition.ResultCode.SurfaceBeingRendered">
<summary>Constant SurfaceBeingRendered.</summary>
<unmanaged>DCOMPOSITION_ERROR_SURFACE_BEING_RENDERED</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.Clip">
<summary>
<p>Represents a clip object that is used to restrict the rendering of a visual subtree to a rectangular area. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionClip']/*"/>
<msdn-id>hh437391</msdn-id>
<unmanaged>IDCompositionClip</unmanaged>
<unmanaged-short>IDCompositionClip</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Clip.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Clip"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Clip.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Clip">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Clip"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="T:SharpDX.DirectComposition.DeviceDebug">
<summary>
<p>Provides access to rendering features that help with application debugging and performance tuning. This interface can be queried from the DirectComposition device interface.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDeviceDebug']/*"/>
<msdn-id>dn280378</msdn-id>
<unmanaged>IDCompositionDeviceDebug</unmanaged>
<unmanaged-short>IDCompositionDeviceDebug</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.DeviceDebug.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.DeviceDebug"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.DeviceDebug.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.DeviceDebug">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.DeviceDebug"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.DeviceDebug.EnableDebugCounters">
<summary>
<p>Enables display of performance debugging counters.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Performance counters are displayed on the top-right corner of the screen. From left to right, Microsoft DirectComposition displays the following information: </p><ul> <li>The composition engine frame rate, in frames per second, averaged over the last 60 composition frames</li> <li>The overall CPU usage of the composition thread, in milliseconds
</li> </ul><p>The DirectComposition composition engine operates on the entire desktop all at once, so the performance counters measure the total cost of desktop composition, not just the cost of any one particular application. If the application occupies the entire screen, however, it is reasonable to assume that all of the composition cost is due to that one application.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDeviceDebug::EnableDebugCounters']/*"/>
<msdn-id>dn280380</msdn-id>
<unmanaged>HRESULT IDCompositionDeviceDebug::EnableDebugCounters()</unmanaged>
<unmanaged-short>IDCompositionDeviceDebug::EnableDebugCounters</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.DeviceDebug.DisableDebugCounters">
<summary>
<p>Disables display of performance debugging counters.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Microsoft DirectComposition keeps a count of how many DirectComposition devices have performance counters enabled, for the entire desktop session. If the count is non-zero, the performance counters are displayed. Therefore, disabling the counters may not make them go away if another device is also requesting display of the counters.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionDeviceDebug::DisableDebugCounters']/*"/>
<msdn-id>dn280379</msdn-id>
<unmanaged>HRESULT IDCompositionDeviceDebug::DisableDebugCounters()</unmanaged>
<unmanaged-short>IDCompositionDeviceDebug::DisableDebugCounters</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.RectangleClip">
<summary>
<p>Represents a clip object that restricts the rendering of a visual subtree to the specified rectangular region. Optionally, the clip object may have rounded corners specified.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip']/*"/>
<msdn-id>hh437434</msdn-id>
<unmanaged>IDCompositionRectangleClip</unmanaged>
<unmanaged-short>IDCompositionRectangleClip</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.RectangleClip"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.RectangleClip">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.RectangleClip"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetLeft(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the Left property of a clip rectangle. The Left property specifies the x-coordinate of the upper-left corner of the clip rectangle.</p>
</summary>
<param name="animation"><dd> <p>The new value of the Left property, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>left</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the Left property was previously animated, this method removes the animation and sets the Left property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetLeft']/*"/>
<msdn-id>hh448899</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetLeft([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetLeft</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetLeft(System.Single)">
<summary>
<p>Changes the value of the Left property of a clip rectangle. The Left property specifies the x-coordinate of the upper-left corner of the clip rectangle.</p>
</summary>
<param name="left"><dd> <p>The new value of the Left property, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>left</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the Left property was previously animated, this method removes the animation and sets the Left property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetLeft']/*"/>
<msdn-id>hh448899</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetLeft([In] float left)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetLeft</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTop(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the Top property of a clip rectangle. The Top property specifies the y-coordinate of the upper-left corner of the clip rectangle.</p>
</summary>
<param name="animation"><dd> <p>The new value of the Top property, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>top</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the Top property was previously animated, this method removes the animation and sets the Top property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTop']/*"/>
<msdn-id>hh448921</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTop([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTop</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTop(System.Single)">
<summary>
<p>Changes the value of the Top property of a clip rectangle. The Top property specifies the y-coordinate of the upper-left corner of the clip rectangle.</p>
</summary>
<param name="top"><dd> <p>The new value of the Top property, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>top</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the Top property was previously animated, this method removes the animation and sets the Top property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTop']/*"/>
<msdn-id>hh448921</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTop([In] float top)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTop</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetRight(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the Right property of a clip rectangle. The Right property specifies the x-coordinate of the lower-right corner of the clip rectangle.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the Right property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Right property unless this method is called again. If the Right property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetRight']/*"/>
<msdn-id>hh448907</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetRight([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetRight</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetRight(System.Single)">
<summary>
<p>Animates the value of the Right property of a clip rectangle. The Right property specifies the x-coordinate of the lower-right corner of the clip rectangle.</p>
</summary>
<param name="right"><dd> <p>An animation object that determines how the value of the Right property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Right property unless this method is called again. If the Right property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetRight']/*"/>
<msdn-id>hh448907</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetRight([In] float right)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetRight</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottom(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the Bottom property of a clip object. The Bottom property specifies the y-coordinate of the lower-right corner of the clip rectangle. </p>
</summary>
<param name="animation"><dd> <p>The new value of the Bottom property, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>bottom</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the Bottom property was previously animated, this method removes the animation and sets the Bottom property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottom']/*"/>
<msdn-id>hh448860</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottom([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottom</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottom(System.Single)">
<summary>
<p>Changes the value of the Bottom property of a clip object. The Bottom property specifies the y-coordinate of the lower-right corner of the clip rectangle. </p>
</summary>
<param name="bottom"><dd> <p>The new value of the Bottom property, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>bottom</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the Bottom property was previously animated, this method removes the animation and sets the Bottom property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottom']/*"/>
<msdn-id>hh448860</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottom([In] float bottom)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottom</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopLeftRadiusX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the TopLeftRadiusX property of this clip. The TopLeftRadiusX property specifies the x radius of the ellipse that rounds the top-left corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopLeftRadiusX']/*"/>
<msdn-id>hh448911</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopLeftRadiusX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopLeftRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopLeftRadiusX(System.Single)">
<summary>
<p>Animates the value of the TopLeftRadiusX property of this clip. The TopLeftRadiusX property specifies the x radius of the ellipse that rounds the top-left corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopLeftRadiusX']/*"/>
<msdn-id>hh448911</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopLeftRadiusX([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopLeftRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopLeftRadiusY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the TopLeftRadiusY property of this clip. The TopLeftRadiusY property specifies the y radius of the ellipse that rounds the top-left corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopLeftRadiusY']/*"/>
<msdn-id>hh448914</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopLeftRadiusY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopLeftRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopLeftRadiusY(System.Single)">
<summary>
<p>Animates the value of the TopLeftRadiusY property of this clip. The TopLeftRadiusY property specifies the y radius of the ellipse that rounds the top-left corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopLeftRadiusY']/*"/>
<msdn-id>hh448914</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopLeftRadiusY([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopLeftRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopRightRadiusX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the TopRightRadiusX property of this clip. The TopRightRadiusX property specifies the x radius of the ellipse that rounds the top-right corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopRightRadiusX']/*"/>
<msdn-id>hh448917</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopRightRadiusX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopRightRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopRightRadiusX(System.Single)">
<summary>
<p>Animates the value of the TopRightRadiusX property of this clip. The TopRightRadiusX property specifies the x radius of the ellipse that rounds the top-right corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopRightRadiusX']/*"/>
<msdn-id>hh448917</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopRightRadiusX([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopRightRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopRightRadiusY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the TopRightRadiusY property of this clip. The TopRightRadiusY property specifies the y radius of the ellipse that rounds the top-right corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopRightRadiusY']/*"/>
<msdn-id>hh448920</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopRightRadiusY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopRightRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetTopRightRadiusY(System.Single)">
<summary>
<p>Animates the value of the TopRightRadiusY property of this clip. The TopRightRadiusY property specifies the y radius of the ellipse that rounds the top-right corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetTopRightRadiusY']/*"/>
<msdn-id>hh448920</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetTopRightRadiusY([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetTopRightRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomLeftRadiusX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the BottomLeftRadiusX property of this clip. The BottomLeftRadiusX property specifies the x radius of the ellipse that rounds the lower-left corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomLeftRadiusX']/*"/>
<msdn-id>hh437438</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomLeftRadiusX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomLeftRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomLeftRadiusX(System.Single)">
<summary>
<p>Animates the value of the BottomLeftRadiusX property of this clip. The BottomLeftRadiusX property specifies the x radius of the ellipse that rounds the lower-left corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomLeftRadiusX']/*"/>
<msdn-id>hh437438</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomLeftRadiusX([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomLeftRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomLeftRadiusY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the BottomLeftRadiusY property of this clip. The BottomLeftRadiusY property specifies the y radius of the ellipse that rounds the lower-left corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomLeftRadiusY']/*"/>
<msdn-id>hh437445</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomLeftRadiusY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomLeftRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomLeftRadiusY(System.Single)">
<summary>
<p>Animates the value of the BottomLeftRadiusY property of this clip. The BottomLeftRadiusY property specifies the y radius of the ellipse that rounds the lower-left corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomLeftRadiusY']/*"/>
<msdn-id>hh437445</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomLeftRadiusY([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomLeftRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomRightRadiusX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the BottomRightRadiusX property of this clip. The BottomRightRadiusX property specifies the x radius of the ellipse that rounds the lower-right corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomRightRadiusX']/*"/>
<msdn-id>hh448853</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomRightRadiusX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomRightRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomRightRadiusX(System.Single)">
<summary>
<p>Animates the value of the BottomRightRadiusX property of this clip. The BottomRightRadiusX property specifies the x radius of the ellipse that rounds the lower-right corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the x radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the x radius unless this method is called again. If the x radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomRightRadiusX']/*"/>
<msdn-id>hh448853</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomRightRadiusX([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomRightRadiusX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomRightRadiusY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the BottomRightRadiusY property of this clip. The BottomRightRadiusY property specifies the y radius of the ellipse that rounds the lower-right corner of the clip.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomRightRadiusY']/*"/>
<msdn-id>hh448858</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomRightRadiusY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomRightRadiusY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RectangleClip.SetBottomRightRadiusY(System.Single)">
<summary>
<p>Animates the value of the BottomRightRadiusY property of this clip. The BottomRightRadiusY property specifies the y radius of the ellipse that rounds the lower-right corner of the clip.</p>
</summary>
<param name="radius"><dd> <p>An animation object that determines how the value of the y radius changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the y radius unless this method is called again. If the y radius was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRectangleClip::SetBottomRightRadiusY']/*"/>
<msdn-id>hh448858</msdn-id>
<unmanaged>HRESULT IDCompositionRectangleClip::SetBottomRightRadiusY([In] float radius)</unmanaged>
<unmanaged-short>IDCompositionRectangleClip::SetBottomRightRadiusY</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.RotateTransform">
<summary>
<p>Represents a 2D transformation that affects the rotation of a visual around the z-axis. The coordinate system is rotated around the specified center point. </p>
</summary>
<remarks>
<p>A rotate transform represents the following 3-by-3 matrix:</p><p></p><p>The effect is to rotate the coordinate system clockwise or counter-clockwise, and to apply the corresponding translation such that the center point does not move.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform']/*"/>
<msdn-id>hh448924</msdn-id>
<unmanaged>IDCompositionRotateTransform</unmanaged>
<unmanaged-short>IDCompositionRotateTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.RotateTransform"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.RotateTransform">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.RotateTransform"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.SetAngle(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the Angle property of a 2D rotation transform. The Angle property specifies the rotation angle.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the Angle property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Angle property unless this method is called again. If the Angle property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform::SetAngle']/*"/>
<msdn-id>hh448974</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform::SetAngle([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform::SetAngle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.SetAngle(System.Single)">
<summary>
<p>Animates the value of the Angle property of a 2D rotation transform. The Angle property specifies the rotation angle.</p>
</summary>
<param name="angle"><dd> <p>An animation object that determines how the value of the Angle property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Angle property unless this method is called again. If the Angle property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform::SetAngle']/*"/>
<msdn-id>hh448974</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform::SetAngle([In] float angle)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform::SetAngle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.SetCenterX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterX property of a 2D rotation transform. The CenterX property specifies the x-coordinate of the point about which the rotation is performed.</p>
</summary>
<param name="animation"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform::SetCenterX']/*"/>
<msdn-id>hh448978</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform::SetCenterX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.SetCenterX(System.Single)">
<summary>
<p>Changes the value of the CenterX property of a 2D rotation transform. The CenterX property specifies the x-coordinate of the point about which the rotation is performed.</p>
</summary>
<param name="centerX"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform::SetCenterX']/*"/>
<msdn-id>hh448978</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform::SetCenterX([In] float centerX)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.SetCenterY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterY property of a 2D rotation transform. The CenterY property specifies the y-coordinate of the point about which the rotation is performed.</p>
</summary>
<param name="animation"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform::SetCenterY']/*"/>
<msdn-id>hh448984</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform::SetCenterY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform.SetCenterY(System.Single)">
<summary>
<p>Changes the value of the CenterY property of a 2D rotation transform. The CenterY property specifies the y-coordinate of the point about which the rotation is performed.</p>
</summary>
<param name="centerY"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform::SetCenterY']/*"/>
<msdn-id>hh448984</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform::SetCenterY([In] float centerY)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform::SetCenterY</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.RotateTransform3D">
<summary>
<p>Represents a 3D transformation that affects the rotation of a visual along an arbitrary axis in 3D space. The coordinate system is rotated around the specified center point. </p>
</summary>
<remarks>
<p>A 3D rotate transform represents the following 4-by-4 matrix:</p><p></p><p>where the <em>offsetX</em>, <em>offsetY</em>, and <em>offsetZ</em> values of the matrix are the following: </p><p></p><p>The effect is to rotate the coordinate system clockwise or counter-clockwise around the specified axis, and to apply the corresponding translation such that the center point does not move.</p><p>A new 3D rotation transform object has a default static value of zero for the Angle, CenterX, CenterY, AxisX, and AxisY properties, and a default static value of 1.0 for the AxisZ property.</p><p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D']/*"/>
<msdn-id>hh448927</msdn-id>
<unmanaged>IDCompositionRotateTransform3D</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.RotateTransform3D"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.RotateTransform3D">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.RotateTransform3D"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAngle(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the Angle property of a 3D rotation transform. The Angle property specifies the rotation angle. The default value is zero.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the Angle property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Angle property unless this method is called again. If the Angle property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected 3D transform. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAngle']/*"/>
<msdn-id>hh448931</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAngle([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAngle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAngle(System.Single)">
<summary>
<p>Animates the value of the Angle property of a 3D rotation transform. The Angle property specifies the rotation angle. The default value is zero.</p>
</summary>
<param name="angle"><dd> <p>An animation object that determines how the value of the Angle property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the Angle property unless this method is called again. If the Angle property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected 3D transform. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAngle']/*"/>
<msdn-id>hh448931</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAngle([In] float angle)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAngle</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAxisX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the AxisX property of a 3D rotation transform. The AxisX property specifies the x-coordinate for the axis vector of rotation. The default value is zero.</p>
</summary>
<param name="animation"><dd> <p>The new x-coordinate for the axis vector of rotation. </p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p><p>This method fails if the <em>axisX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the AxisX property was previously animated, this method removes the animation and sets the AxisX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAxisX']/*"/>
<msdn-id>hh448935</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAxisX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAxisX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAxisX(System.Single)">
<summary>
<p>Changes the value of the AxisX property of a 3D rotation transform. The AxisX property specifies the x-coordinate for the axis vector of rotation. The default value is zero.</p>
</summary>
<param name="axisX"><dd> <p>The new x-coordinate for the axis vector of rotation. </p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p><p>This method fails if the <em>axisX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the AxisX property was previously animated, this method removes the animation and sets the AxisX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAxisX']/*"/>
<msdn-id>hh448935</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAxisX([In] float axisX)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAxisX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAxisY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the AxisY property of a 3D rotation transform. The AxisY property specifies the y-coordinate for the axis vector of rotation. The default value is zero.</p>
</summary>
<param name="animation"><dd> <p>The new y-coordinate for the axis vector of rotation. </p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p><p>This method fails if the <em>axisY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the AxisY property was previously animated, this method removes the animation and sets the AxisY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAxisY']/*"/>
<msdn-id>hh448941</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAxisY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAxisY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAxisY(System.Single)">
<summary>
<p>Changes the value of the AxisY property of a 3D rotation transform. The AxisY property specifies the y-coordinate for the axis vector of rotation. The default value is zero.</p>
</summary>
<param name="axisY"><dd> <p>The new y-coordinate for the axis vector of rotation. </p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p><p>This method fails if the <em>axisY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the AxisY property was previously animated, this method removes the animation and sets the AxisY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAxisY']/*"/>
<msdn-id>hh448941</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAxisY([In] float axisY)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAxisY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAxisZ(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the AxisZ property of a 3D rotation transform. The AxisZ property specifies the z-coordinate for the axis vector of rotation. The default value is 1.0.</p>
</summary>
<param name="animation"><dd> <p>The new z-coordinate for the axis vector of rotation. </p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p><p>This method fails if the <em>axisZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the AxisZ property was previously animated, this method removes the animation and sets the AxisX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAxisZ']/*"/>
<msdn-id>hh448947</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAxisZ([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAxisZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetAxisZ(System.Single)">
<summary>
<p>Changes the value of the AxisZ property of a 3D rotation transform. The AxisZ property specifies the z-coordinate for the axis vector of rotation. The default value is 1.0.</p>
</summary>
<param name="axisZ"><dd> <p>The new z-coordinate for the axis vector of rotation. </p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When setting the axis to a non-default value, you should always set all three axis properties (AxisX, AxisY, and AxisZ).</p><p>This method fails if the <em>axisZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the AxisZ property was previously animated, this method removes the animation and sets the AxisX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetAxisZ']/*"/>
<msdn-id>hh448947</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetAxisZ([In] float axisZ)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetAxisZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetCenterX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the CenterX property of a 3D rotation transform. The CenterX property specifies the x-coordinate of the point about which the rotation is performed. The default value is zero.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the CenterX property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the CenterX property unless this method is called again. If the CenterX property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetCenterX']/*"/>
<msdn-id>hh448955</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetCenterX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetCenterX(System.Single)">
<summary>
<p>Animates the value of the CenterX property of a 3D rotation transform. The CenterX property specifies the x-coordinate of the point about which the rotation is performed. The default value is zero.</p>
</summary>
<param name="centerX"><dd> <p>An animation object that determines how the value of the CenterX property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the CenterX property unless this method is called again. If the CenterX property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetCenterX']/*"/>
<msdn-id>hh448955</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetCenterX([In] float centerX)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetCenterY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterY property of a 3D rotation transform. The CenterY property specifies the y-coordinate of the point about which the rotation is performed. The default value is zero.</p>
</summary>
<param name="animation"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetCenterY']/*"/>
<msdn-id>hh448959</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetCenterY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetCenterY(System.Single)">
<summary>
<p>Changes the value of the CenterY property of a 3D rotation transform. The CenterY property specifies the y-coordinate of the point about which the rotation is performed. The default value is zero.</p>
</summary>
<param name="centerY"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetCenterY']/*"/>
<msdn-id>hh448959</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetCenterY([In] float centerY)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetCenterZ(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterZ property of a 3D rotation transform. The CenterZ property specifies the z-coordinate of the point about which the rotation is performed. The default value is zero.</p>
</summary>
<param name="animation"><dd> <p>The new z-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterZ property was previously animated, this method removes the animation and sets the CenterZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetCenterZ']/*"/>
<msdn-id>hh448965</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetCenterZ([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetCenterZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.RotateTransform3D.SetCenterZ(System.Single)">
<summary>
<p>Changes the value of the CenterZ property of a 3D rotation transform. The CenterZ property specifies the z-coordinate of the point about which the rotation is performed. The default value is zero.</p>
</summary>
<param name="centerZ"><dd> <p>The new z-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterZ property was previously animated, this method removes the animation and sets the CenterZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionRotateTransform3D::SetCenterZ']/*"/>
<msdn-id>hh448965</msdn-id>
<unmanaged>HRESULT IDCompositionRotateTransform3D::SetCenterZ([In] float centerZ)</unmanaged>
<unmanaged-short>IDCompositionRotateTransform3D::SetCenterZ</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.ScaleTransform">
<summary>
<p>Represents a 2D transformation that affects the scale of a visual along the x-axis and y-axis. The coordinate system is scaled from the specified center point. </p>
</summary>
<remarks>
<p>A scale transform represents the following 3-by-3 matrix:</p><p></p><p>The effect is to scale the coordinate system up or down and apply the corresponding translation such that the center point does not move.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform']/*"/>
<msdn-id>hh448990</msdn-id>
<unmanaged>IDCompositionScaleTransform</unmanaged>
<unmanaged-short>IDCompositionScaleTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.ScaleTransform"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.ScaleTransform">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.ScaleTransform"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetScaleX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the ScaleX property of a 2D scale transform. The ScaleX property specifies the scale factor along the x-axis.</p>
</summary>
<param name="animation"><dd> <p>An animation object that determines how the value of the ScaleX property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the ScaleX property unless this method is called again. If the ScaleX property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetScaleX']/*"/>
<msdn-id>hh449046</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetScaleX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetScaleX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetScaleX(System.Single)">
<summary>
<p>Animates the value of the ScaleX property of a 2D scale transform. The ScaleX property specifies the scale factor along the x-axis.</p>
</summary>
<param name="scaleX"><dd> <p>An animation object that determines how the value of the ScaleX property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the ScaleX property unless this method is called again. If the ScaleX property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetScaleX']/*"/>
<msdn-id>hh449046</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetScaleX([In] float scaleX)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetScaleX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetScaleY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the ScaleY property of a 2D scale transform. The ScaleY property specifies the scale factor along the y-axis.</p>
</summary>
<param name="animation"><dd> <p>The new y-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleY property was previously animated, this method removes the animation and sets the ScaleY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetScaleY']/*"/>
<msdn-id>hh449050</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetScaleY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetScaleY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetScaleY(System.Single)">
<summary>
<p>Changes the value of the ScaleY property of a 2D scale transform. The ScaleY property specifies the scale factor along the y-axis.</p>
</summary>
<param name="scaleY"><dd> <p>The new y-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleY property was previously animated, this method removes the animation and sets the ScaleY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetScaleY']/*"/>
<msdn-id>hh449050</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetScaleY([In] float scaleY)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetScaleY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetCenterX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterX property of a 2D scale transform. The CenterX property specifies the x-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="animation"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetCenterX']/*"/>
<msdn-id>hh449032</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetCenterX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetCenterX(System.Single)">
<summary>
<p>Changes the value of the CenterX property of a 2D scale transform. The CenterX property specifies the x-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="centerX"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetCenterX']/*"/>
<msdn-id>hh449032</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetCenterX([In] float centerX)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetCenterY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterY property of a 2D scale transform. The CenterY property specifies the y-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="animation"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetCenterY']/*"/>
<msdn-id>hh449038</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetCenterY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform.SetCenterY(System.Single)">
<summary>
<p>Changes the value of the CenterY property of a 2D scale transform. The CenterY property specifies the y-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="centerY"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform::SetCenterY']/*"/>
<msdn-id>hh449038</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform::SetCenterY([In] float centerY)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform::SetCenterY</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.ScaleTransform3D">
<summary>
<p>Represents a 3D transformation effect that affects the scale of a visual along the x-axis, y-axis, and z-axis. The coordinate system is scaled from the specified center point. </p>
</summary>
<remarks>
<p>A 3D scale transform represents the following 4-by-4 matrix:</p><p></p><p>The effect is to scale the blending of the visual's subtree up or down, and apply the corresponding translation such that the center point does not move.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D']/*"/>
<msdn-id>hh448992</msdn-id>
<unmanaged>IDCompositionScaleTransform3D</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.ScaleTransform3D"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.ScaleTransform3D">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.ScaleTransform3D"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetScaleX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the ScaleX property of a 3D scale transform. The ScaleX property specifies the scale factor along the x-axis.</p>
</summary>
<param name="animation"><dd> <p>The new x-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleX property was previously animated, this method removes the animation and sets the ScaleX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetScaleX']/*"/>
<msdn-id>hh449014</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetScaleX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetScaleX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetScaleX(System.Single)">
<summary>
<p>Changes the value of the ScaleX property of a 3D scale transform. The ScaleX property specifies the scale factor along the x-axis.</p>
</summary>
<param name="scaleX"><dd> <p>The new x-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleX property was previously animated, this method removes the animation and sets the ScaleX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetScaleX']/*"/>
<msdn-id>hh449014</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetScaleX([In] float scaleX)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetScaleX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetScaleY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the ScaleY property of a 3D scale transform. The ScaleY property specifies the scale factor along the y-axis.</p>
</summary>
<param name="animation"><dd> <p>The new y-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleY property was previously animated, this method removes the animation and sets the ScaleY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetScaleY']/*"/>
<msdn-id>hh449020</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetScaleY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetScaleY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetScaleY(System.Single)">
<summary>
<p>Changes the value of the ScaleY property of a 3D scale transform. The ScaleY property specifies the scale factor along the y-axis.</p>
</summary>
<param name="scaleY"><dd> <p>The new y-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleY property was previously animated, this method removes the animation and sets the ScaleY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetScaleY']/*"/>
<msdn-id>hh449020</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetScaleY([In] float scaleY)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetScaleY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetScaleZ(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the ScaleZ property of a 3D scale transform. The ScaleZ property specifies the scale factor along the z-axis.</p>
</summary>
<param name="animation"><dd> <p>The new z-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleZ property was previously animated, this method removes the animation and sets the ScaleZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetScaleZ']/*"/>
<msdn-id>hh449026</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetScaleZ([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetScaleZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetScaleZ(System.Single)">
<summary>
<p>Changes the value of the ScaleZ property of a 3D scale transform. The ScaleZ property specifies the scale factor along the z-axis.</p>
</summary>
<param name="scaleZ"><dd> <p>The new z-axis scale factor.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>scaleZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the ScaleZ property was previously animated, this method removes the animation and sets the ScaleZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetScaleZ']/*"/>
<msdn-id>hh449026</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetScaleZ([In] float scaleZ)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetScaleZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetCenterX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterX property of a 3D scale transform. The CenterX property specifies the x-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="animation"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetCenterX']/*"/>
<msdn-id>hh448994</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetCenterX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetCenterX(System.Single)">
<summary>
<p>Changes the value of the CenterX property of a 3D scale transform. The CenterX property specifies the x-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="centerX"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetCenterX']/*"/>
<msdn-id>hh448994</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetCenterX([In] float centerX)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetCenterY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterY property of a 3D scale transform. The CenterY property specifies the y-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="animation"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetCenterY']/*"/>
<msdn-id>hh449002</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetCenterY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetCenterY(System.Single)">
<summary>
<p>Changes the value of the CenterY property of a 3D scale transform. The CenterY property specifies the y-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="centerY"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetCenterY']/*"/>
<msdn-id>hh449002</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetCenterY([In] float centerY)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetCenterZ(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterZ property of a 3D scale transform. The CenterZ property specifies the z-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="animation"><dd> <p>The new z-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterZ property was previously animated, this method removes the animation and sets the CenterZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetCenterZ']/*"/>
<msdn-id>hh449008</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetCenterZ([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetCenterZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.ScaleTransform3D.SetCenterZ(System.Single)">
<summary>
<p>Changes the value of the CenterZ property of a 3D scale transform. The CenterZ property specifies the z-coordinate of the point about which scaling is performed. </p>
</summary>
<param name="centerZ"><dd> <p>The new z-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterZ property was previously animated, this method removes the animation and sets the CenterZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionScaleTransform3D::SetCenterZ']/*"/>
<msdn-id>hh449008</msdn-id>
<unmanaged>HRESULT IDCompositionScaleTransform3D::SetCenterZ([In] float centerZ)</unmanaged>
<unmanaged-short>IDCompositionScaleTransform3D::SetCenterZ</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.SkewTransform">
<summary>
<p>Represents a 2D transformation that affects the skew of a visual along the x-axis and y-axis. The coordinate system is skewed around the specified center point. </p>
</summary>
<remarks>
<p>A skew transform represents the following 3-by-3 matrix: </p><p></p><p>The effect is to slant the coordinate system along the x-axis and y-axis such that a rectangle becomes a parallelogram, and to apply the corresponding translation such that the center point does not move.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform']/*"/>
<msdn-id>hh449057</msdn-id>
<unmanaged>IDCompositionSkewTransform</unmanaged>
<unmanaged-short>IDCompositionSkewTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.SkewTransform"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.SkewTransform">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.SkewTransform"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetAngleX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the AngleX property of a 2D skew transform. The AngleX property specifies the skew angle along the x-axis.</p>
</summary>
<param name="animation"><dd> <p>An animation object that represents how the value of the AngleX property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the AngleX property unless this method is called again. If the AngleX property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetAngleX']/*"/>
<msdn-id>hh449061</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetAngleX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetAngleX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetAngleX(System.Single)">
<summary>
<p>Animates the value of the AngleX property of a 2D skew transform. The AngleX property specifies the skew angle along the x-axis.</p>
</summary>
<param name="angleX"><dd> <p>An animation object that represents how the value of the AngleX property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the AngleX property unless this method is called again. If the AngleX property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetAngleX']/*"/>
<msdn-id>hh449061</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetAngleX([In] float angleX)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetAngleX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetAngleY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Animates the value of the AngleY property of a 2D skew transform. The AngleY property specifies the skew angle along the y-axis.</p>
</summary>
<param name="animation"><dd> <p>An animation object that represents how the value of the AngleY property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the AngleY property unless this method is called again. If the AngleY property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetAngleY']/*"/>
<msdn-id>hh449067</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetAngleY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetAngleY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetAngleY(System.Single)">
<summary>
<p>Animates the value of the AngleY property of a 2D skew transform. The AngleY property specifies the skew angle along the y-axis.</p>
</summary>
<param name="angleY"><dd> <p>An animation object that represents how the value of the AngleY property changes over time. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the AngleY property unless this method is called again. If the AngleY property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetAngleY']/*"/>
<msdn-id>hh449067</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetAngleY([In] float angleY)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetAngleY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetCenterX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterX property of a 2D skew transform. The CenterX property specifies the x-coordinate of the point about which the skew is performed.</p>
</summary>
<param name="animation"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetCenterX']/*"/>
<msdn-id>hh449071</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetCenterX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetCenterX(System.Single)">
<summary>
<p>Changes the value of the CenterX property of a 2D skew transform. The CenterX property specifies the x-coordinate of the point about which the skew is performed.</p>
</summary>
<param name="centerX"><dd> <p>The new x-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterX property was previously animated, this method removes the animation and sets the CenterX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetCenterX']/*"/>
<msdn-id>hh449071</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetCenterX([In] float centerX)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetCenterX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetCenterY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the CenterY property of a 2D skew transform. The CenterY property specifies the y-coordinate of the point about which the skew is performed.</p>
</summary>
<param name="animation"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetCenterY']/*"/>
<msdn-id>hh449077</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetCenterY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetCenterY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SkewTransform.SetCenterY(System.Single)">
<summary>
<p>Changes the value of the CenterY property of a 2D skew transform. The CenterY property specifies the y-coordinate of the point about which the skew is performed.</p>
</summary>
<param name="centerY"><dd> <p>The new y-coordinate of the center point.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>centerY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the CenterY property was previously animated, this method removes the animation and sets the CenterY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSkewTransform::SetCenterY']/*"/>
<msdn-id>hh449077</msdn-id>
<unmanaged>HRESULT IDCompositionSkewTransform::SetCenterY([In] float centerY)</unmanaged>
<unmanaged-short>IDCompositionSkewTransform::SetCenterY</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Surface">
<summary>
<p>Represents a physical bitmap that can be associated with a visual for composition in a visual tree. This interface can also be used to update the bitmap contents. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurface']/*"/>
<msdn-id>hh449083</msdn-id>
<unmanaged>IDCompositionSurface</unmanaged>
<unmanaged-short>IDCompositionSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Surface.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Surface"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Surface.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Surface">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Surface"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)">
<summary>
<p>Initiates drawing on this Microsoft DirectComposition surface object. The update rectangle must be within the boundaries of the surface; otherwise, this method fails. </p>
</summary>
<param name="updateRect"><dd> <p>The rectangle to be updated. If this parameter is <c>null</c>, the entire bitmap is updated.</p> </dd></param>
<param name="iid"><dd> <p>The identifier of the interface to retrieve.</p> </dd></param>
<param name="updateObject"><dd> <p>Receives an interface reference of the type specified in the <em>iid</em> parameter. This parameter must not be <c>null</c>.</p> <p><strong>Note</strong>??In Windows?8, this parameter was <em>surface</em>.</p> </dd></param>
<param name="updateOffset"><dd> <p>The offset into the surface where the application should draw updated content. This offset will reference the upper left corner of the update rectangle.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. </p></returns>
<remarks>
<p>This method enables an application to incrementally update the contents of a DirectComposition surface object. The application must use the following sequence: </p><ol> <li>Call <strong>BeginDraw</strong> to initiate the incremental update.</li> <li>Use the retrieved surface as a render target and draw the updated contents at the retrieved offset.</li> <li>Call the <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong> method to finish the update.</li> </ol><p>The update object returned by this method is either a Direct2D device context or a DXGI surface, depending on the value of the <em>iid</em> parameter and on how the DirectComposition surface object was created. If the <em>iid</em> parameter is __uuidof(<see cref="!:SharpDX.Direct2D1.DeviceContext"/>), then the returned object is a Direct2D device context that already has the DirectComposition surface selected as a render target. Otherwise, it is a DXGI surface which the application may use as a render target. In either case, the returned object is associated with the Direct2D or DXGI device passed by the application to the <see cref="M:SharpDX.DirectComposition.DComp.CreateDevice2(SharpDX.ComObject,System.Guid,System.IntPtr@)"/> function or the <strong><see cref="M:SharpDX.DirectComposition.Device2.CreateSurfaceFactory(SharpDX.ComObject,SharpDX.DirectComposition.SurfaceFactory)"/></strong> method. </p><p>The <em>iid</em> parameter may only be __uuidof(<see cref="!:SharpDX.Direct2D1.DeviceContext"/>) if the DirectComposition surface object was created from a DirectComposition device or surface factory that was, itself, created with an associated Direct2D device. In particular, the application must have called either the <see cref="M:SharpDX.DirectComposition.DComp.CreateDevice2(SharpDX.ComObject,System.Guid,System.IntPtr@)"/> function or the <strong><see cref="M:SharpDX.DirectComposition.Device2.CreateSurfaceFactory(SharpDX.ComObject,SharpDX.DirectComposition.SurfaceFactory)"/></strong> method with a Direct2D device as the <em>renderingDevice</em> parameter. If the DirectComposition surface was created via a surface factory that was not associated with a Direct2D device, or if it was created directly via the <see cref="T:SharpDX.DirectComposition.Device2"/> interface and the device was not directly associated with a Direct2D device, then passing __uuidof(<see cref="!:SharpDX.Direct2D1.DeviceContext"/>) as the iid parameter causes this method to return E_INVALIDARG. </p><p>If the application successfully retrieves a Direct2D device context as the update object, then the application should not call either the ID2D1DeviceContext::BeginDraw or ID2D1DeviceContext::EndDraw methods on the returned Direct2D device context.
</p><p>The retrieved offset is not necessarily the same as the top-left corner of the requested update rectangle. The application must transform its rendering primitives to draw within a rectangle of the same width and height as the input rectangle, but at the given offset. The application should not draw outside of this rectangle. </p><p>If the <em>updateRectangle</em> parameter is <c>null</c>, the entire surface is updated. In that case, because the retrieved offset still might not be (0,0), the application still needs to transform its rendering primitives accordingly. </p><p>If the surface is not a virtual surface, then the first time the application calls this method for a particular non-virtual surface, the update rectangle must cover the entire surface, either by specifying the full surface in the requested update rectangle, or by specifying <c>null</c> as the <em>updateRectangle</em> parameter. For virtual surfaces, the first call may be any sub-rectangle of the surface. </p><p>Because each call to this method might retrieve a different object in the <em>updateObject</em> surface, the application should not cache the retrieved surface reference. The application should release the retrieved reference as soon as it finishes drawing. </p><p>The retrieved surface rectangle does not contain the previous contents of the bitmap. The application must update every pixel in the update rectangle, either by first clearing the render target, or by issuing enough rendering primitives to fully cover the update rectangle. Because the initial contents of the update surface are undefined, failing to update every pixel leads to undefined behavior. </p><p>Only one DirectComposition surface can be updated at a time. An application must suspend drawing on one surface before beginning or resuming to draw on another surface. If the application calls <strong>BeginDraw</strong> twice, either for the same surface or for another surface belonging to the same DirectComposition device, without an intervening call to <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong>, the second call fails. If the application calls <strong><see cref="M:SharpDX.DirectComposition.Device2.Commit"/></strong> without calling <strong>EndDraw</strong>, the update remains pending. The update takes effect only after the application calls <strong>EndDraw</strong> and then calls the <strong><see cref="M:SharpDX.DirectComposition.Device2.Commit"/></strong> method.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurface::BeginDraw']/*"/>
<msdn-id>hh449100</msdn-id>
<unmanaged>HRESULT IDCompositionSurface::BeginDraw([In, Optional] const RECT* updateRect,[In] const GUID&amp; iid,[Out] void** updateObject,[Out] POINT* updateOffset)</unmanaged>
<unmanaged-short>IDCompositionSurface::BeginDraw</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Surface.EndDraw">
<summary>
<p>Marks the end of drawing on this Microsoft DirectComposition surface object.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code, which can include <see cref="F:SharpDX.DirectComposition.ResultCode.SurfaceNotBeingRendered"/>. </p></returns>
<remarks>
<p>This method completes an update that was begun by a previous call to the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method. After this method returns, the application can start another update on the same surface object or on a different one. </p><p>If the application calls <strong><see cref="M:SharpDX.DirectComposition.Device2.Commit"/></strong> before calling <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong> for a surface with a pending update, that update is not processed by that Commit call. The update only takes effect on screen after the application calls <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong> followed by the <see cref="M:SharpDX.DirectComposition.Device2.Commit"/> method.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurface::EndDraw']/*"/>
<msdn-id>hh449102</msdn-id>
<unmanaged>HRESULT IDCompositionSurface::EndDraw()</unmanaged>
<unmanaged-short>IDCompositionSurface::EndDraw</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Surface.SuspendDraw">
<summary>
<p>Suspends the drawing on this Microsoft DirectComposition surface object.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code, which can include <see cref="F:SharpDX.DirectComposition.ResultCode.SurfaceBeingRendered"/> and <see cref="F:SharpDX.DirectComposition.ResultCode.SurfaceNotBeingRendered"/>. </p></returns>
<remarks>
<p>Because only one surface can be open for drawing at a time, calling <strong>SuspendDraw</strong> allows the user to call <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> on a different surface. Drawing to this surface can be resumed by calling <strong><see cref="M:SharpDX.DirectComposition.Surface.ResumeDraw"/></strong>.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurface::SuspendDraw']/*"/>
<msdn-id>hh449106</msdn-id>
<unmanaged>HRESULT IDCompositionSurface::SuspendDraw()</unmanaged>
<unmanaged-short>IDCompositionSurface::SuspendDraw</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Surface.ResumeDraw">
<summary>
<p>Resumes drawing on this Microsoft DirectComposition surface object.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code, which can include <see cref="F:SharpDX.DirectComposition.ResultCode.SurfaceBeingRendered"/> and <see cref="F:SharpDX.DirectComposition.ResultCode.SurfaceNotBeingRendered"/>. </p></returns>
<remarks>
<p> This method allows the surface update to continue unless there are other surfaces that have active, unsuspended draws.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurface::ResumeDraw']/*"/>
<msdn-id>hh449104</msdn-id>
<unmanaged>HRESULT IDCompositionSurface::ResumeDraw()</unmanaged>
<unmanaged-short>IDCompositionSurface::ResumeDraw</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Surface.Scroll(System.Nullable{SharpDX.Rectangle},System.Nullable{SharpDX.Rectangle},System.Int32,System.Int32)">
<summary>
<p>Scrolls a rectangular area of a Microsoft DirectComposition logical surface.</p>
</summary>
<param name="scrollRect"><dd> <p>The rectangular area of the surface to be scrolled, relative to the upper-left corner of the surface. If this parameter is <c>null</c>, the entire surface is scrolled.</p> </dd></param>
<param name="clipRect"><dd> <p>The <em>clipRect</em> clips the destination (<em>scrollRect</em> after offset) of the scroll.The only bitmap content that will be scrolled are those that remain inside the clip rectangle after the scroll is completed.</p> </dd></param>
<param name="offsetX"><dd> <p>The amount of horizontal scrolling, in pixels. Use positive values to scroll right, and negative values to scroll left.</p> </dd></param>
<param name="offsetY"><dd> <p>The amount of vertical scrolling, in pixels. Use positive values to scroll down, and negative values to scroll up.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method allows an application to blt/copy a sub-rectangle of a DirectComposition surface object. This avoids re-rendering content that is already available. </p><p>The <em>scrollRect</em> rectangle must be contained in the boundaries of the surface. If the <em>scrollRect</em> rectangle goes outside the bounds of the surface, this method fails. </p><p>The bits copied by the scroll operation (source) are defined by the intersection of the <em>scrollRect</em> and <em>clipRect</em> rectangles. </p><p>The bits shown on the screen (destination) are defined by the intersection of the offset source rectangle and <em>clipRect</em>. </p><p>Scroll operations can only be called before calling <strong>BeginDraw</strong> or after calling <strong>EndDraw</strong>. Suspended or resumed surfaces are not candidates for scrolling because they are still being updated. </p><p>The application is responsible for ensuring that the scrollable area for an <strong><see cref="T:SharpDX.DirectComposition.VirtualSurface"/></strong> is limited to valid pixels. The behavior for invalid pixels in the <em>scrollRect</em> is undefined. </p><p>Virtual surface sub-rectangular areas that were discarded by a trim or a resize operation can't be scrolled even if the trim or resize is applied in the same batch. <strong>Trim</strong> and <strong>Resize</strong> are applied immediately. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurface::Scroll']/*"/>
<msdn-id>Hh707486</msdn-id>
<unmanaged>HRESULT IDCompositionSurface::Scroll([In, Optional] const RECT* scrollRect,[In, Optional] const RECT* clipRect,[In] int offsetX,[In] int offsetY)</unmanaged>
<unmanaged-short>IDCompositionSurface::Scroll</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.SurfaceFactory">
<summary>
<p>Creates surface and virtual surface objects associated with an application-provided rendering device.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurfaceFactory']/*"/>
<msdn-id>dn280423</msdn-id>
<unmanaged>IDCompositionSurfaceFactory</unmanaged>
<unmanaged-short>IDCompositionSurfaceFactory</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SurfaceFactory.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.SurfaceFactory"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.SurfaceFactory.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.SurfaceFactory">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.SurfaceFactory"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.SurfaceFactory.CreateSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.Surface)">
<summary>
<p>Creates a surface object that can be associated with one or more visuals for composition.</p>
</summary>
<param name="width"><dd> <p>The width of the surface, in pixels.</p> </dd></param>
<param name="height"><dd> <p>The height of the surface, in pixels.</p> </dd></param>
<param name="pixelFormat"><dd> <p>The pixel format of the surface.</p> </dd></param>
<param name="alphaMode"><dd> <p>The format of the alpha channel, if an alpha channel is included in the pixel format. This can be one of <see cref="F:SharpDX.DXGI.AlphaMode.Premultiplied"/> or <see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/>. It can also be <see cref="F:SharpDX.DXGI.AlphaMode.Unspecified"/>, which is interpreted as <see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/>.</p> </dd></param>
<param name="surface"><dd> <p> The newly created surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A Microsoft DirectComposition surface is a rectangular array of pixels that can be associated with a visual for composition. A newly created surface object is in an uninitialized state. While it is uninitialized, the surface has no effect on the composition of the visual tree. It behaves exactly like a surface that has 100% transparent pixels. </p><p>To initialize the surface with pixel data, use the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method. The first call to this method must cover the entire surface area to provide an initial value for every pixel. Subsequent calls may specify smaller sub-rectangles of the surface to update. </p><p>This method will fail if either the width or height exceed the max texture size. If your scenario requires dimensions beyond the max texture size, use <strong>CreateVirtualSurface</strong> method.</p><p>DirectComposition surfaces support the following pixel formats:
</p><ul> <li><see cref="F:SharpDX.DXGI.Format.B8G8R8A8_UNorm"/>
</li> <li><see cref="F:SharpDX.DXGI.Format.R8G8B8A8_UNorm"/> </li> <li><see cref="F:SharpDX.DXGI.Format.R16G16B16A16_Float"/></li> </ul>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurfaceFactory::CreateSurface']/*"/>
<msdn-id>dn280424</msdn-id>
<unmanaged>HRESULT IDCompositionSurfaceFactory::CreateSurface([In] unsigned int width,[In] unsigned int height,[In] DXGI_FORMAT pixelFormat,[In] DXGI_ALPHA_MODE alphaMode,[Out, Fast] IDCompositionSurface** surface)</unmanaged>
<unmanaged-short>IDCompositionSurfaceFactory::CreateSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.SurfaceFactory.CreateVirtualSurface(System.Int32,System.Int32,SharpDX.DXGI.Format,SharpDX.DXGI.AlphaMode,SharpDX.DirectComposition.VirtualSurface)">
<summary>
<p>Creates a sparsely populated surface that can be associated with one or more visuals for composition.</p>
</summary>
<param name="initialWidth"><dd> <p>The width of the surface, in pixels. The maximum width is 16,777,216 pixels.</p> </dd></param>
<param name="initialHeight"><dd> <p>The height of the surface, in pixels.The maximum height is 16,777,216 pixels.</p> </dd></param>
<param name="pixelFormat"><dd> <p>The pixel format of the surface.</p> </dd></param>
<param name="alphaMode"><dd> <p>The format of the alpha channel, if an alpha channel is included in the pixel format. This can be one of <see cref="F:SharpDX.DXGI.AlphaMode.Premultiplied"/> or <see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/>. It can also be <see cref="F:SharpDX.DXGI.AlphaMode.Unspecified"/>, which is interpreted as <see cref="F:SharpDX.DXGI.AlphaMode.Ignore"/>.</p> </dd></param>
<param name="virtualSurface"><dd> <p> The newly created virtual surface object. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A newly created virtual surface object is in an uninitialized state. While it is uninitialized, the surface has no effect on the composition of the visual tree. It behaves exactly like a surface that is initialized with 100% transparent pixels. </p><p>To initialize the surface with pixel data, use the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method. This method not only provides pixels for the surface, but it also allocates actual storage space for those pixels. The memory allocation persists until the application returns some of the memory to the system. The application can free part or all of the allocated memory by calling the <strong><see cref="M:SharpDX.DirectComposition.VirtualSurface.Trim(SharpDX.Rectangle[],System.Int32)"/></strong> or <strong><see cref="M:SharpDX.DirectComposition.VirtualSurface.Resize(System.Int32,System.Int32)"/></strong> method.</p><p>Microsoft DirectComposition surfaces support the following pixel formats:
</p><ul> <li><see cref="F:SharpDX.DXGI.Format.B8G8R8A8_UNorm"/>
</li> <li><see cref="F:SharpDX.DXGI.Format.R8G8B8A8_UNorm"/> </li> <li><see cref="F:SharpDX.DXGI.Format.R16G16B16A16_Float"/></li> </ul>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionSurfaceFactory::CreateVirtualSurface']/*"/>
<msdn-id>dn280425</msdn-id>
<unmanaged>HRESULT IDCompositionSurfaceFactory::CreateVirtualSurface([In] unsigned int initialWidth,[In] unsigned int initialHeight,[In] DXGI_FORMAT pixelFormat,[In] DXGI_ALPHA_MODE alphaMode,[Out, Fast] IDCompositionVirtualSurface** virtualSurface)</unmanaged>
<unmanaged-short>IDCompositionSurfaceFactory::CreateVirtualSurface</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Target">
<summary>
<p>Represents a binding between a Microsoft DirectComposition visual tree and a destination on top of which the visual tree should be composed. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTarget']/*"/>
<msdn-id>hh449108</msdn-id>
<unmanaged>IDCompositionTarget</unmanaged>
<unmanaged-short>IDCompositionTarget</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Target.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Target"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Target.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Target">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Target"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Target.SetRoot(SharpDX.DirectComposition.Visual)">
<summary>
<p>Sets a visual object as the new root object of a visual tree.</p>
</summary>
<param name="visual"><dd> <p>The visual object that is the new root of this visual tree. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A visual can be either the root of a single visual tree, or a child of another visual, but it cannot be both at the same time. This method fails if the <em>visual</em> parameter is already the root of another visual tree, or is a child of another visual.</p><p>If <em>visual</em> is <c>null</c>, the visual tree is empty. If there was a previous non-<c>null</c> root visual, that visual becomes available for use as the root of another visual tree, or as a child of another visual.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTarget::SetRoot']/*"/>
<msdn-id>hh449109</msdn-id>
<unmanaged>HRESULT IDCompositionTarget::SetRoot([In, Optional] IDCompositionVisual* visual)</unmanaged>
<unmanaged-short>IDCompositionTarget::SetRoot</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Target.FromHwnd(SharpDX.DirectComposition.DesktopDevice,System.IntPtr,System.Boolean)">
<summary>
Creates a composition target object that is bound to the window that is represented by the specified window handle.
</summary>
<param name="desktopDevice">A device the target is to be associated with.</param>
<param name="hwnd">The window to which the composition object will be bound. This cannot be null.</param>
<param name="topmost">TRUE if the visual tree should be displayed on top of the children of the window specified by the hwnd parameter; otherwise, the visual tree is displayed behind the children.</param>
<returns></returns>
</member>
<member name="P:SharpDX.DirectComposition.Target.Root">
<summary>
<p>Sets a visual object as the new root object of a visual tree.</p>
</summary>
<remarks>
<p>A visual can be either the root of a single visual tree, or a child of another visual, but it cannot be both at the same time. This method fails if the <em>visual</em> parameter is already the root of another visual tree, or is a child of another visual.</p><p>If <em>visual</em> is <c>null</c>, the visual tree is empty. If there was a previous non-<c>null</c> root visual, that visual becomes available for use as the root of another visual tree, or as a child of another visual.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTarget::SetRoot']/*"/>
<msdn-id>hh449109</msdn-id>
<unmanaged>SetRoot</unmanaged>
<unmanaged-short>SetRoot</unmanaged-short>
<unmanaged>HRESULT IDCompositionTarget::SetRoot([In, Optional] IDCompositionVisual* visual)</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.TranslateTransform">
<summary>
<p>Represents a 2D transformation that affects only the offset of a visual along the x-axis and y-axis.</p>
</summary>
<remarks>
<p>A translation transform represents the following 3-by-2 matrix:</p><p></p><p>The effect is simply to offset the coordinate system by <em>x</em> and <em>y</em>.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform']/*"/>
<msdn-id>hh449113</msdn-id>
<unmanaged>IDCompositionTranslateTransform</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.TranslateTransform"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.TranslateTransform">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.TranslateTransform"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform.SetOffsetX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetX property of a 2D translation transform. The OffsetX property specifies the distance to translate along the x-axis.</p>
</summary>
<param name="animation"><dd> <p> The distance to translate along the x-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method perfoms an affine transformation, which moves every point by a fixed distance in the same direction. It is similar to shifting the origin of the coordinate space. </p><p>This method fails if the <em>offsetX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetX property was previously animated, this method removes the animation and sets the OffsetX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform::SetOffsetX']/*"/>
<msdn-id>hh449124</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform::SetOffsetX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform::SetOffsetX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform.SetOffsetX(System.Single)">
<summary>
<p>Changes the value of the OffsetX property of a 2D translation transform. The OffsetX property specifies the distance to translate along the x-axis.</p>
</summary>
<param name="offsetX"><dd> <p> The distance to translate along the x-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method perfoms an affine transformation, which moves every point by a fixed distance in the same direction. It is similar to shifting the origin of the coordinate space. </p><p>This method fails if the <em>offsetX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetX property was previously animated, this method removes the animation and sets the OffsetX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform::SetOffsetX']/*"/>
<msdn-id>hh449124</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform::SetOffsetX([In] float offsetX)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform::SetOffsetX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform.SetOffsetY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetY property of a 2D translation transform. The OffsetY property specifies the distance to translate along the y-axis.</p>
</summary>
<param name="animation"><dd> <p>The distance to translate along the y-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetY property was previously animated, this method removes the animation and sets the OffsetY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform::SetOffsetY']/*"/>
<msdn-id>hh449127</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform::SetOffsetY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform::SetOffsetY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform.SetOffsetY(System.Single)">
<summary>
<p>Changes the value of the OffsetY property of a 2D translation transform. The OffsetY property specifies the distance to translate along the y-axis.</p>
</summary>
<param name="offsetY"><dd> <p>The distance to translate along the y-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetY property was previously animated, this method removes the animation and sets the OffsetY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform::SetOffsetY']/*"/>
<msdn-id>hh449127</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform::SetOffsetY([In] float offsetY)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform::SetOffsetY</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.TranslateTransform3D">
<summary>
<p>Animates the value of the OffsetZ property of a 3D translation transform effect. The OffsetZ property specifies the distance to translate along the z-axis.</p>
</summary>
<remarks>
<p>This method makes a copy of the specified animation. If the object referenced by the <em>animation</em> parameter is changed after calling this method, the change does not affect the OffsetZ property unless this method is called again. If the OffsetZ property was previously animated, calling this method replaces the previous animation with the new animation. </p><p>This method fails if <em>animation</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created the affected visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D']/*"/>
<msdn-id>hh449122</msdn-id>
<unmanaged>IDCompositionTranslateTransform3D</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.TranslateTransform3D"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.TranslateTransform3D">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.TranslateTransform3D"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.SetOffsetX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetX property of a 3D translation transform effect. The OffsetX property specifies the distance to translate along the x-axis.</p>
</summary>
<param name="animation"><dd> <p>The distance to translate along the x-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetX property was previously animated, this method removes the animation and sets the OffsetX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D::SetOffsetX']/*"/>
<msdn-id>hh449115</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform3D::SetOffsetX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D::SetOffsetX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.SetOffsetX(System.Single)">
<summary>
<p>Changes the value of the OffsetX property of a 3D translation transform effect. The OffsetX property specifies the distance to translate along the x-axis.</p>
</summary>
<param name="offsetX"><dd> <p>The distance to translate along the x-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetX property was previously animated, this method removes the animation and sets the OffsetX property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D::SetOffsetX']/*"/>
<msdn-id>hh449115</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform3D::SetOffsetX([In] float offsetX)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D::SetOffsetX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.SetOffsetY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetY property of a 3D translation transform effect. The OffsetY property specifies the distance to translate along the y-axis.</p>
</summary>
<param name="animation"><dd> <p>The distance to translate along the y-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetY property was previously animated, this method removes the animation and sets the OffsetY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D::SetOffsetY']/*"/>
<msdn-id>hh449118</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform3D::SetOffsetY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D::SetOffsetY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.SetOffsetY(System.Single)">
<summary>
<p>Changes the value of the OffsetY property of a 3D translation transform effect. The OffsetY property specifies the distance to translate along the y-axis.</p>
</summary>
<param name="offsetY"><dd> <p>The distance to translate along the y-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetY property was previously animated, this method removes the animation and sets the OffsetY property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D::SetOffsetY']/*"/>
<msdn-id>hh449118</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform3D::SetOffsetY([In] float offsetY)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D::SetOffsetY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.SetOffsetZ(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetZ property of a 3D translation transform effect. The OffsetZ property specifies the distance to translate along the z-axis.</p>
</summary>
<param name="animation"><dd> <p>The distance to translate along the z-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetZ property was previously animated, this method removes the animation and sets the OffsetZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D::SetOffsetZ']/*"/>
<msdn-id>hh449121</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform3D::SetOffsetZ([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D::SetOffsetZ</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.TranslateTransform3D.SetOffsetZ(System.Single)">
<summary>
<p>Changes the value of the OffsetZ property of a 3D translation transform effect. The OffsetZ property specifies the distance to translate along the z-axis.</p>
</summary>
<param name="offsetZ"><dd> <p>The distance to translate along the z-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetZ</em> parameter is NaN, positive infinity, or negative infinity. </p><p>If the OffsetZ property was previously animated, this method removes the animation and sets the OffsetZ property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionTranslateTransform3D::SetOffsetZ']/*"/>
<msdn-id>hh449121</msdn-id>
<unmanaged>HRESULT IDCompositionTranslateTransform3D::SetOffsetZ([In] float offsetZ)</unmanaged>
<unmanaged-short>IDCompositionTranslateTransform3D::SetOffsetZ</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.VirtualSurface">
<summary>
<p>Represents a sparsely allocated bitmap that can be associated with a visual for composition in a visual tree.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVirtualSurface']/*"/>
<msdn-id>hh449133</msdn-id>
<unmanaged>IDCompositionVirtualSurface</unmanaged>
<unmanaged-short>IDCompositionVirtualSurface</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.VirtualSurface.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.VirtualSurface"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.VirtualSurface.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.VirtualSurface">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.VirtualSurface"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.VirtualSurface.Resize(System.Int32,System.Int32)">
<summary>
<p>Changes the logical size of this virtual surface object.</p>
</summary>
<param name="width"><dd> <p>The new width of the virtual surface, in pixels. The maximum width is 16,777,216 pixels.</p> </dd></param>
<param name="height"><dd> <p>The new height of the virtual surface, in pixels. The maximum height is 16,777,216 pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>When a virtual surface is resized, its contents are preserved up to the new boundaries of the surface. If the surface is made smaller, any previously allocated pixels that fall outside of the new width or height are discarded.</p><p>This method fails if <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> was called for this bitmap without a corresponding call to <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong>.</p><p>This method fails if <em>width</em> or <em>height</em> exceeds 16,777,216 pixels. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVirtualSurface::Resize']/*"/>
<msdn-id>hh449135</msdn-id>
<unmanaged>HRESULT IDCompositionVirtualSurface::Resize([In] unsigned int width,[In] unsigned int height)</unmanaged>
<unmanaged-short>IDCompositionVirtualSurface::Resize</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.VirtualSurface.Trim(SharpDX.Rectangle[],System.Int32)">
<summary>
<p>Discards pixels that fall outside of the specified trim rectangles.</p>
</summary>
<param name="rectangles"><dd> <p>An array of rectangles to keep.</p> </dd></param>
<param name="count"><dd> <p>The number of rectangles in the <em>rectangles</em> array.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>A virtual surface might not have enough storage for every pixel in the surface. An application instructs the composition engine to allocate memory for the surface by calling the <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> method, and to release memory for the surface by calling the <strong><see cref="M:SharpDX.DirectComposition.VirtualSurface.Trim(SharpDX.Rectangle[],System.Int32)"/></strong> method. The array of rectangles represents the regions of the virtual surface that should remain allocated after this method returns. Any pixels that are outside the specified set of rectangles are no longer used for texturing, and their memory may be reclaimed. </p><p>If the <em>count</em> parameter is zero, no pixels are kept, and all of the memory allocated for the virtual surface may be reclaimed. The <em>rectangles</em> parameter can be <c>null</c> only if the <em>count</em> parameter is zero. This method fails if <strong><see cref="M:SharpDX.DirectComposition.Surface.BeginDraw(System.Nullable{SharpDX.Rectangle},System.Guid,System.IntPtr@,SharpDX.Point@)"/></strong> was called for this bitmap without a corresponding call to <strong><see cref="M:SharpDX.DirectComposition.Surface.EndDraw"/></strong>.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVirtualSurface::Trim']/*"/>
<msdn-id>hh449137</msdn-id>
<unmanaged>HRESULT IDCompositionVirtualSurface::Trim([In, Buffer, Optional] const RECT* rectangles,[In] unsigned int count)</unmanaged>
<unmanaged-short>IDCompositionVirtualSurface::Trim</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.Visual">
<summary>
<p>Represents a Microsoft DirectComposition visual. </p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual']/*"/>
<msdn-id>hh449139</msdn-id>
<unmanaged>IDCompositionVisual</unmanaged>
<unmanaged-short>IDCompositionVisual</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Visual"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Visual.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Visual">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Visual"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetOffsetX(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetX property of this visual. The OffsetX property specifies the new offset of the visual along the x-axis, relative to the parent visual.</p>
</summary>
<param name="animation"><dd> <p>The new offset of the visual along the x-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>Changing the OffsetX property of a visual transforms the coordinate system of the entire visual subtree that is rooted at that visual. If the Clip property of this visual is specified, the clip rectangle is also transformed. </p><p>A transformation that is specified by the Transform property is applied after the OffsetX property. In other words, the effect of setting the Transform property and the OffsetX property is the same as setting only the Transform property on a transform group object where the first member of the group is an <strong><see cref="T:SharpDX.DirectComposition.TranslateTransform"/></strong> object that has the same OffsetX value as <em>offsetX</em>. However, you should use <strong><see cref="M:SharpDX.DirectComposition.Visual.SetOffsetX(SharpDX.DirectComposition.Animation)"/></strong> whenever possible because it is slightly faster.</p><p>If the OffsetX and OffsetY properties are set to 0, and the Transform property is set to <c>null</c>, the coordinate system of the visual is the same as that of its parent.</p><p>If the OffsetX property was previously animated, this method removes the animation and sets the property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetOffsetX']/*"/>
<msdn-id>hh449161</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetOffsetX([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetOffsetX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetOffsetX(System.Single)">
<summary>
<p>Changes the value of the OffsetX property of this visual. The OffsetX property specifies the new offset of the visual along the x-axis, relative to the parent visual.</p>
</summary>
<param name="offsetX"><dd> <p>The new offset of the visual along the x-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetX</em> parameter is NaN, positive infinity, or negative infinity. </p><p>Changing the OffsetX property of a visual transforms the coordinate system of the entire visual subtree that is rooted at that visual. If the Clip property of this visual is specified, the clip rectangle is also transformed. </p><p>A transformation that is specified by the Transform property is applied after the OffsetX property. In other words, the effect of setting the Transform property and the OffsetX property is the same as setting only the Transform property on a transform group object where the first member of the group is an <strong><see cref="T:SharpDX.DirectComposition.TranslateTransform"/></strong> object that has the same OffsetX value as <em>offsetX</em>. However, you should use <strong><see cref="M:SharpDX.DirectComposition.Visual.SetOffsetX(SharpDX.DirectComposition.Animation)"/></strong> whenever possible because it is slightly faster.</p><p>If the OffsetX and OffsetY properties are set to 0, and the Transform property is set to <c>null</c>, the coordinate system of the visual is the same as that of its parent.</p><p>If the OffsetX property was previously animated, this method removes the animation and sets the property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetOffsetX']/*"/>
<msdn-id>hh449161</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetOffsetX([In] float offsetX)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetOffsetX</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetOffsetY(SharpDX.DirectComposition.Animation)">
<summary>
<p>Changes the value of the OffsetY property of this visual. The OffsetY property specifies the new offset of the visual along the y-axis, relative to the parent visual.</p>
</summary>
<param name="animation"><dd> <p>The new offset of the visual along the y-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>Changing the OffsetY property transforms the coordinate system of the entire visual subtree that is rooted at this visual. If the Clip property of this visual is specified, the clip rectangle is also transformed. </p><p>A transformation that is specified by the Transform property is applied after the OffsetY property. In other words, the effect of setting the Transform property and the OffsetY property is the same as setting only the Transform property on a transform group object where the first member of the group is an <strong><see cref="T:SharpDX.DirectComposition.TranslateTransform"/></strong> object that has the same OffsetY value as <em>offsetY</em>. However, you should use <strong><see cref="M:SharpDX.DirectComposition.Visual.SetOffsetY(SharpDX.DirectComposition.Animation)"/></strong> whenever possible because it is slightly faster.</p><p>If the OffsetX and OffsetY properties are set to 0, and the Transform property is set to <c>null</c>, the coordinate system of the visual is the same as that of its parent.</p><p>If the OffsetY property was previously animated, this method removes the animation and sets the property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetOffsetY']/*"/>
<msdn-id>hh449167</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetOffsetY([In] IDCompositionAnimation* animation)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetOffsetY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetOffsetY(System.Single)">
<summary>
<p>Changes the value of the OffsetY property of this visual. The OffsetY property specifies the new offset of the visual along the y-axis, relative to the parent visual.</p>
</summary>
<param name="offsetY"><dd> <p>The new offset of the visual along the y-axis, in pixels.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method fails if the <em>offsetY</em> parameter is NaN, positive infinity, or negative infinity. </p><p>Changing the OffsetY property transforms the coordinate system of the entire visual subtree that is rooted at this visual. If the Clip property of this visual is specified, the clip rectangle is also transformed. </p><p>A transformation that is specified by the Transform property is applied after the OffsetY property. In other words, the effect of setting the Transform property and the OffsetY property is the same as setting only the Transform property on a transform group object where the first member of the group is an <strong><see cref="T:SharpDX.DirectComposition.TranslateTransform"/></strong> object that has the same OffsetY value as <em>offsetY</em>. However, you should use <strong><see cref="M:SharpDX.DirectComposition.Visual.SetOffsetY(SharpDX.DirectComposition.Animation)"/></strong> whenever possible because it is slightly faster.</p><p>If the OffsetX and OffsetY properties are set to 0, and the Transform property is set to <c>null</c>, the coordinate system of the visual is the same as that of its parent.</p><p>If the OffsetY property was previously animated, this method removes the animation and sets the property to the specified static value.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetOffsetY']/*"/>
<msdn-id>hh449167</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetOffsetY([In] float offsetY)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetOffsetY</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetTransform(SharpDX.DirectComposition.Transform)">
<summary>
<p>Sets the Transform property of this visual to the specified 2D transform object.</p>
</summary>
<param name="transform"><dd> <p>The transform object that is used to modify the coordinate system of this visual. This parameter can point to an <strong><see cref="T:SharpDX.DirectComposition.Transform"/></strong> interface or one of its derived interfaces. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Setting the Transform property transforms the coordinate system of the entire visual subtree that is rooted at this visual. If the Clip property of this visual is specified, the clip rectangle is also transformed. </p><p>If the Transform property previously specified a transform matrix, the newly specified transform object replaces the transform matrix.</p><p>A transformation specified by the Transform property is applied after the OffsetX and OffsetY properties. In other words, the effect of setting the Transform property and the OffsetX and OffsetY properties is the same as setting only the Transform property on a transform group where the first member of the group is an <strong><see cref="T:SharpDX.DirectComposition.TranslateTransform"/></strong> object that has those same OffsetX and OffsetY values. However, you should use the <strong><see cref="M:SharpDX.DirectComposition.Visual.SetOffsetX(SharpDX.DirectComposition.Animation)"/></strong> and <strong>SetOffsetY</strong> methods whenever possible because they are slightly faster. </p><p>This method fails if <em>transform</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p><p>If the <em>transform</em> parameter is <c>null</c>, the coordinate system of this visual is transformed only by its OffsetX and OffsetY properties. Setting the Transform property to <c>null</c> is equivalent to setting it to an <strong><see cref="T:SharpDX.DirectComposition.MatrixTransform"/></strong> object where the specified matrix is the identity matrix. However, an application should set the Transform property to <c>null</c> whenever possible because it is slightly faster.</p><p>If the OffsetX and OffsetY properties are set to 0, and the Transform property is set to <c>null</c>, the coordinate system of the visual is the same as that of its parent.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetTransform']/*"/>
<msdn-id>hh449176</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetTransform([In, Optional] IDCompositionTransform* transform)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetTransform(SharpDX.Matrix3x2@)">
<summary>
<p>Sets the Transform property of this visual to the specified 2D transform object.</p>
</summary>
<param name="matrix"><dd> <p>The transform object that is used to modify the coordinate system of this visual. This parameter can point to an <strong><see cref="T:SharpDX.DirectComposition.Transform"/></strong> interface or one of its derived interfaces. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Setting the Transform property transforms the coordinate system of the entire visual subtree that is rooted at this visual. If the Clip property of this visual is specified, the clip rectangle is also transformed. </p><p>If the Transform property previously specified a transform matrix, the newly specified transform object replaces the transform matrix.</p><p>A transformation specified by the Transform property is applied after the OffsetX and OffsetY properties. In other words, the effect of setting the Transform property and the OffsetX and OffsetY properties is the same as setting only the Transform property on a transform group where the first member of the group is an <strong><see cref="T:SharpDX.DirectComposition.TranslateTransform"/></strong> object that has those same OffsetX and OffsetY values. However, you should use the <strong><see cref="M:SharpDX.DirectComposition.Visual.SetOffsetX(SharpDX.DirectComposition.Animation)"/></strong> and <strong>SetOffsetY</strong> methods whenever possible because they are slightly faster. </p><p>This method fails if <em>transform</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p><p>If the <em>transform</em> parameter is <c>null</c>, the coordinate system of this visual is transformed only by its OffsetX and OffsetY properties. Setting the Transform property to <c>null</c> is equivalent to setting it to an <strong><see cref="T:SharpDX.DirectComposition.MatrixTransform"/></strong> object where the specified matrix is the identity matrix. However, an application should set the Transform property to <c>null</c> whenever possible because it is slightly faster.</p><p>If the OffsetX and OffsetY properties are set to 0, and the Transform property is set to <c>null</c>, the coordinate system of the visual is the same as that of its parent.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetTransform']/*"/>
<msdn-id>hh449176</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetTransform([In] const D2D_MATRIX_3X2_F&amp; matrix)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetTransform</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetTransformParent(SharpDX.DirectComposition.Visual)">
<summary>
<p>Sets the TransformParent property of this visual. The TransformParent property establishes the coordinate system relative to which this visual is composed.</p>
</summary>
<param name="visual"><dd> <p>The new visual that establishes the base coordinate system for this visual. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The coordinate system of a visual is modified by the OffsetX, OffsetY, and Transform properties. Normally, these properties define the coordinate system of a visual relative to its immediate parent. This method specifies the visual relative to which the coordinate system for this visual is based. The specified visual must be an ancestor of the current visual. If it is not an ancestor, the coordinate system is based on this visual's immediate parent, just as if the TransformParent property were set to <c>null</c>. Because visuals can be reparented, this property can take effect again if the specified visual becomes an ancestor of the target visual through a reparenting operation. </p><p>If the <em>visual</em> parameter is <c>null</c>, the coordinate system is always transformed relative to the visual's immediate parent. This is the default behavior if this method is not used. </p><p>This method fails if the <em>visual</em> parameter is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetTransformParent']/*"/>
<msdn-id>hh449172</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetTransformParent([In, Optional] IDCompositionVisual* visual)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetTransformParent</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetEffect(SharpDX.DirectComposition.Effect)">
<summary>
<p>Sets the Effect property of this visual. The Effect property modifies how the subtree that is rooted at this visual is blended with the background, and can apply a 3D perspective transform to the visual. </p>
</summary>
<param name="effect"><dd> <p>A reference to an effect object. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method creates an implicit off-screen surface to which the subtree that is rooted at this visual is composed. The surface is used as one of the inputs to the specified effect. The output of the effect is composed directly to the composition target. Some effects also use the composition target as another implicit input. This is typically the case for compositional or blend effects such as opacity, where the composition target is considered to be the "background." In that case, any visuals that are "behind" the current visual are included in the composition target when the current visual is rendered and are considered to be the "background" that this visual composes to. </p><p>If this visual is not the root of a visual tree and one of its ancestors also has an effect applied to it, the off-screen surface created by the closest ancestor is the composition target to which this visual's effect is composed. Otherwise, the composition target is the root composition target. As a consequence, the background for compositional and blend effects includes only the visuals up to the closest ancestor that itself has an effect. Conversely, any effects applied to visuals under the current visual use the newly created off-screen surface as the background, which may affect how those visuals ultimately compose on top of what the end user perceives as being "behind" those visuals. </p><p>If the <em>effect</em> parameter is <c>null</c>, no bitmap effect is applied to this visual. Any previous effects that were associated with this visual are removed. The off-screen surface is also removed and the visual subtree is composed directly to the parent composition target, which may also affect how compositional or blend effects under this visual are rendered. </p><p>This method fails if <em>effect</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetEffect']/*"/>
<msdn-id>hh449159</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetEffect([In, Optional] IDCompositionEffect* effect)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetEffect</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetBitmapInterpolationMode(SharpDX.DirectComposition.BitmapInterpolationMode)">
<summary>
<p>Sets the BitmapInterpolationMode property, which specifies the mode for Microsoft DirectComposition to use when interpolating pixels from bitmaps that are not axis-aligned or drawn exactly at scale. </p>
</summary>
<param name="interpolationMode"><dd> <p>The interpolation mode to use.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The interpolation mode affects how a bitmap is composed when it is transformed such that there is no one-to-one correspondence between pixels in the bitmap and pixels on the screen. </p><p>By default, a visual inherits the interpolation mode of the parent visual, which may inherit the interpolation mode of its parent visual, and so on. A visual uses the default interpolation mode if this method is never called for the visual, or if this method is called with <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>. If no visuals set the interpolation mode, the default for the entire visual tree is nearest neighbor interpolation, which offers the lowest visual quality but the highest performance. </p><p>If the <em>interpolationMode</em> parameter is anything other than <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>, this visual's bitmap is composed with the specified interpolation mode, and this mode becomes the new default mode for the children of this visual. That is, if the interpolation mode of this visual's children is unchanged or explicitly set to <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>, the bitmaps of the child visuals are composed using the interpolation mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetBitmapInterpolationMode']/*"/>
<msdn-id>hh449147</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetBitmapInterpolationMode([In] DCOMPOSITION_BITMAP_INTERPOLATION_MODE interpolationMode)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetBitmapInterpolationMode</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetBorderMode(SharpDX.DirectComposition.BorderMode)">
<summary>
<p>Sets the BorderMode property, which specifies how to compose the edges of bitmaps and clips associated with this visual, or with visuals in the subtree rooted at this visual.</p>
</summary>
<param name="borderMode"><dd> <p>The border mode to use.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The border mode affects how the edges of a bitmap are composed when the bitmap is transformed such that the edges are not exactly axis-aligned and at precise pixel boundaries. It also affects how content is clipped at the corners of a clip that has rounded corners, and at the edge of a clip that is transformed such that the edges are not exactly axis-aligned and at precise pixel boundaries. </p><p>By default, a visual inherits the border mode of its parent visual, which may inherit the border mode of its parent visual, and so on. A visual uses the default border mode if this method is never called for the visual, or if this method is called with <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>. If no visuals set the border mode, the default for the entire visual tree is aliased rendering, which offers the lowest visual quality but the highest performance. </p><p>If the <em>borderMode</em> parameter is anything other than <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>, this visual's bitmap and clip are composed with the specified border mode. In addition, this border mode becomes the new default for the children of the current visual. That is, if the border mode of this visual's children is unchanged or explicitly set to <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>, the bitmaps and clips of the child visuals are composed using the border mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetBorderMode']/*"/>
<msdn-id>hh449149</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetBorderMode([In] DCOMPOSITION_BORDER_MODE borderMode)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetBorderMode</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetClip(SharpDX.DirectComposition.Clip)">
<summary>
<p>Sets the Clip property of this visual to the specified clip object. The Clip property restricts the rendering of the visual subtree that is rooted at this visual to a rectangular region. </p>
</summary>
<param name="clip"><dd> <p>The clip object to associate with this visual. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Setting the Clip property clips this visual along with all visuals in the subtree that is rooted at this visual. The clip is transformed by the OffsetX, OffsetY, and Transform properties.</p><p>If the Clip property previously specified a clip rectangle, the newly specified Clip object replaces the clip rectangle.</p><p>This method fails if <em>clip</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p><p>If <em>clip</em> is <c>null</c>, the visual is not clipped relative to its parent. However, the visual is clipped by the clip object of the parent visual, or by the closest ancestor visual that has a clip object. Setting <em>clip</em> to <c>null</c> is similar to specifying a clip object whose clip rectangle has the left and top sides set to negative infinity, and the right and bottom sides set to positive infinity. Using a <c>null</c> clip object results in slightly better performance. </p><p>If <em>clip</em> specifies a clip object that has an empty rectangle, the visual is fully clipped; that is, the visual is included in the visual tree, but it does not render anything. To exclude a particular visual from a composition, remove the visual from the visual tree instead of setting an empty clip rectangle. Removing the visual results in better performance. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetClip']/*"/>
<msdn-id>hh449153</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetClip([In, Optional] IDCompositionClip* clip)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetClip</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetClip(SharpDX.RectangleF)">
<summary>
<p>Sets the Clip property of this visual to the specified clip object. The Clip property restricts the rendering of the visual subtree that is rooted at this visual to a rectangular region. </p>
</summary>
<param name="rect"><dd> <p>The clip object to associate with this visual. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Setting the Clip property clips this visual along with all visuals in the subtree that is rooted at this visual. The clip is transformed by the OffsetX, OffsetY, and Transform properties.</p><p>If the Clip property previously specified a clip rectangle, the newly specified Clip object replaces the clip rectangle.</p><p>This method fails if <em>clip</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method.
</p><p>If <em>clip</em> is <c>null</c>, the visual is not clipped relative to its parent. However, the visual is clipped by the clip object of the parent visual, or by the closest ancestor visual that has a clip object. Setting <em>clip</em> to <c>null</c> is similar to specifying a clip object whose clip rectangle has the left and top sides set to negative infinity, and the right and bottom sides set to positive infinity. Using a <c>null</c> clip object results in slightly better performance. </p><p>If <em>clip</em> specifies a clip object that has an empty rectangle, the visual is fully clipped; that is, the visual is included in the visual tree, but it does not render anything. To exclude a particular visual from a composition, remove the visual from the visual tree instead of setting an empty clip rectangle. Removing the visual results in better performance. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetClip']/*"/>
<msdn-id>hh449153</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetClip([In] const D2D_RECT_F&amp; rect)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetClip</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetContent(SharpDX.ComObject)">
<summary>
<p>Sets the Content property of this visual to the specified bitmap or window wrapper.</p>
</summary>
<param name="content"><dd> <p>The object that is the new content of this visual. This parameter can be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p> The <em>content</em> parameter must point to one of the following:</p><ul> <li>An object that implements the <strong><see cref="T:SharpDX.DirectComposition.Surface"/></strong> interface.</li> <li>An object that implements the <strong><see cref="T:SharpDX.DXGI.SwapChain1"/></strong> interface.</li> <li>A wrapper object that is returned by the <strong>CreateSurfaceFromHandle</strong> or <strong>CreateSurfaceFromHwnd</strong> method.
</li> </ul><p>The new content replaces any content that was previously associated with the visual. If the <em>content</em> parameter is <c>null</c>, the visual has no associated content.</p><p>A visual can be associated with a bitmap object or a window wrapper. A bitmap is either a Microsoft DirectX swap chain or a Microsoft DirectComposition surface.</p><p>A window wrapper is created with the <strong>CreateSurfaceFromHwnd</strong> method and is a stand-in for the rasterization of another window, which must be a top-level window or a layered child window. A window wrapper is conceptually equivalent to a bitmap that is the size of the target window on which the contents of the window are drawn. The contents include the target window's child windows (layered or otherwise), and any DirectComposition content that is drawn in the child windows. </p><p>A DirectComposition surface wrapper is created with the <strong>CreateSurfaceFromHandle</strong> method and is a reference to a swap chain. An application might use a surface wrapper in a cross-process scenario where one process creates the swap chain and another process associates the bitmap with a visual.</p><p>The bitmap is always drawn at position (0,0) relative to the visual's coordinate system, although the coordinate system is directly affected by the OffsetX, OffsetY, and Transform properties, as well as indirectly by the transformations on ancestor visuals. The bitmap of a visual is always drawn behind the children of that visual.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetContent']/*"/>
<msdn-id>hh449157</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetContent([In, Optional] IUnknown* content)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetContent</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.AddVisual(SharpDX.DirectComposition.Visual,SharpDX.Bool,SharpDX.DirectComposition.Visual)">
<summary>
<p>Adds a new child visual to the children list of this visual.</p>
</summary>
<param name="visual"><dd> <p>The child visual to add. This parameter must not be <c>null</c>.</p> </dd></param>
<param name="insertAbove"><dd> <p>TRUE to place the new child visual in front of the visual specified by the <em>referenceVisual</em> parameter, or <see cref="F:SharpDX.Result.False"/> to place it behind <em>referenceVisual</em>.</p> </dd></param>
<param name="referenceVisual"><dd> <p>The existing child visual next to which the new visual should be added.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Child visuals are arranged in an ordered list. The contents of a child visual are drawn in front of (or above) the contents of its parent visual, but behind (or below) the contents of its children.</p><p>The <em>referenceVisual</em> parameter must be an existing child of the parent visual, or it must be <c>null</c>. The <em>insertAbove</em> parameter indicates whether the new child should be rendered immediately above the reference visual in the Z order, or immediately below it.</p><p>If the <em>referenceVisual</em> parameter is <c>null</c>, the specified visual is rendered above or below all children of the parent visual, depending on the value of the <em>insertAbove</em> parameter. If <em>insertAbove</em> is TRUE, the new child visual is above no sibling, therefore it is rendered below all of its siblings. Conversely, if <em>insertAbove</em> is <see cref="F:SharpDX.Result.False"/>, the visual is below no sibling, therefore it is rendered above all of its siblings.</p><p>The visual specified by the <em>visual</em> parameter cannot be either a child of a single other visual, or the root of a visual tree that is associated with a composition target. If <em>visual</em> is already a child of another visual, <strong>AddVisual</strong> fails. The child visual must be removed from the children list of its previous parent before adding it to the children list of the new parent. If <em>visual</em> is the root of a visual tree, the visual must be dissociated from that visual tree before adding it to the children list of the new parent. To dissociate the visual from a visual tree, call the <strong><see cref="M:SharpDX.DirectComposition.Target.SetRoot(SharpDX.DirectComposition.Visual)"/></strong> method and specify either a different visual or <c>null</c> as the <em>visual</em> parameter.</p><p>A child visual need not have been created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface as its parent. When visuals from different devices are combined in the same visual tree, Microsoft DirectComposition composes the tree as it normally would, except that changes to a particular visual take effect only when <strong><see cref="M:SharpDX.DirectComposition.Device.Commit"/></strong> is called on the device object that created the visual. The ability to combine visuals from different devices enables multiple threads to create and manipulate a single visual tree while maintaining independent devices that can be used to commit changes asynchronously</p><p>This method fails if <em>visual</em> or <em>referenceVisual</em> is an invalid reference, or if the visual referenced by the <em>referenceVisual</em> parameter is not a child of the parent visual. These interfaces cannot be custom implementations; only interfaces created by DirectComposition can be used with this method.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::AddVisual']/*"/>
<msdn-id>hh449141</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::AddVisual([In] IDCompositionVisual* visual,[In] BOOL insertAbove,[In, Optional] IDCompositionVisual* referenceVisual)</unmanaged>
<unmanaged-short>IDCompositionVisual::AddVisual</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.RemoveVisual(SharpDX.DirectComposition.Visual)">
<summary>
<p>Removes a child visual from the children list of this visual.</p>
</summary>
<param name="visual"><dd> <p>The child visual to remove from the children list. This parameter must not be <c>null</c>.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The child visual is removed from the list of children. The order of the remaining child visuals is not changed.</p><p>This method fails if <em>visual</em> is not a child of the parent visual.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::RemoveVisual']/*"/>
<msdn-id>hh449145</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::RemoveVisual([In] IDCompositionVisual* visual)</unmanaged>
<unmanaged-short>IDCompositionVisual::RemoveVisual</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.RemoveAllVisuals">
<summary>
<p>Removes all visuals from the children list of this visual.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>This method can be called even if this visual has no children. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::RemoveAllVisuals']/*"/>
<msdn-id>hh449143</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::RemoveAllVisuals()</unmanaged>
<unmanaged-short>IDCompositionVisual::RemoveAllVisuals</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual.SetCompositeMode(SharpDX.DirectComposition.CompositeMode)">
<summary>
<p>Sets the blending mode for this visual.</p>
</summary>
<param name="compositeMode"><dd> <p>The blending mode to use when composing the visual to the screen.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The composite mode determines how visual's bitmap is blended with the screen. By default, the visual is blended with "source over" semantics; that is, the colors are blended with per-pixel transparency.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetCompositeMode']/*"/>
<msdn-id>Hh802902</msdn-id>
<unmanaged>HRESULT IDCompositionVisual::SetCompositeMode([In] DCOMPOSITION_COMPOSITE_MODE compositeMode)</unmanaged>
<unmanaged-short>IDCompositionVisual::SetCompositeMode</unmanaged-short>
</member>
<member name="P:SharpDX.DirectComposition.Visual.Effect">
<summary>
<p>Sets the Effect property of this visual. The Effect property modifies how the subtree that is rooted at this visual is blended with the background, and can apply a 3D perspective transform to the visual. </p>
</summary>
<remarks>
<p>This method creates an implicit off-screen surface to which the subtree that is rooted at this visual is composed. The surface is used as one of the inputs to the specified effect. The output of the effect is composed directly to the composition target. Some effects also use the composition target as another implicit input. This is typically the case for compositional or blend effects such as opacity, where the composition target is considered to be the "background." In that case, any visuals that are "behind" the current visual are included in the composition target when the current visual is rendered and are considered to be the "background" that this visual composes to. </p><p>If this visual is not the root of a visual tree and one of its ancestors also has an effect applied to it, the off-screen surface created by the closest ancestor is the composition target to which this visual's effect is composed. Otherwise, the composition target is the root composition target. As a consequence, the background for compositional and blend effects includes only the visuals up to the closest ancestor that itself has an effect. Conversely, any effects applied to visuals under the current visual use the newly created off-screen surface as the background, which may affect how those visuals ultimately compose on top of what the end user perceives as being "behind" those visuals. </p><p>If the <em>effect</em> parameter is <c>null</c>, no bitmap effect is applied to this visual. Any previous effects that were associated with this visual are removed. The off-screen surface is also removed and the visual subtree is composed directly to the parent composition target, which may also affect how compositional or blend effects under this visual are rendered. </p><p>This method fails if <em>effect</em> is an invalid reference or if it was not created by the same <strong><see cref="T:SharpDX.DirectComposition.Device"/></strong> interface that created this visual. The interface cannot be a custom implementation; only interfaces created by Microsoft DirectComposition can be used with this method. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetEffect']/*"/>
<msdn-id>hh449159</msdn-id>
<unmanaged>SetEffect</unmanaged>
<unmanaged-short>SetEffect</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual::SetEffect([In, Optional] IDCompositionEffect* effect)</unmanaged>
</member>
<member name="P:SharpDX.DirectComposition.Visual.BitmapInterpolationMode">
<summary>
<p>Sets the BitmapInterpolationMode property, which specifies the mode for Microsoft DirectComposition to use when interpolating pixels from bitmaps that are not axis-aligned or drawn exactly at scale. </p>
</summary>
<remarks>
<p>The interpolation mode affects how a bitmap is composed when it is transformed such that there is no one-to-one correspondence between pixels in the bitmap and pixels on the screen. </p><p>By default, a visual inherits the interpolation mode of the parent visual, which may inherit the interpolation mode of its parent visual, and so on. A visual uses the default interpolation mode if this method is never called for the visual, or if this method is called with <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>. If no visuals set the interpolation mode, the default for the entire visual tree is nearest neighbor interpolation, which offers the lowest visual quality but the highest performance. </p><p>If the <em>interpolationMode</em> parameter is anything other than <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>, this visual's bitmap is composed with the specified interpolation mode, and this mode becomes the new default mode for the children of this visual. That is, if the interpolation mode of this visual's children is unchanged or explicitly set to <strong><see cref="F:SharpDX.DirectComposition.BitmapInterpolationMode.Inherit"/></strong>, the bitmaps of the child visuals are composed using the interpolation mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetBitmapInterpolationMode']/*"/>
<msdn-id>hh449147</msdn-id>
<unmanaged>SetBitmapInterpolationMode</unmanaged>
<unmanaged-short>SetBitmapInterpolationMode</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual::SetBitmapInterpolationMode([In] DCOMPOSITION_BITMAP_INTERPOLATION_MODE interpolationMode)</unmanaged>
</member>
<member name="P:SharpDX.DirectComposition.Visual.BorderMode">
<summary>
<p>Sets the BorderMode property, which specifies how to compose the edges of bitmaps and clips associated with this visual, or with visuals in the subtree rooted at this visual.</p>
</summary>
<remarks>
<p>The border mode affects how the edges of a bitmap are composed when the bitmap is transformed such that the edges are not exactly axis-aligned and at precise pixel boundaries. It also affects how content is clipped at the corners of a clip that has rounded corners, and at the edge of a clip that is transformed such that the edges are not exactly axis-aligned and at precise pixel boundaries. </p><p>By default, a visual inherits the border mode of its parent visual, which may inherit the border mode of its parent visual, and so on. A visual uses the default border mode if this method is never called for the visual, or if this method is called with <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>. If no visuals set the border mode, the default for the entire visual tree is aliased rendering, which offers the lowest visual quality but the highest performance. </p><p>If the <em>borderMode</em> parameter is anything other than <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>, this visual's bitmap and clip are composed with the specified border mode. In addition, this border mode becomes the new default for the children of the current visual. That is, if the border mode of this visual's children is unchanged or explicitly set to <strong><see cref="F:SharpDX.DirectComposition.BorderMode.Inherit"/></strong>, the bitmaps and clips of the child visuals are composed using the border mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetBorderMode']/*"/>
<msdn-id>hh449149</msdn-id>
<unmanaged>SetBorderMode</unmanaged>
<unmanaged-short>SetBorderMode</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual::SetBorderMode([In] DCOMPOSITION_BORDER_MODE borderMode)</unmanaged>
</member>
<member name="P:SharpDX.DirectComposition.Visual.Content">
<summary>
<p>Sets the Content property of this visual to the specified bitmap or window wrapper.</p>
</summary>
<remarks>
<p> The <em>content</em> parameter must point to one of the following:</p><ul> <li>An object that implements the <strong><see cref="T:SharpDX.DirectComposition.Surface"/></strong> interface.</li> <li>An object that implements the <strong><see cref="T:SharpDX.DXGI.SwapChain1"/></strong> interface.</li> <li>A wrapper object that is returned by the <strong>CreateSurfaceFromHandle</strong> or <strong>CreateSurfaceFromHwnd</strong> method.
</li> </ul><p>The new content replaces any content that was previously associated with the visual. If the <em>content</em> parameter is <c>null</c>, the visual has no associated content.</p><p>A visual can be associated with a bitmap object or a window wrapper. A bitmap is either a Microsoft DirectX swap chain or a Microsoft DirectComposition surface.</p><p>A window wrapper is created with the <strong>CreateSurfaceFromHwnd</strong> method and is a stand-in for the rasterization of another window, which must be a top-level window or a layered child window. A window wrapper is conceptually equivalent to a bitmap that is the size of the target window on which the contents of the window are drawn. The contents include the target window's child windows (layered or otherwise), and any DirectComposition content that is drawn in the child windows. </p><p>A DirectComposition surface wrapper is created with the <strong>CreateSurfaceFromHandle</strong> method and is a reference to a swap chain. An application might use a surface wrapper in a cross-process scenario where one process creates the swap chain and another process associates the bitmap with a visual.</p><p>The bitmap is always drawn at position (0,0) relative to the visual's coordinate system, although the coordinate system is directly affected by the OffsetX, OffsetY, and Transform properties, as well as indirectly by the transformations on ancestor visuals. The bitmap of a visual is always drawn behind the children of that visual.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetContent']/*"/>
<msdn-id>hh449157</msdn-id>
<unmanaged>SetContent</unmanaged>
<unmanaged-short>SetContent</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual::SetContent([In, Optional] IUnknown* content)</unmanaged>
</member>
<member name="P:SharpDX.DirectComposition.Visual.CompositeMode">
<summary>
<p>Sets the blending mode for this visual.</p>
</summary>
<remarks>
<p>The composite mode determines how visual's bitmap is blended with the screen. By default, the visual is blended with "source over" semantics; that is, the colors are blended with per-pixel transparency.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual::SetCompositeMode']/*"/>
<msdn-id>Hh802902</msdn-id>
<unmanaged>SetCompositeMode</unmanaged>
<unmanaged-short>SetCompositeMode</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual::SetCompositeMode([In] DCOMPOSITION_COMPOSITE_MODE compositeMode)</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.Visual2">
<summary>
<p>Represents one DirectComposition visual in a visual tree.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual2']/*"/>
<msdn-id>dn280426</msdn-id>
<unmanaged>IDCompositionVisual2</unmanaged>
<unmanaged-short>IDCompositionVisual2</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual2.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.Visual2"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.Visual2.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.Visual2">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.Visual2"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.Visual2.SetOpacityMode(SharpDX.DirectComposition.OpacityMode)">
<summary>
<p>Sets the opacity mode for this visual.</p>
</summary>
<param name="mode"><dd> <p> The opacity mode to use when composing the visual to the screen.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The opacity mode affects how the Opacity property of an effect group object affects the composition of a visual sub-tree. DirectComposition supports two opacity modes: Layer and Multiply. In Layer mode, each visual sub-tree can be logically viewed as a bitmap that contains the opaque rasterization of that entire sub-tree, to which the opacity value is then applied. In this manner, overlapping opaque surfaces blend with the sub-tree?s background, but not with each other. In contrast, in Multiply mode the opacity is applied individually to each surface as it is composed, so surfaces blend with each other. Multiply mode is faster than Layer mode and always preferred if the visual tree contains entirely non-overlapping contents. However, Multiply mode may produce undesired visual results for overlapping elements. </p><p>By default, a visual inherits the opacity mode of its parent visual, which may inherit the opacity mode of its parent visual, and so on. A visual uses the <see cref="F:SharpDX.DirectComposition.OpacityMode.Layer"/> mode if this method is never called for the visual, or if this method is called with <see cref="F:SharpDX.DirectComposition.OpacityMode.Inherit"/>. If no visuals set the opacity mode, the default for the entire visual tree is <see cref="F:SharpDX.DirectComposition.OpacityMode.Layer"/>. </p><p>If the <em>opacityMode</em> parameter is anything other than <see cref="F:SharpDX.DirectComposition.OpacityMode.Inherit"/>, this visual's surfaces are composed with the specified opacity mode. In addition, this opacity mode becomes the new default for the children of the current visual. That is, if the opacity mode of this visual's children is unchanged or explicitly set to <see cref="F:SharpDX.DirectComposition.OpacityMode.Inherit"/>, the surfaces the child visuals are composed using the opacity mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual2::SetOpacityMode']/*"/>
<msdn-id>dn280428</msdn-id>
<unmanaged>HRESULT IDCompositionVisual2::SetOpacityMode([In] DCOMPOSITION_OPACITY_MODE mode)</unmanaged>
<unmanaged-short>IDCompositionVisual2::SetOpacityMode</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.Visual2.SetBackFaceVisibility(SharpDX.DirectComposition.BackFaceVisibility)">
<summary>
<p>Specifies whether or not surfaces that have 3D transformations applied to them should be displayed when facing away from the observer.</p>
</summary>
<param name="visibility"><dd> <p>The back face visibility to use when composing surfaces in this visual?s sub-tree to the screen.</p> </dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>The back face visibility property affects how surfaces that have 3D transformations applied are rendered. </p><p>By default, a visual inherits the back face visibility property of its parent visual, which may inherit the back face visibility property of its parent visual, and so on. A visual uses the <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Visible"/> mode if this method is never called for the visual, or if this method is called with <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit"/>. If no visuals set the back face visibility property, the default for the entire visual tree is <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Visible"/>. </p><p>If the <em>visibility</em> parameter is anything other than <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit"/>, this visual's surfaces are composed with the specified visibility mode. In addition, this visibility mode becomes the new default for the children of the current visual. That is, if the visibility mode of this visual's children is unchanged or explicitly set to <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit"/>, the surfaces the child visuals are composed using the visibility mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual2::SetBackFaceVisibility']/*"/>
<msdn-id>dn280427</msdn-id>
<unmanaged>HRESULT IDCompositionVisual2::SetBackFaceVisibility([In] DCOMPOSITION_BACKFACE_VISIBILITY visibility)</unmanaged>
<unmanaged-short>IDCompositionVisual2::SetBackFaceVisibility</unmanaged-short>
</member>
<member name="P:SharpDX.DirectComposition.Visual2.OpacityMode">
<summary>
<p>Sets the opacity mode for this visual.</p>
</summary>
<remarks>
<p>The opacity mode affects how the Opacity property of an effect group object affects the composition of a visual sub-tree. DirectComposition supports two opacity modes: Layer and Multiply. In Layer mode, each visual sub-tree can be logically viewed as a bitmap that contains the opaque rasterization of that entire sub-tree, to which the opacity value is then applied. In this manner, overlapping opaque surfaces blend with the sub-tree?s background, but not with each other. In contrast, in Multiply mode the opacity is applied individually to each surface as it is composed, so surfaces blend with each other. Multiply mode is faster than Layer mode and always preferred if the visual tree contains entirely non-overlapping contents. However, Multiply mode may produce undesired visual results for overlapping elements. </p><p>By default, a visual inherits the opacity mode of its parent visual, which may inherit the opacity mode of its parent visual, and so on. A visual uses the <see cref="F:SharpDX.DirectComposition.OpacityMode.Layer"/> mode if this method is never called for the visual, or if this method is called with <see cref="F:SharpDX.DirectComposition.OpacityMode.Inherit"/>. If no visuals set the opacity mode, the default for the entire visual tree is <see cref="F:SharpDX.DirectComposition.OpacityMode.Layer"/>. </p><p>If the <em>opacityMode</em> parameter is anything other than <see cref="F:SharpDX.DirectComposition.OpacityMode.Inherit"/>, this visual's surfaces are composed with the specified opacity mode. In addition, this opacity mode becomes the new default for the children of the current visual. That is, if the opacity mode of this visual's children is unchanged or explicitly set to <see cref="F:SharpDX.DirectComposition.OpacityMode.Inherit"/>, the surfaces the child visuals are composed using the opacity mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual2::SetOpacityMode']/*"/>
<msdn-id>dn280428</msdn-id>
<unmanaged>SetOpacityMode</unmanaged>
<unmanaged-short>SetOpacityMode</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual2::SetOpacityMode([In] DCOMPOSITION_OPACITY_MODE mode)</unmanaged>
</member>
<member name="P:SharpDX.DirectComposition.Visual2.BackFaceVisibility">
<summary>
<p>Specifies whether or not surfaces that have 3D transformations applied to them should be displayed when facing away from the observer.</p>
</summary>
<remarks>
<p>The back face visibility property affects how surfaces that have 3D transformations applied are rendered. </p><p>By default, a visual inherits the back face visibility property of its parent visual, which may inherit the back face visibility property of its parent visual, and so on. A visual uses the <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Visible"/> mode if this method is never called for the visual, or if this method is called with <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit"/>. If no visuals set the back face visibility property, the default for the entire visual tree is <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Visible"/>. </p><p>If the <em>visibility</em> parameter is anything other than <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit"/>, this visual's surfaces are composed with the specified visibility mode. In addition, this visibility mode becomes the new default for the children of the current visual. That is, if the visibility mode of this visual's children is unchanged or explicitly set to <see cref="F:SharpDX.DirectComposition.BackFaceVisibility.Inherit"/>, the surfaces the child visuals are composed using the visibility mode of this visual.
</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisual2::SetBackFaceVisibility']/*"/>
<msdn-id>dn280427</msdn-id>
<unmanaged>SetBackFaceVisibility</unmanaged>
<unmanaged-short>SetBackFaceVisibility</unmanaged-short>
<unmanaged>HRESULT IDCompositionVisual2::SetBackFaceVisibility([In] DCOMPOSITION_BACKFACE_VISIBILITY visibility)</unmanaged>
</member>
<member name="T:SharpDX.DirectComposition.VisualDebug">
<summary>
<p>Represents a debug visual.</p>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisualDebug']/*"/>
<msdn-id>dn280429</msdn-id>
<unmanaged>IDCompositionVisualDebug</unmanaged>
<unmanaged-short>IDCompositionVisualDebug</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.VisualDebug.#ctor(System.IntPtr)">
<summary>
Initializes a new instance of the <see cref="T:SharpDX.DirectComposition.VisualDebug"/> class.
</summary>
<param name="nativePtr">The native pointer.</param>
</member>
<member name="M:SharpDX.DirectComposition.VisualDebug.op_Explicit(System.IntPtr)~SharpDX.DirectComposition.VisualDebug">
<summary>
Performs an explicit conversion from <see cref="T:System.IntPtr"/> to <see cref="T:SharpDX.DirectComposition.VisualDebug"/>. (This method is a shortcut to <see cref="P:SharpDX.CppObject.NativePointer"/>)
</summary>
<param name="nativePointer">The native pointer.</param>
<returns>
The result of the conversion.
</returns>
</member>
<member name="M:SharpDX.DirectComposition.VisualDebug.EnableHeatMap(SharpDX.Color4)">
<summary>
<p>Enables a visual heatmap that represents overdraw regions.</p>
</summary>
<param name="color"><dd></dd></param>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Heatmaps can be enabled by calling <strong>EnableHeatMap</strong>. The heatmaps are drawn on the source of the VisualDebug visual and child visuals. The heatmaps are represented in a specified color for all visual content. The heatmap color must have an transparency in order to see the overlaying overdraw regions. The colored surfaces are blended together to visually show all overdraw regions in a single view. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisualDebug::EnableHeatMap']/*"/>
<msdn-id>dn280432</msdn-id>
<unmanaged>HRESULT IDCompositionVisualDebug::EnableHeatMap([In] const D2D_COLOR_F&amp; color)</unmanaged>
<unmanaged-short>IDCompositionVisualDebug::EnableHeatMap</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.VisualDebug.DisableHeatMap">
<summary>
<p>Disables visual heatmaps.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisualDebug::DisableHeatMap']/*"/>
<msdn-id>dn280430</msdn-id>
<unmanaged>HRESULT IDCompositionVisualDebug::DisableHeatMap()</unmanaged>
<unmanaged-short>IDCompositionVisualDebug::DisableHeatMap</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.VisualDebug.EnableRedrawRegions">
<summary>
<p>Enables highlighting visuals when content is being redrawn.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<remarks>
<p>Highlighting redraw regions can be enabled by calling <strong>EnableRedrawRegions</strong>. With this function, redrawn client areas are visually highlighted every frame the visual is updated. Redraw regions are drawn on the source of the VisualDebug and child visuals. Redraw is triggered when properties of a visual are updated. The updated visusal does not neccessarly need to visually change to trigger a redraw. The highlighting will cycle through Blue, Yellow, Pink and Green to provide an order of which content is being updated. The redraw regions are only visible while the window of the VisualDebug is being updated. </p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisualDebug::EnableRedrawRegions']/*"/>
<msdn-id>dn280433</msdn-id>
<unmanaged>HRESULT IDCompositionVisualDebug::EnableRedrawRegions()</unmanaged>
<unmanaged-short>IDCompositionVisualDebug::EnableRedrawRegions</unmanaged-short>
</member>
<member name="M:SharpDX.DirectComposition.VisualDebug.DisableRedrawRegions">
<summary>
<p>Disables visual redraw regions.</p>
</summary>
<returns><p>If the function succeeds, it returns <see cref="F:SharpDX.Result.Ok"/>. Otherwise, it returns an <strong><see cref="T:SharpDX.Result"/></strong> error code. See DirectComposition Error Codes for a list of error codes.</p></returns>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='IDCompositionVisualDebug::DisableRedrawRegions']/*"/>
<msdn-id>dn280431</msdn-id>
<unmanaged>HRESULT IDCompositionVisualDebug::DisableRedrawRegions()</unmanaged>
<unmanaged-short>IDCompositionVisualDebug::DisableRedrawRegions</unmanaged-short>
</member>
<member name="T:SharpDX.DirectComposition.FrameStatistics">
<summary>
<p>Describes timing and composition statistics for a frame.</p>
</summary>
<remarks>
<p>The <strong><see cref="M:SharpDX.DirectComposition.Device.GetFrameStatistics(SharpDX.DirectComposition.FrameStatistics@)"/></strong> method fills this structure. An application can use the information in this structure to estimate the timestamp of the next few frames that will be started by the composition engine. Note that this is only an estimate because the composition engine may or may not compose the next frame, depending on whether any active animations or other work are pending for that frame. In addition, the composition engine may change frame rates according to the cost of composing individual frames.</p>
</remarks>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_FRAME_STATISTICS']/*"/>
<msdn-id>hh437366</msdn-id>
<unmanaged>DCOMPOSITION_FRAME_STATISTICS</unmanaged>
<unmanaged-short>DCOMPOSITION_FRAME_STATISTICS</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.FrameStatistics.LastFrameTime">
<summary>
<dd> <p>The time stamp of the last batch of commands to be processed by the composition engine.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_FRAME_STATISTICS::lastFrameTime']/*"/>
<msdn-id>hh437366</msdn-id>
<unmanaged>LARGE_INTEGER lastFrameTime</unmanaged>
<unmanaged-short>LARGE_INTEGER lastFrameTime</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.FrameStatistics.CurrentCompositionRate">
<summary>
<dd> <p>The rate at which the composition engine is producing frames, in frames per second.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_FRAME_STATISTICS::currentCompositionRate']/*"/>
<msdn-id>hh437366</msdn-id>
<unmanaged>DXGI_RATIONAL currentCompositionRate</unmanaged>
<unmanaged-short>DXGI_RATIONAL currentCompositionRate</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.FrameStatistics.CurrentTime">
<summary>
<dd> <p>The current time as computed by the <strong>QueryPerformanceCounter</strong> function.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_FRAME_STATISTICS::currentTime']/*"/>
<msdn-id>hh437366</msdn-id>
<unmanaged>LARGE_INTEGER currentTime</unmanaged>
<unmanaged-short>LARGE_INTEGER currentTime</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.FrameStatistics.TimeFrequency">
<summary>
<dd> <p>The units in which the <strong>lastFrameTime</strong> and <strong>currentTime</strong> members are specified, in Hertz.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_FRAME_STATISTICS::timeFrequency']/*"/>
<msdn-id>hh437366</msdn-id>
<unmanaged>LARGE_INTEGER timeFrequency</unmanaged>
<unmanaged-short>LARGE_INTEGER timeFrequency</unmanaged-short>
</member>
<member name="F:SharpDX.DirectComposition.FrameStatistics.NextEstimatedFrameTime">
<summary>
<dd> <p>The estimated time when the next frame will be displayed.</p> </dd>
</summary>
<!-- No matching elements were found for the following include tag --><include file=".\..\Documentation\CodeComments.xml" path="/comments/comment[@id='DCOMPOSITION_FRAME_STATISTICS::nextEstimatedFrameTime']/*"/>
<msdn-id>hh437366</msdn-id>
<unmanaged>LARGE_INTEGER nextEstimatedFrameTime</unmanaged>
<unmanaged-short>LARGE_INTEGER nextEstimatedFrameTime</unmanaged-short>
</member>
</members>
</doc>