예제 #1
0
 public unsafe static void StartHW(int freq)
 {
     if (!(ExtIO._dllHandle == IntPtr.Zero) && ExtIO._startHW != null)
     {
         ExtIO.logInfo("StartHW(), freq=" + freq.ToString());
         if (!ExtIO._isHWInit)
         {
             ExtIO.OpenHW(true);
         }
         if (ExtIO._iqBuffer != null)
         {
             ExtIO._iqBuffer.Dispose();
         }
         ExtIO._iqBuffer = null;
         ExtIO._iqPtr    = null;
         int num = ExtIO._startHW(freq);
         ExtIO.logResult("StartHW: ");
         if (num <= 0)
         {
             ExtIO.logInfo("StartHW() returned " + num);
             throw new Exception("ExtIO StartHW() returned " + num);
         }
         ExtIO._isHWStarted = true;
         ExtIO._sampleCount = num;
         ExtIO._iqBuffer    = UnsafeBuffer.Create(ExtIO._sampleCount, sizeof(Complex));
         ExtIO._iqPtr       = (Complex *)(void *)ExtIO._iqBuffer;
         ExtIO.logInfo("StartHW succeeded, samplecount=" + ExtIO._sampleCount.ToString() + ", iqBuffer created.");
     }
 }
예제 #2
0
 public ExtIOController(string filename)
 {
     _filename = filename;
     ExtIO.UseLibrary(_filename);
     ExtIO.OpenHW();
 }
예제 #3
0
 public void Open()
 {
     ExtIO.UseLibrary(this._filename);
     ExtIO.OpenHW(true);
 }