CEBL  2.1
DeviceConfig.hpp
Go to the documentation of this file.
1 /*
2 * CEBL : CSU EEG Brain-Computer Interface Lab
3 *
4 * Author: Jeshua Bratman - jeshuabratman@gmail.com
5 *
6 * This file is part of CEBL.
7 *
8 * CEBL is free software; you can redistribute it and/or modify it.
9 * We only ask that if you use our code that you cite the source in
10 * your project or publication.
11 *
12 * EEG Group (www.cs.colostate.edu/eeg)
13 * Department of Computer Science
14 * Colorado State University
15 *
16 */
17 
26 #ifndef DEVICECONFIG_H
27 #define DEVICECONFIG_H
28 
29 //forward declarations
30 class CEBLModel;
31 
32 
34 {
35 private:
36  string device_location;
37  bool device_connected;
38  bool device_exists;
39  bool device_writeable;
40 
41  CEBLModel * model;
42  string error_text;
43  string inquiry_text;
44 
45  int block_size;
46  int sample_rate;
47 
48 public:
50  ~DeviceConfig();
51 
52  string getLocation() { return device_location; }
53  bool isReady();
54  string getError() { return error_text; }
55  string getInquiry() { return inquiry_text; }
56  bool exists() { return device_exists; }
57  int getSampleRate();
58  int getBlockSize();
59 
60  void setDeviceLocation(std::string location);
61  void setSampleRate(int sample_rate);
62  void setBlockSize(int block_size);
63  void scanForDevices();
64 };
65 
66 
67 #endif