Example #1
0
 public static extern ReturnCode DsmWinNew(
     [In, Out] TWIdentity origin,
     [In, Out] TWIdentity destination,
     DataGroups dg,
     DataArgumentType dat,
     Message msg,
     [In, Out] TWPassThru data);
Example #2
0
 public static ReturnCode DsmEntry(
     TWIdentity origin,
     TWIdentity destination,
     Message msg,
     TWPassThru data)
 {
     if (PlatformInfo.Current.IsWindows)
     {
         if (PlatformInfo.Current.UseNewWinDSM)
         {
             return(NativeMethods.DsmWinNew(origin, destination, DataGroups.Control, DataArgumentType.PassThru, msg, data));
         }
         else
         {
             return(NativeMethods.DsmWinOld(origin, destination, DataGroups.Control, DataArgumentType.PassThru, msg, data));
         }
     }
     else if (PlatformInfo.Current.IsLinux)
     {
         return(NativeMethods.DsmLinux(origin, destination, DataGroups.Control, DataArgumentType.PassThru, msg, data));
     }
     throw new PlatformNotSupportedException();
 }
Example #3
0
 /// <summary>
 /// PASSTHRU is intended for the use of Source writers writing diagnostic applications. It allows
 /// raw communication with the currently selected device in the Source.
 /// </summary>
 /// <param name="sourcePassThru">The source pass thru.</param>
 /// <returns></returns>
 public ReturnCode PassThrough(TWPassThru sourcePassThru)
 {
     Session.VerifyState(4, 7, DataGroups.Control, DataArgumentType.PassThru, Message.PassThru);
     return(Dsm.DsmEntry(Session.AppId, Session.CurrentSource.Identity, Message.PassThru, sourcePassThru));
 }