Esempio n. 1
0
int process_order_helper() {
	int x;

	printf("How many items will the external system process? ");
	scanf("%d", &x);

	return process_order(x);
}
Esempio n. 2
0
uint64_t *exec_behaviour( uint64_t *message_ptr )
{
  event_ptr = ( event_t* )*message_ptr;
  DEBUGV( printf( "Consume message: %s\n", event_to_string( event_ptr ) ) );

  if( order_ptr = event_ptr->order_ptr )
  {
    // Existing event
    DEBUGV( printf( "Update existing event order\n" ) );
    order_ptr->value = process_order();
	}
  else
	{
    // New event
    DEBUGV( printf( "Create new event order\n" ) );
    order_ptr = event_ptr->order_ptr = &order_pool_ptr->ring[ ++idx & RING_ENTRY_MASK ];
    order_ptr->value = 0;
	}

  DEBUGV( printf( "Republishing message: %s\n", event_to_string( event_ptr ) ) );
  *message_ptr = ( uint64_t )event_ptr;
  return message_ptr;
}
Esempio n. 3
0
void menu_file(warehouse *warehouses)
{
	boolean loop = TRUE;
	int option;

	FILE *load_data = NULL;
	char filename[FILENAME_SIZE] = {0};

	while(loop)
	{
		show_menu(4);
		int_input(&option, 3);

		switch(option)
		{
			case 1:
				{
					if((warehouses->hallways_size > 0) && (warehouses->hallways[warehouses->hallways_size - 1].storages_size > 0))
					{
						get_filename(filename, FILENAME_SIZE);
						load_data = get_file(filename, "r");	

						if (load_data != NULL)
						{
							update_stock(warehouses, load_data);
							fclose(load_data);
							printf("\n");
						}
						else
						{
							printf("Nao foi possivel carregar o ficheiro.\n\n");
						}
					}
					else
					{
						printf("Nao existem corredores ou armarios.\n\n");
					}
					break;
				}
			case 2:
				{
					if((warehouses->hallways_size > 0) && (warehouses->hallways[warehouses->hallways_size - 1].storages_size > 0))
					{
						get_filename(filename, FILENAME_SIZE);
						load_data = get_file(filename, "r");	

						if (load_data != NULL)
						{
							process_order(warehouses, load_data);
							fclose(load_data);
							printf("\n");
						}
						else
						{
							printf("Nao foi possivel carregar o ficheiro.\n\n");
						}
					}
					else
					{
						printf("Nao existem corredores ou armarios.\n\n");
					}
					break;
				}
			case 9:
				{
					loop = FALSE;
					break;
				}
			default:
				{
					printf("Essa opcao nao existe.\n\n");
					break;
				}
		}
	}
}