예제 #1
0
    public Result CreateProtectedResourceSession <T>(ProtectedResourceSessionDescription description, out T?resource) where T : ID3D12ProtectedResourceSession
    {
        Result result = CreateProtectedResourceSession(description, typeof(T).GUID, out IntPtr nativePtr);

        if (result.Failure)
        {
            resource = default;
            return(result);
        }

        resource = MarshallingHelpers.FromPointer <T>(nativePtr);
        return(result);
    }
예제 #2
0
 public ID3D12ProtectedResourceSession CreateProtectedResourceSession(ProtectedResourceSessionDescription description)
 {
     return(CreateProtectedResourceSession(description, typeof(ID3D12ProtectedResourceSession).GUID));
 }
예제 #3
0
 public T CreateProtectedResourceSession <T>(ProtectedResourceSessionDescription description) where T : ID3D12ProtectedResourceSession
 {
     CreateProtectedResourceSession(description, typeof(T).GUID, out IntPtr nativePtr).CheckError();
     return(MarshallingHelpers.FromPointer <T>(nativePtr));
 }
예제 #4
0
 public ProtectedResourceSession CreateProtectedResourceSession(ProtectedResourceSessionDescription desc)
 {
     return(CreateProtectedResourceSession(desc, Utilities.GetGuidFromType(typeof(ProtectedResourceSession))));
 }