Device::~Device() { // Destroy all tasks before resetting the device analogInputTask.reset(); analogOutputTask.reset(); digitalInputTask.reset(); digitalOutputTasks.clear(); counterInputCountEdgesTasks.clear(); Error::logIfFailed( DAQmxBaseResetDevice(name.c_str()) ); }
int DAQmxErrChk(int32 rueckgabeWert) { //Fehlerbehandlung char errBuff[2048]; if( DAQmxFailed(rueckgabeWert) ) { DAQmxBaseGetExtendedErrorInfo (errBuff, 2048); printf ("DAQmxBase Error %ld: %s\n", rueckgabeWert, errBuff); DAQmxBaseResetDevice ("Dev1"); if (exitBeiFehler) { printf("\nACHTUNG: Programm wurde wegen eines Fehlers beendet!\n"); exit(1); } return 1; } return 0; }
static PyObject * pyni_reset(PyObject *self, PyObject *args) { char *dev; int32 error = 0; char errBuff[2048]={'\0'}; if (!PyArg_ParseTuple(args, "s", &dev)) return NULL; DAQmxErrChk (DAQmxBaseResetDevice(dev)); Py_RETURN_NONE; _fail: DAQmxBaseGetExtendedErrorInfo(errBuff,2048); printf("DAQmxBase Error: %s\n",errBuff); return PyErr_Format(PyExc_StandardError, errBuff); }
void CloseDevice(){ resetAllOutputs(); DAQmxErrChk(DAQmxBaseResetDevice ("Dev1")); // Gerät in Ausgangszustand versetzen // printf("\nAlle Tasks gelöscht!\n"); }