Пример #1
0
 public static unsafe int CaptureStdOutput(CompiledFunctionDelegate fct, DataStructure *data)
 {
     if (data->printf_fct == null)
     {
         return(fct(data));
     }
     else
     {
         Printf cprint = MarshalDelegate <Printf>(data->printf_fct);
         int    res;
         var    keep = data->printf_fct;
         data->printf_fct = null;
         var std = new StdCapture();
         {
             res = fct(data);
             string sout = std.StdOut;
             if (!string.IsNullOrEmpty(sout))
             {
                 CPrintf(cprint, sout);
             }
             string err = std.StdErr;
             if (!string.IsNullOrEmpty(err))
             {
                 CPrintf(cprint, string.Format("--ERR--\n{0}", err));
             }
         }
         std.Dispose();
         data->printf_fct = keep;
         return(res);
     }
 }
Пример #2
0
 public static string DataFrameToString(DataFrame df)
 {
     using (var capture = new StdCapture())
         return(df.ToString());
 }