Ejemplo n.º 1
0
 public System.IO.Stream DoResampler(DriverModels.EngineInput Args)
 {
     System.IO.MemoryStream ms = new System.IO.MemoryStream();
     if (!_isLegalPlugin)
     {
         return(ms);
     }
     try
     {
         IntPtr hModule = LoadLibrary(DllPath);
         if (hModule == IntPtr.Zero)
         {
             _isLegalPlugin = false;
         }
         else
         {
             IntPtr m = GetProcAddress(hModule, "DoResampler");
             if (m != IntPtr.Zero)
             {
                 DoResamplerDelegate       g      = (DoResamplerDelegate)Marshal.GetDelegateForFunctionPointer(m, typeof(DoResamplerDelegate));
                 DriverModels.EngineOutput Output = Intptr2EngineOutput(g(Args));
                 ms = new System.IO.MemoryStream(Output.wavData);
             }
             FreeLibrary(hModule);
         }
     }
     catch {; }
     return(ms);
 }
Ejemplo n.º 2
0
 public System.IO.Stream DoResampler(DriverModels.EngineInput Args)
 {
     System.IO.MemoryStream ms = new System.IO.MemoryStream();
     if (!_isLegalPlugin)
     {
         return(ms);
     }
     if (DoResamplerMethod != null)
     {
         object inputarg = CopyObjectToNewType(Args, DoResamplerMethod.GetParameters()[0].ParameterType);
         object ret      = DoResamplerMethod.Invoke(null, new object[1] {
             inputarg
         });
         DriverModels.EngineOutput Out = (DriverModels.EngineOutput)CopyObjectToNewType(ret, typeof(DriverModels.EngineOutput));
         ms = new System.IO.MemoryStream(Out.wavData);
     }
     return(ms);
 }