I'm building a project to measure/track flyball dog races. The dogs timings are measured by photoelectric sensors at the start/finish line of the racing lane. I have most of my code working (available on github) but I'm having some difficulties in handling very short crossings of dogs. Since I cannot realistically run a real race at home next to my development machine :-), I'm trying to build a simulator class which gives the triggers that would normally come from my photoelectric sensors.
I have a RaceHandler class which has the following in its header file:
class RaceHandlerClass
{
public:
long* lRaceStartTime = &_lRaceStartTime;
private:
long _lRaceStartTime;
}
extern RaceHandlerClass RaceHandler;
As you can see I made a public pointer lRaceStartTime which points to the private _lRaceStartTime member variable. This might seem stupid/strange, but it really should a private member variable, I just want to 'temporarily' make it publicly available, so that I can use it in a temporary 'simulator' class to simulate a race towards my code.
Then I want to use this public pointer in the Simulator class like so:
long* lRaceStartTime = RaceHandler.lRaceStartTime;
long lRaceElapsedTime = micros() - lRaceStartTime;
However I get the following error when trying to compile this:
error: invalid operands of types 'long unsigned int' and 'long int*' to binary 'operator-'
I'm afraid my c++ knowledge ends here and I have no clue what I should do different to fix this... Any help would be greatly appreciated!
Since I cannot realistically run a real race at home next to my development machine
- how about mice?