//
// Copyright (c) Microsoft Corporation. All rights reserved.
// 
//
// File generated by WinMDIDL version 8.00.0021
//

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "windowscontracts.idl";
import "Windows.Foundation.idl";
import "Windows.Foundation.Numerics.idl";

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        namespace Numerics
        {
            typedef struct Vector3 Vector3;
        }
    }
}
namespace Windows
{
    namespace Foundation
    {
        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace Perception
    {
        namespace People
        {
            interface IHeadPose;

            runtimeclass HeadPose;
        }
    }
}

// Generic instantiations

// Type definition
namespace Windows
{
    namespace Perception
    {
        namespace People
        {
            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Perception.People.HeadPose)]
            [uuid(7F5AC5A5-49DB-379F-9429-32A2FAF34FA6)]
            interface IHeadPose : IInspectable
            {
                [propget] HRESULT Position([out] [retval] Windows.Foundation.Numerics.Vector3* value);
                [propget] HRESULT ForwardDirection([out] [retval] Windows.Foundation.Numerics.Vector3* value);
                [propget] HRESULT UpDirection([out] [retval] Windows.Foundation.Numerics.Vector3* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass HeadPose
            {
                [default] interface Windows.Perception.People.IHeadPose;
            }
        }
    }
}
