Behaviours.cpp 1.14 KiB
BehaviourTable::BehaviourTable()
{}
void BehaviourTable::add(Behaviour *b)
{
behaviours[num] = b;
num++;
};
Behaviour * BehaviourTable::get(String n)
{
for( int i = 0; i < num; i++ )
{
if( behaviours[i]->name() == n)
{
return behaviours[i];
}
}
return nullptr;
};
int BehaviourTable::get_num_behaviours()
{
return num;
};
Behaviour * BehaviourTable::get_by_num(int n)
{
return behaviours[n];
};
Behaviour::Behaviour(String name) : _name(name)
{};
Behaviour::~Behaviour()
{};
int Behaviour::is_temp()
{
return _temp;
};
void Behaviour::update()
{};
int Behaviour::is_interruptable()
{
return _interruptable;
};
int Behaviour::is_priority()
{
return _priority;
};
int Behaviour::is_running()
{
return _running;
};
int Behaviour::name()
{
return _name;
};
int Behaviour::start(String args)
{
Serial.println("Base start called <"+args+">");
};
int Behaviour::is_background()
{
return _background;
};
void Behaviour::stop()
{
_running = false;
};
char * Behaviour::args()
{
return "null";
};
TestBehaviour::TestBehaviour()
{};
int TestBehaviour::start(String args)
{
return "Test behaviour " + _name + " with (" + args + ")";
};