Skip to content

Commit abb5efb

Browse files
committed
Got it working without hardcoded config values
1 parent 80397d1 commit abb5efb

File tree

4 files changed

+48
-47
lines changed

4 files changed

+48
-47
lines changed

ConfigFiles/config-PhoHomeTesting-06-02-2021.h

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,25 @@ Specifies what ports to open. Imported by config.h.
55
*/
66

77
// All:
8-
enum { NUM_CHANNELS = 7 };
9-
#define globalLabjackInputPortNames { "AIN0","AIN1","AIN2","AIN3","FIO_STATE","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"} // FIO_STATE: Read the state of the 8 bits of FIO in a single binary-encoded value.
10-
#define globalLabjackInputPortPurpose { "Water1_BeamBreak","Water2_BeamBreak","Food1_BeamBreak","Food2_BeamBreak","SIGNALS_Dispense","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"}
11-
#define globalLabjackInputPortIsAnalog { true,true,true,true,false,false,false}
12-
#define globalLabjackInputPortType {LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::DigitalState, LabjackPortType::DigitalState, LabjackPortType::DigitalState}
13-
#define globalLabjackInputPortIsLogged { true,true,true,true,true,false,false}
8+
//enum { NUM_CHANNELS = 7 };
9+
//#define globalLabjackInputPortNames { "AIN0","AIN1","AIN2","AIN3","FIO_STATE","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"} // FIO_STATE: Read the state of the 8 bits of FIO in a single binary-encoded value.
10+
//#define globalLabjackInputPortPurpose { "Water1_BeamBreak","Water2_BeamBreak","Food1_BeamBreak","Food2_BeamBreak","SIGNALS_Dispense","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"}
11+
//#define globalLabjackInputPortIsAnalog { true,true,true,true,false,false,false}
12+
//#define globalLabjackInputPortType {LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::DigitalState, LabjackPortType::DigitalState, LabjackPortType::DigitalState}
13+
//#define globalLabjackInputPortIsLogged { true,true,true,true,true,false,false}
1414

15-
// Digital Only:
16-
enum { NUM_CHANNELS_DIGITAL = 3 };
17-
#define globalLabjackDigitalInputPortNames { "FIO_STATE","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"}
18-
#define globalLabjackDigitalInputPortPurpose { "SIGNALS_Dispense","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"}
19-
#define globalLabjackDigitalInputPortType {LabjackPortType::DigitalState, LabjackPortType::DigitalState, LabjackPortType::DigitalState}
20-
#define globalLabjackDigitalInputPortIsLogged { true,false,false}
21-
22-
// Analog Only:
23-
enum { NUM_CHANNELS_ANALOG = 4 };
24-
#define globalLabjackAnalogInputPortNames {"AIN0","AIN1","AIN2","AIN3"}
25-
#define globalLabjackAnalogInputPortPurpose { "Water1_BeamBreak","Water2_BeamBreak","Food1_BeamBreak","Food2_BeamBreak"}
26-
#define globalLabjackAnalogInputPortType {LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog}
15+
//// Digital Only:
16+
//enum { NUM_CHANNELS_DIGITAL = 3 };
17+
//#define globalLabjackDigitalInputPortNames { "FIO_STATE","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"}
18+
//#define globalLabjackDigitalInputPortPurpose { "SIGNALS_Dispense","SYSTEM_TIMER_20HZ", "STREAM_DATA_CAPTURE_16"}
19+
//#define globalLabjackDigitalInputPortType {LabjackPortType::DigitalState, LabjackPortType::DigitalState, LabjackPortType::DigitalState}
20+
//#define globalLabjackDigitalInputPortIsLogged { true,false,false}
21+
//
22+
//// Analog Only:
23+
//enum { NUM_CHANNELS_ANALOG = 4 };
24+
//#define globalLabjackAnalogInputPortNames {"AIN0","AIN1","AIN2","AIN3"}
25+
//#define globalLabjackAnalogInputPortPurpose { "Water1_BeamBreak","Water2_BeamBreak","Food1_BeamBreak","Food2_BeamBreak"}
26+
//#define globalLabjackAnalogInputPortType {LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog, LabjackPortType::Analog}
2727

2828
//// Outputs:
2929
enum { NUM_OUTPUT_CHANNELS = 1 };

src/BehavioralBoxLabjack.cpp

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -256,20 +256,20 @@ void BehavioralBoxLabjack::printIdentifierLine()
256256
std::cout << ">> Labjack [" << this->serialNumber << "] :" << std::endl;
257257
}
258258

259-
void BehavioralBoxLabjack::diagnosticPrintLastValues()
260-
{
261-
this->printIdentifierLine();
262-
unsigned long long milliseconds_since_epoch = std::chrono::duration_cast<std::chrono::milliseconds>(this->lastCaptureComputerTime.time_since_epoch()).count();
263-
std::cout << "\t " << milliseconds_since_epoch;
264-
for (int i = 0; i < NUM_CHANNELS; i++) {
265-
//if (inputPortValuesChanged[i] == true) {
266-
// // The input port changed from the previous value
267-
268-
//}
269-
std::cout << "\t" << this->lastReadInputPortValues[i];
270-
}
271-
std::cout << std::endl;
272-
}
259+
//void BehavioralBoxLabjack::diagnosticPrintLastValues()
260+
//{
261+
// this->printIdentifierLine();
262+
// unsigned long long milliseconds_since_epoch = std::chrono::duration_cast<std::chrono::milliseconds>(this->lastCaptureComputerTime.time_since_epoch()).count();
263+
// std::cout << "\t " << milliseconds_since_epoch;
264+
// for (int i = 0; i < NUM_CHANNELS; i++) {
265+
// //if (inputPortValuesChanged[i] == true) {
266+
// // // The input port changed from the previous value
267+
//
268+
// //}
269+
// std::cout << "\t" << this->lastReadInputPortValues[i];
270+
// }
271+
// std::cout << std::endl;
272+
//}
273273

274274
int BehavioralBoxLabjack::getError()
275275
{
@@ -625,7 +625,8 @@ void BehavioralBoxLabjack::testBuildLogicalInputChannels()
625625
LabjackLogicalInputChannel* newInputChannel_A1 = new LabjackLogicalInputChannel({ "AIN1" }, { "Water2_BeamBreak" }, "AIN1");
626626
newInputChannel_A1->fn_generic_get_value = LabjackLogicalInputChannel::getDefault_genericGetValueFcn_AnalogAsDigitalInput();
627627
newInputChannel_A1->fn_generic_get_didValueChange = LabjackLogicalInputChannel::getDefault_didChangeFcn_AnalogAsDigitalInput();
628-
628+
this->logicalInputChannels.push_back(newInputChannel_A1);
629+
629630
LabjackLogicalInputChannel* newInputChannel_A2 = new LabjackLogicalInputChannel({ "AIN2" }, { "Food1_BeamBreak" }, "AIN2");
630631
newInputChannel_A2->fn_generic_get_value = LabjackLogicalInputChannel::getDefault_genericGetValueFcn_AnalogAsDigitalInput();
631632
newInputChannel_A2->fn_generic_get_didValueChange = LabjackLogicalInputChannel::getDefault_didChangeFcn_AnalogAsDigitalInput();
@@ -1113,15 +1114,15 @@ void BehavioralBoxLabjack::performPersistValues(unsigned long long estimated_sca
11131114
if (this->logicalInputChannels[logicalChannelIndex]->getReturnsContinuousValue())
11141115
{
11151116
// If it's an analog (continuous) port:
1116-
if (!this->logicalInputChannels[logicalChannelIndex]->isLoggedToCSV())
1117+
if (this->logicalInputChannels[logicalChannelIndex]->isLoggedToCSV())
11171118
{
11181119
newCSVLine_analogOnly << lastReadValues[currLinearOffsetIndex];
11191120
}
11201121
}
11211122
else
11221123
{
11231124
// Otherwise, it's a digital port
1124-
if (!this->logicalInputChannels[logicalChannelIndex]->isLoggedToCSV())
1125+
if (this->logicalInputChannels[logicalChannelIndex]->isLoggedToCSV())
11251126
{
11261127
newCSVLine_digitalOnly << lastReadValues[currLinearOffsetIndex];
11271128
}

src/BehavioralBoxLabjack.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ class BehavioralBoxLabjack
5353

5454
void diagnosticPrint();
5555
void printIdentifierLine();
56-
void diagnosticPrintLastValues();
56+
//void diagnosticPrintLastValues();
5757
int getError();
5858

5959
// Time
@@ -162,13 +162,13 @@ class BehavioralBoxLabjack
162162

163163
// Variables for holding the last read values
164164
StateMonitor* monitor;
165-
// All Values:
166-
char * inputPortNames_all[NUM_CHANNELS] = globalLabjackInputPortNames;
167-
char * inputPortPurpose_all[NUM_CHANNELS] = globalLabjackInputPortPurpose;
168-
LabjackPortType inputPortTypes_all[NUM_CHANNELS] = globalLabjackInputPortType;
169-
bool inputPortIsLogged_all[NUM_CHANNELS] = globalLabjackInputPortIsLogged;
170-
bool inputPortIsAnalog[NUM_CHANNELS] = globalLabjackInputPortIsAnalog;
171-
double lastReadInputPortValues[NUM_CHANNELS] = {0.0};
165+
//// All Values:
166+
//char * inputPortNames_all[NUM_CHANNELS] = globalLabjackInputPortNames;
167+
//char * inputPortPurpose_all[NUM_CHANNELS] = globalLabjackInputPortPurpose;
168+
//LabjackPortType inputPortTypes_all[NUM_CHANNELS] = globalLabjackInputPortType;
169+
//bool inputPortIsLogged_all[NUM_CHANNELS] = globalLabjackInputPortIsLogged;
170+
//bool inputPortIsAnalog[NUM_CHANNELS] = globalLabjackInputPortIsAnalog;
171+
//double lastReadInputPortValues[NUM_CHANNELS] = {0.0};
172172

173173
//// Digital values:
174174
//char* inputPortNames_digital[NUM_CHANNELS_DIGITAL] = globalLabjackDigitalInputPortNames;

src/config.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Specifies what ports to open
5252
//#include "../ConfigFiles/config-AnalogRunningWheel-12-17-2019.h"
5353
//// -- OR --
5454
//#include "../ConfigFiles/config-PhoHomeTesting-05-28-2021.h"
55-
//// -- OR --
56-
//#include "../ConfigFiles/config-PhoHomeTesting-06-02-2021.h"
57-
//// -- OR --
58-
#include "../ConfigFiles/config-FinalBoxesStreamMode-06-09-2021.h"
55+
// -- OR --
56+
#include "../ConfigFiles/config-PhoHomeTesting-06-02-2021.h"
57+
////// -- OR --
58+
//#include "../ConfigFiles/config-FinalBoxesStreamMode-06-09-2021.h"

0 commit comments

Comments
 (0)