Example #1
0
IpcInputFrameSeries::
IpcInputFrameSeries(OptionManager& mgr, int camera, int list_size, int width, int height,
		const std::string& descrName,
		const std::string& tagName) :
		SimModule(mgr, descrName, tagName),
		SIMCALLBACK_INIT(SimEventClockTick),
		SIMCALLBACK_INIT(SimEventWTAwinner)
{
	image_width = width;
	image_height = height;
	has_new_frame = 0;
	saliency_points_list_size = list_size;

	carmen_saliency_define_saliency_points_message();

	camera_instance = get_stereo_instance(camera, image_width, image_height);

	alloc_saliency_points_structure();
	temp_depth_map = (unsigned short *) calloc (image_height * image_width, sizeof(unsigned short));
	temp_disparity_map = (float *) calloc (image_height * image_width, sizeof(float));

	carmen_stereo_subscribe(camera, NULL, (carmen_handler_t) carmen_simple_stereo_disparity_handler, CARMEN_SUBSCRIBE_ALL);

	//carmen_fused_odometry_subscribe_fused_odometry_message(NULL, (carmen_handler_t) carmen_fused_odometry_odometry_message_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_localize_ackerman_subscribe_globalpos_message(NULL,  (carmen_handler_t) carmen_localize_ackerman_globalpos_handler, CARMEN_SUBSCRIBE_ALL);
}
int
main (int argc, char **argv)
{
	if (argc < 2)
		exit(printf("Use %s <rddf-file>\n", argv[0]));

	carmen_rddf_filename = argv[1];

	setlocale(LC_ALL, "C");
	signal(SIGINT, carmen_rddf_build_shutdown_module);

	carmen_ipc_initialize(argc, argv);
	carmen_param_check_version(argv[0]);
	carmen_rddf_build_get_parameters(argc, argv);
	carmen_rddf_play_open_kml();

	carmen_localize_ackerman_subscribe_globalpos_message(
			NULL, (carmen_handler_t) localize_globalpos_handler,
			CARMEN_SUBSCRIBE_ALL);

	carmen_ipc_addPeriodicTimer(1.0, (TIMER_HANDLER_TYPE) carmen_rddf_timer_handler,
			carmen_rddf_filename);

	carmen_ipc_dispatch();
	return (0);
}
static void
carmen_subscribe_to_relevant_messages()
{
    carmen_localize_ackerman_subscribe_globalpos_message(NULL,
            (carmen_handler_t)carmen_localize_ackerman_globalpos_message_handler,
            CARMEN_SUBSCRIBE_LATEST);

    carmen_grid_mapping_subscribe_message(NULL,
            (carmen_handler_t)carmen_grid_mapping_message_handler,
            CARMEN_SUBSCRIBE_LATEST);
}
Example #4
0
void
register_handlers()
{
	signal(SIGINT, signal_handler);

	if (!GlobalState::cheat)
		carmen_localize_ackerman_subscribe_globalpos_message(NULL, (carmen_handler_t) localize_ackerman_globalpos_message_handler, CARMEN_SUBSCRIBE_LATEST);
	else
		carmen_simulator_ackerman_subscribe_truepos_message(NULL, (carmen_handler_t) simulator_ackerman_truepos_message_handler, CARMEN_SUBSCRIBE_LATEST);

	carmen_base_ackerman_subscribe_odometry_message(NULL, (carmen_handler_t) base_ackerman_odometry_message_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_behavior_selector_subscribe_current_state_message(NULL, (carmen_handler_t) behavior_selector_state_message_handler, CARMEN_SUBSCRIBE_LATEST);

	register_handlers_specific();

}
int
main(int argc, char **argv)
{
	carmen_ipc_initialize(argc, argv);
	carmen_param_check_version(argv[0]);
	read_parameters(argc, argv, &car_config);


	carmen_localize_ackerman_subscribe_globalpos_message(&globalpos, NULL, CARMEN_SUBSCRIBE_LATEST);

	carmen_ipc_addPeriodicTimer(0.1, (TIMER_HANDLER_TYPE) build_points_vector_handler, NULL);

	carmen_ipc_dispatch();

	return 0;
}
int
main(int argc, char **argv)
{

	/* Connect to IPC Server */
	carmen_ipc_initialize(argc, argv);

	/* Check the param server version */
	carmen_param_check_version(argv[0]);

	/* Initialize vector of readings laser */


	/* Initialize vector of static points */


	/* Initialize all the relevant parameters */
	read_parameters(argc, argv);

	/* Register shutdown cleaner handler */
	signal(SIGINT, shutdown_module);

	/* Define messages that your module publishes */
	carmen_moving_objects_point_clouds_define_messages();

	/* Subscribe to sensor and filter messages */
	carmen_localize_ackerman_subscribe_globalpos_message(NULL,
				(carmen_handler_t) localize_ackerman_handler, CARMEN_SUBSCRIBE_LATEST);

    carmen_velodyne_subscribe_partial_scan_message(NULL,
    		(carmen_handler_t) velodyne_partial_scan_message_handler, CARMEN_SUBSCRIBE_LATEST);

    carmen_stereo_velodyne_subscribe_scan_message(8, NULL,
    		(carmen_handler_t)velodyne_variable_scan_message_handler, CARMEN_SUBSCRIBE_LATEST);

//    carmen_localize_ackerman_subscribe_globalpos_message(NULL,
//			(carmen_handler_t) localize_ackerman_handler, CARMEN_SUBSCRIBE_LATEST);

    carmen_map_server_subscribe_offline_map(NULL,
    		(carmen_handler_t) carmen_map_server_offline_map_message_handler, CARMEN_SUBSCRIBE_LATEST);



	carmen_ipc_dispatch();

	return (0);
}
int 
main(int argc, char **argv) 
{
	carmen_ipc_initialize(argc, argv);
	carmen_param_check_version(argv[0]);
	signal(SIGINT, shutdown_module);

	carmen_navigator_spline_define_messages();
	carmen_tracker_define_message_position();

	carmen_rddf_subscribe_road_profile_message(NULL, (carmen_handler_t) rddf_message_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_localize_ackerman_subscribe_globalpos_message(NULL, (carmen_handler_t) localize_globalpos_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_tracker_subscribe_position_message(NULL,(carmen_handler_t) tracker_position_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_ipc_addPeriodicTimer(1 / 2, (TIMER_HANDLER_TYPE) periodic_publish_spline_path_message, NULL);
	carmen_ipc_dispatch();

	return (0);
}
int 
main(int argc, char **argv)
{

	carmen_ipc_initialize(argc, argv);
	carmen_param_check_version(argv[0]);

	read_parameters(argc, argv);

	if (carmen_navigator_ackerman_initialize_ipc() < 0)
		carmen_die("Error: could not connect to IPC Server\n");

	signal(SIGINT, navigator_shutdown);

	carmen_map_server_subscribe_compact_cost_map(NULL, (carmen_handler_t) map_server_compact_cost_map_message_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_behavior_selector_subscribe_goal_list_message(NULL, (carmen_handler_t) goal_list_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_behavior_selector_subscribe_current_state_message(NULL, (carmen_handler_t) state_handler, CARMEN_SUBSCRIBE_LATEST);
	carmen_localize_ackerman_subscribe_globalpos_message(NULL, (carmen_handler_t)localize_globalpos_handler, CARMEN_SUBSCRIBE_LATEST);

	carmen_ipc_dispatch();

	return 0;
}
Example #9
0
void Carmen_Thread::register_handlers() {

    carmen_map_t map;


    carmen_map_get_gridmap(&map);
    set_map(&map);

    emit_map_changed_signal(map);

    carmen_map_subscribe_gridmap_update_message(
        NULL,
        (carmen_handler_t)map_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_grid_mapping_subscribe_message(NULL,
                                          (carmen_handler_t)grid_map_handler,
                                          CARMEN_SUBSCRIBE_LATEST);

    carmen_localize_ackerman_subscribe_globalpos_message(
        NULL,
        (carmen_handler_t)globalpos_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_simulator_ackerman_subscribe_truepos_message(
        NULL,
        (carmen_handler_t)truepos_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_simulator_subscribe_truepos_message(
        NULL,
        (carmen_handler_t)truepos_handler_diff,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_localize_ackerman_subscribe_particle_message(
        NULL,
        (carmen_handler_t)particle_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_localize_subscribe_globalpos_message(
        NULL,
        (carmen_handler_t)globalpos_handler_diff,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_laser_subscribe_frontlaser_message(
        NULL,
        (carmen_handler_t)laser_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_localize_ackerman_subscribe_sensor_message(
        NULL,
        (carmen_handler_t)localize_laser_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_navigator_ackerman_subscribe_plan_message(
        NULL,
        (carmen_handler_t)plan_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_navigator_subscribe_plan_message(
        NULL,
        (carmen_handler_t)plan_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_navigator_ackerman_subscribe_status_message(
        NULL,
        (carmen_handler_t) navigator_status_handler,
        CARMEN_SUBSCRIBE_LATEST);

    IPC_setMsgQueueLength(CARMEN_GRID_MAPPING_MESSAGE_NAME, 1);

    carmen_rrt_planner_subscribe_robot_tree_message(
        NULL,
        (carmen_handler_t)rrt_planner_robot_tree_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_rrt_planner_subscribe_goal_tree_message(
        NULL,
        (carmen_handler_t)rrt_planner_goal_tree_handler,
        CARMEN_SUBSCRIBE_LATEST);

    carmen_rrt_planner_subscribe_status_message(
        NULL,
        (carmen_handler_t)rrt_status_handler,
        CARMEN_SUBSCRIBE_LATEST);
}