00001 /*************************************************************************** 00002 di194.h - Linux driver for DI-194 series 00003 acquisition device manufactured by 00004 DATAQ Instruments, Inc. 00005 ------------------- 00006 begin : Mon Jun 7 2004 00007 author : Ioan S. Popescu 00008 00009 Copyright (C) 2004 DATAQ Instruments, Inc. <develop@dataq.com> 00010 00011 This program is free software; you can redistribute it and/or 00012 modify it under the terms of the GNU General Public License 00013 as published by the Free Software Foundation; either 00014 version 2 of the License, or (at your option) any later 00015 version. 00016 00017 This program is distributed in the hope that it will be useful, 00018 but WITHOUT ANY WARRANTY; without even the implied warranty of 00019 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00020 GNU General Public License for more details. 00021 00022 You should have received a copy of the GNU General Public License 00023 along with this program; if not, write to the Free Software 00024 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 00025 ***************************************************************************/ 00026 00027 #ifndef DI194_H 00028 #define DI194_H 1 00029 00030 #include "../dsdk/dsdk.h" 00031 #include "di194_commands.h" 00032 00034 class di194_dsdk : public dsdk 00035 { 00036 public: 00037 di194_dsdk(); 00038 ~di194_dsdk(); 00039 00043 00044 const int ADChannelCount(); 00046 const long int AvailableData(); 00048 const long int EventPoint(); 00050 const char *const InfoSerial(); 00052 const double SampleRate(); 00058 00059 void ADChannelCount(const int ChannelCount); 00061 void EventPoint(const long int EventPnt); 00063 void SampleRate(const double SampleRt); 00069 00070 void ADChannelList(const int *const ChannelList); 00072 void ADMethodList(const int *const MethodList); 00074 void DeviceConnect(); 00076 void DeviceDisconnect(); 00078 void GetDataEx(short int *iArray, const int Count); 00080 void Start(); 00082 void Stop(); 00090 00091 const bool OverRun(); 00094 protected: 00096 virtual const short int convert(const u_int8_t *const di_data, 00097 const u_int8_t num_chan); 00098 00099 bool digital_chan; 00100 di_serial_io m_connection; 00101 int chan_order[DI194_CHANNELS]; 00102 00103 private: 00105 00108 di194_dsdk(const di194_dsdk ©):dsdk(){}; 00109 }; 00110 00111 #endif 00112