#ifndef simpleColorCode_H_
#define simpleColorCode_H_

#include "robots/blinkyBlocks/blinkyBlocksSimulator.h"
#include "robots/blinkyBlocks/blinkyBlocksWorld.h"
#include "robots/blinkyBlocks/blinkyBlocksBlockCode.h"


using namespace BlinkyBlocks;

class SimpleColorCode : public BlinkyBlocksBlockCode {
private:
	BlinkyBlocksBlock *module = nullptr;
public :
	SimpleColorCode(BlinkyBlocksBlock *host);
	~SimpleColorCode() {};

/**
  * This function is called on startup of the blockCode, it can be used to perform initial
  *  configuration of the host or this instance of the program.
  * @note this can be thought of as the main function of the module
  */
    void startup() override;

/*****************************************************************************/
/** needed to associate code to module                                      **/
	static BlockCode *buildNewBlockCode(BuildingBlock *host) {
	    return(new SimpleColorCode((BlinkyBlocksBlock*)host));
	};
/*****************************************************************************/
};

#endif /* simpleColorCode_H_ */