AI-Pathfinding-OptimizeMultiple
view release on metacpan or search on metacpan
lib/AI/Pathfinding/OptimizeMultiple/DataInputObj.pm view on Meta::CPAN
my $self = shift;
my $extra_dims = shift || [];
return zeroes( $self->num_boards(), $self->_num_sel_scans, @$extra_dims );
}
sub _should_update
{
my ( $self, $src_path, $dest_path ) = @_;
my @orig_stat = stat($src_path);
my @proc_stat = stat($dest_path);
return ( ( !@proc_stat ) || ( $orig_stat[9] > $proc_stat[9] ) );
}
# Number of numbers in the header of the solutions' iteration counts
my $NUM_NUMBERS_IN_HEADER = 3;
my $HEADER_START_BOARD_IDX = 0;
my $HEADER_NUM_BOARDS = 1;
my $HEADER_ITERATIONS_LIMIT = 2;
lib/AI/Pathfinding/OptimizeMultiple/DataInputObj.pm view on Meta::CPAN
my %black_list = ( map { /(\d+)/ ? ( $1 => 1 ) : () } @$black_list_ids );
return [ grep { !exists( $black_list{ $_->id() } ) } @$scans ];
}
sub _is_scan_suitable
{
my ( $self, $scan ) = @_;
my @stat = stat( $scan->data_file_path() );
return (
scalar(@stat)
&& ( $stat[7] >=
12 + ( $self->num_boards() + $self->start_board() - 1 ) * 4 )
);
}
sub _get_scans_registry_file_path
{
return "scans.txt";
( run in 0.994 second using v1.01-cache-2.11-cpan-49f99fa48dc )