void TopoSegBuilderComponent::start()
{
    println("************************************************************");
    println("******* TopoSegBuilderComponent ROS CAST Component *********");
    println("******************* Status: starting ***********************");
    println("************************************************************");
    
    char* argv[] = {};
	int argc = sizeof (argv) / sizeof (char *);
	
	println("******************** ROS init() ****************************");
	ros::init(argc, argv, "TopoSegBuilderComponent");
	
	client = new TopoSegClient("toposeg_control",true);
	
	println("***************** Initializing filters *********************");
	addChangeFilter(createLocalTypeFilter<TogoGraphBuilderAction>(ADD),new MemberFunctionChangeReceiver<TopoSegBuilderComponent>(this,&TopoSegBuilderComponent::topoSegActionReceived));	

}
void ChameleonComponent::setFilters(){
	addChangeFilter(cast::createLocalTypeFilter<chameleon::RecogniseThis>(cast::cdl::OVERWRITE), new cast::MemberFunctionChangeReceiver<ChameleonComponent>(this, &ChameleonComponent::recognised));
	addChangeFilter(cast::createLocalTypeFilter<chameleon::LearnThis>(cast::cdl::DELETE), new cast::MemberFunctionChangeReceiver<ChameleonComponent>(this, &ChameleonComponent::learned));

};