コード例 #1
0
ファイル: LRTV.cpp プロジェクト: xuehy/depthInpainting
Mat LRTV::compute()
{
  int max_iter = 30;
  for(int iter = 0; iter < max_iter; ++iter)
    {
      cout << "=====================" << endl;
      cout << "Iter = " << (iter + 1) << endl;
      
      sub_1();
      sub_2();
      sub_3();

      // when to stop needs further consideration
      if( iter >= 5 && norm(U_, U_last_) / norm(U_last_) < 1.5e-3 )
	{
	  break;
	}
      cout << "relative error = " << 1.0* norm(U_, U_last_) / norm(U_last_) << endl;
      U_.copyTo(U_last_);

      
      cout << "PSNR = " << PSNR(I_, U_, mask_) << endl;
      cout << endl;
      
    }

  return U_;
}
コード例 #2
0
ファイル: file_client.c プロジェクト: AmeyRuikar/RPC
void
substring_1(char *host, char * str)
{
	CLIENT *clnt;
	double  *result_1;
	//char * sub_1_arg;

#ifndef	DEBUG
	clnt = clnt_create (host, SUBSTRING, SUB, "tcp");
	if (clnt == NULL) {
		clnt_pcreateerror (host);
		exit (1);
	}
#endif	/* DEBUG */

	
	
	result_1 = sub_1(&str, clnt);
	if (result_1 == (double *) NULL) {
		clnt_perror (clnt, "call failed");
	}
	
	printf("number of occurences: %e",*result_1);
	
	
	
#ifndef	DEBUG
	clnt_destroy (clnt);
#endif	 /* DEBUG */
}
コード例 #3
0
TEST(CanAcceptanceFilter, Basic_test)
{
    uavcan::GlobalDataTypeRegistry::instance().reset();
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::camera_gimbal::AngularCommand> _reg1;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::Sideslip> _reg2;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::TrueAirspeed> _reg3;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::AngleOfAttack> _reg4;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::ahrs::Solution> _reg5;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::StaticPressure> _reg6;
    uavcan::DefaultDataTypeRegistrator<uavcan::protocol::file::BeginFirmwareUpdate> _reg7;

    SystemClockDriver clock_driver;
    CanDriverMock can_driver(1, clock_driver);
    TestNode node(can_driver, clock_driver, 24);

    uavcan::Subscriber<uavcan::equipment::camera_gimbal::AngularCommand,
                    SubscriptionListener<uavcan::equipment::camera_gimbal::AngularCommand>::ExtendedBinder> sub_1(node);
    uavcan::Subscriber<uavcan::equipment::air_data::Sideslip,
                       SubscriptionListener<uavcan::equipment::air_data::Sideslip>::ExtendedBinder> sub_2(node);
    uavcan::Subscriber<uavcan::equipment::air_data::TrueAirspeed,
                       SubscriptionListener<uavcan::equipment::air_data::TrueAirspeed>::ExtendedBinder> sub_3(node);
    uavcan::Subscriber<uavcan::equipment::air_data::AngleOfAttack,
                       SubscriptionListener<uavcan::equipment::air_data::AngleOfAttack>::ExtendedBinder> sub_4(node);
    uavcan::Subscriber<uavcan::equipment::ahrs::Solution,
                       SubscriptionListener<uavcan::equipment::ahrs::Solution>::ExtendedBinder> sub_5(node);
    uavcan::Subscriber<uavcan::equipment::air_data::StaticPressure,
                       SubscriptionListener<uavcan::equipment::air_data::StaticPressure>::ExtendedBinder> sub_6(node);
    uavcan::Subscriber<uavcan::equipment::air_data::StaticPressure,
                       SubscriptionListener<uavcan::equipment::air_data::StaticPressure>::ExtendedBinder> sub_6_1(node);
    uavcan::ServiceServer<uavcan::protocol::file::BeginFirmwareUpdate> server(node);

    SubscriptionListener<uavcan::equipment::camera_gimbal::AngularCommand> listener_1;
    SubscriptionListener<uavcan::equipment::air_data::Sideslip> listener_2;
    SubscriptionListener<uavcan::equipment::air_data::TrueAirspeed> listener_3;
    SubscriptionListener<uavcan::equipment::air_data::AngleOfAttack> listener_4;
    SubscriptionListener<uavcan::equipment::ahrs::Solution> listener_5;
    SubscriptionListener<uavcan::equipment::air_data::StaticPressure> listener_6;

    sub_1.start(listener_1.bindExtended());
    sub_2.start(listener_2.bindExtended());
    sub_3.start(listener_3.bindExtended());
    sub_4.start(listener_4.bindExtended());
    sub_5.start(listener_5.bindExtended());
    sub_6.start(listener_6.bindExtended());
    sub_6_1.start(listener_6.bindExtended());
    server.start(writeServiceServerCallback);
    std::cout << "Subscribers are initialized ..." << std::endl;


    uavcan::CanAcceptanceFilterConfigurator anon_test_configuration(node);
    int configure_filters_assert = anon_test_configuration.configureFilters();
    if (configure_filters_assert == 0)
    {
        std::cout << "Filters are configured with anonymous configuration..." << std::endl;
    }

    const auto& configure_array = anon_test_configuration.getConfiguration();
    uint32_t configure_array_size = configure_array.getSize();

    ASSERT_EQ(configure_filters_assert, 0);
    ASSERT_EQ(configure_array_size, 4);

    for (uint16_t i = 0; i<configure_array_size; i++)
    {
        std::cout << "config.ID [" << i << "]= " << configure_array.getByIndex(i)->id << std::endl;
        std::cout << "config.MK [" << i << "]= " << configure_array.getByIndex(i)->mask << std::endl;
    }

    ASSERT_EQ(configure_array.getByIndex(0)->id, 0);
    ASSERT_EQ(configure_array.getByIndex(0)->mask, 255);
    ASSERT_EQ(configure_array.getByIndex(1)->id, 256000);
    ASSERT_EQ(configure_array.getByIndex(1)->mask, 16771968);
    ASSERT_EQ(configure_array.getByIndex(2)->id, 6272);
    ASSERT_EQ(configure_array.getByIndex(2)->mask, 32640);
    ASSERT_EQ(configure_array.getByIndex(3)->id, 262144);
    ASSERT_EQ(configure_array.getByIndex(3)->mask, 16771200);


    uavcan::CanAcceptanceFilterConfigurator no_anon_test_confiruration(node);
    configure_filters_assert = no_anon_test_confiruration.configureFilters
                                   (uavcan::CanAcceptanceFilterConfigurator::IgnoreAnonymousMessages);
    if (configure_filters_assert == 0)
    {
        std::cout << "Filters are configured without anonymous configuration..." << std::endl;
    }
    const auto& configure_array_2 = no_anon_test_confiruration.getConfiguration();
    configure_array_size = configure_array_2.getSize();

    ASSERT_EQ(configure_filters_assert, 0);
    ASSERT_EQ(configure_array_size, 4);

    for (uint16_t i = 0; i<configure_array_size; i++)
    {
        std::cout << "config.ID [" << i << "]= " << configure_array.getByIndex(i)->id << std::endl;
        std::cout << "config.MK [" << i << "]= " << configure_array.getByIndex(i)->mask << std::endl;
    }

    ASSERT_EQ(configure_array_2.getByIndex(0)->id, 6272);
    ASSERT_EQ(configure_array_2.getByIndex(0)->mask, 32640);
    ASSERT_EQ(configure_array_2.getByIndex(1)->id, 262144);
    ASSERT_EQ(configure_array_2.getByIndex(1)->mask, 16776320);
    ASSERT_EQ(configure_array_2.getByIndex(2)->id, 256000);
    ASSERT_EQ(configure_array_2.getByIndex(2)->mask, 16771968);
    ASSERT_EQ(configure_array_2.getByIndex(3)->id, 262144);
    ASSERT_EQ(configure_array_2.getByIndex(3)->mask, 16771968);
}
コード例 #4
0
TEST(CanAcceptanceFilter, Basic_test)
{
    uavcan::GlobalDataTypeRegistry::instance().reset();
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::camera_gimbal::AngularCommand> _reg1;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::Sideslip> _reg2;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::TrueAirspeed> _reg3;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::AngleOfAttack> _reg4;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::ahrs::AHRS> _reg5;
    uavcan::DefaultDataTypeRegistrator<uavcan::equipment::air_data::StaticPressure> _reg6;
    uavcan::DefaultDataTypeRegistrator<uavcan::protocol::file::BeginFirmwareUpdate> _reg7;

    SystemClockDriver clock_driver;
    CanDriverMock can_driver(1, clock_driver);
    TestNode node(can_driver, clock_driver, 24);

    uavcan::Subscriber<uavcan::equipment::camera_gimbal::AngularCommand,
                    SubscriptionListener<uavcan::equipment::camera_gimbal::AngularCommand>::ExtendedBinder> sub_1(node);
    uavcan::Subscriber<uavcan::equipment::air_data::Sideslip,
                       SubscriptionListener<uavcan::equipment::air_data::Sideslip>::ExtendedBinder> sub_2(node);
    uavcan::Subscriber<uavcan::equipment::air_data::TrueAirspeed,
                       SubscriptionListener<uavcan::equipment::air_data::TrueAirspeed>::ExtendedBinder> sub_3(node);
    uavcan::Subscriber<uavcan::equipment::air_data::AngleOfAttack,
                       SubscriptionListener<uavcan::equipment::air_data::AngleOfAttack>::ExtendedBinder> sub_4(node);
    uavcan::Subscriber<uavcan::equipment::ahrs::AHRS,
                       SubscriptionListener<uavcan::equipment::ahrs::AHRS>::ExtendedBinder> sub_5(node);
    uavcan::Subscriber<uavcan::equipment::air_data::StaticPressure,
                       SubscriptionListener<uavcan::equipment::air_data::StaticPressure>::ExtendedBinder> sub_6(node);
    uavcan::Subscriber<uavcan::equipment::air_data::StaticPressure,
                       SubscriptionListener<uavcan::equipment::air_data::StaticPressure>::ExtendedBinder> sub_6_1(node);
    uavcan::ServiceServer<uavcan::protocol::file::BeginFirmwareUpdate> server(node);

    SubscriptionListener<uavcan::equipment::camera_gimbal::AngularCommand> listener_1;
    SubscriptionListener<uavcan::equipment::air_data::Sideslip> listener_2;
    SubscriptionListener<uavcan::equipment::air_data::TrueAirspeed> listener_3;
    SubscriptionListener<uavcan::equipment::air_data::AngleOfAttack> listener_4;
    SubscriptionListener<uavcan::equipment::ahrs::AHRS> listener_5;
    SubscriptionListener<uavcan::equipment::air_data::StaticPressure> listener_6;

    sub_1.start(listener_1.bindExtended());
    sub_2.start(listener_2.bindExtended());
    sub_3.start(listener_3.bindExtended());
    sub_4.start(listener_4.bindExtended());
    sub_5.start(listener_5.bindExtended());
    sub_6.start(listener_6.bindExtended());
    sub_6_1.start(listener_6.bindExtended());
    server.start(writeServiceServerCallback);
    std::cout << "Subscribers are initialized ..." << std::endl;

    uavcan::CanAcceptanceFilterConfigurator test_configurator(node);
    int configure_filters_assert = test_configurator.configureFilters();
    if (configure_filters_assert == 0)
    {
        std::cout << "Filters are configured ..." << std::endl;
    }

    const auto& configure_array = test_configurator.getConfiguration();
    uint32_t configure_array_size = configure_array.getSize();

    ASSERT_EQ(configure_filters_assert, 0);
    ASSERT_EQ(configure_array_size, 4);

    for (uint16_t i = 0; i<configure_array_size; i++)
    {
        std::cout << "config.ID [" << i << "]= " << configure_array.getByIndex(i)->id << std::endl;
        std::cout << "config.MK [" << i << "]= " << configure_array.getByIndex(i)->mask << std::endl;
    }

    ASSERT_EQ(configure_array.getByIndex(0)->id, 268435456);
    ASSERT_EQ(configure_array.getByIndex(0)->mask, 469762048);
    ASSERT_EQ(configure_array.getByIndex(1)->id, 363069440);
    ASSERT_EQ(configure_array.getByIndex(1)->mask, 536739840);
    ASSERT_EQ(configure_array.getByIndex(2)->id, 16777216);
    ASSERT_EQ(configure_array.getByIndex(2)->mask, 124452864);
    ASSERT_EQ(configure_array.getByIndex(3)->id, 18874368);
    ASSERT_EQ(configure_array.getByIndex(3)->mask, 133169152);
}
コード例 #5
0
ファイル: client.c プロジェクト: vinicius-lima/limatestcodes
void main(int argc, char *argv[]) {
	CLIENT *cliente;
	int *return_value;
	float *f_return_value;
	char *servidor;

	if (argc < 5){
		fprintf(stderr,
				"Usage:\n%s <server> <operation> <number 1> <number 2>\n",
				argv[0]);
		fprintf(stderr, "Example:\n%s localhost add 2 5\n", argv[0]);
		exit (1);
	}
	
	servidor = argv[1];

	// Generating handle to call server.
	if ((cliente=clnt_create(servidor, CALCULATOR, CALCULATORVERS, "tcp"))
			== (CLIENT *) NULL) {
		clnt_pcreateerror(servidor);
		exit(2);
	}
	
	if (strcmp(argv[2], "add") == 0) {

		return_value = add_1(atoi(argv[3]), atoi(argv[4]), cliente);
		if (! *return_value) {
			fprintf(stderr, "error: couldn't add\n");
			exit(1);
		}
		else{
			printf("Return value = %d\n", *return_value);
		}
		exit(0);
		
	}
	else if (strcmp(argv[2], "sub") == 0) {

		return_value = sub_1(atoi(argv[3]), atoi(argv[4]), cliente);
		if (! *return_value) {
			fprintf(stderr, "error: couldn't sub\n");
			exit(1);
		}
		else{
			printf("Return value = %d\n", *return_value);
		}
		exit(0);
		
	}
	else if (strcmp(argv[2], "times") == 0) {

		return_value = times_1(atoi(argv[3]), atoi(argv[4]), cliente);
		if (! *return_value) {
			fprintf(stderr, "error: couldn't times\n");
			exit(1);
		}
		else{
			printf("Return value = %d\n", *return_value);
		}
		exit(0);
		
	}
	else if (strcmp(argv[2], "divide") == 0) {

		f_return_value = divide_1(atoi(argv[3]), atoi(argv[4]), cliente);
		if (! *f_return_value) {
			fprintf(stderr, "error: couldn't divide\n");
			exit(1);
		}
		else{
			printf("Return value = %.3f\n", *f_return_value);
		}
		exit(0);
		
	}
	else{
		fprintf(stderr, "Avaiable operations: add, sub, times, divide\n");
	}

	clnt_destroy(cliente);
}