Initial commit
This commit is contained in:
53
306-controller_interface.X/factory/factory.c
Normal file
53
306-controller_interface.X/factory/factory.c
Normal file
@@ -0,0 +1,53 @@
|
||||
#include "factory.h"
|
||||
|
||||
|
||||
//the factory object containing all objects of our system
|
||||
static Factory theFactory;
|
||||
|
||||
|
||||
//all the getters
|
||||
LED* l()
|
||||
{
|
||||
return &theFactory.l_;
|
||||
}
|
||||
|
||||
Button* b()
|
||||
{
|
||||
return &theFactory.b_;
|
||||
}
|
||||
|
||||
ButtonSM* bsm()
|
||||
{
|
||||
return &theFactory.bsm_;
|
||||
}
|
||||
|
||||
BLControl* blc()
|
||||
{
|
||||
return &theFactory.blc_;
|
||||
}
|
||||
|
||||
|
||||
//initialize all objects
|
||||
void Factory_init()
|
||||
{
|
||||
LED_init(l(),LID);
|
||||
LED_initHW(l());
|
||||
Button_init(b(),BID, true);
|
||||
Button_initHW(b());
|
||||
ButtonSM_init(bsm(),b());
|
||||
BLControl_init(blc());
|
||||
;
|
||||
|
||||
}
|
||||
|
||||
//connect objects if required
|
||||
void Factory_build()
|
||||
{
|
||||
ButtonSM_setObserver(bsm(), blc(), &BLControl_onButton);
|
||||
}
|
||||
|
||||
//start all state machines
|
||||
void Factory_start()
|
||||
{
|
||||
ButtonSM_startBehaviour(bsm());
|
||||
}
|
||||
Reference in New Issue
Block a user