acpc_dealer 0.0.3 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/acpc_dealer/dealer_runner.rb +9 -9
- data/lib/acpc_dealer/version.rb +2 -2
- data/vendor/project_acpc_server/dealer +0 -0
- data/vendor/project_acpc_server/dealer.c +10 -6
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 78ed614e19d26963f88c9fd399ff6a8f877f3fef
|
4
|
+
data.tar.gz: aa460540fa0fc27e2df007b3f18087e372d3faf5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: dba4619111a26f5489f302a47a6006afbb293cb12f718d12a79fcbbe51f66a13dd40e2fe39df40ec4816da99a4a7254d23ee50686f1d4ecffa2d50491b6c2734
|
7
|
+
data.tar.gz: c4214f79d46b692e5fae27dcce538066da69e0681f729fadeb5a51039e89d12821bf337ed6ca7b55b6daade5ef294e255803a2f2540200e7b99152d502197568
|
@@ -10,17 +10,17 @@ class DealerRunner
|
|
10
10
|
# => (see ::start)
|
11
11
|
DEALER_COMMAND_FORMAT = [
|
12
12
|
# @note The name of the match to start.
|
13
|
-
:match_name,
|
13
|
+
:match_name,
|
14
14
|
# @note The path of the game definition to use.
|
15
|
-
:game_def_file_name,
|
15
|
+
:game_def_file_name,
|
16
16
|
# @note The number of hands to play.
|
17
17
|
:hands,
|
18
18
|
# @note The random seed to use.
|
19
|
-
:random_seed,
|
19
|
+
:random_seed,
|
20
20
|
# @note The names of the players in the game. Should be specified as a space delimited string of names.
|
21
21
|
:player_names,
|
22
22
|
# @note Should be specified as an option string that the dealer will understand.
|
23
|
-
:options
|
23
|
+
:options
|
24
24
|
]
|
25
25
|
|
26
26
|
# @param [Array] dealer_arguments Arguments to the new dealer instance.
|
@@ -28,27 +28,27 @@ class DealerRunner
|
|
28
28
|
# => Defaults to +<dealer_arguments[:match_name]>.logs+.
|
29
29
|
# @param [Array] port_numbers The port numbers to which each player will connect.
|
30
30
|
# => Defaults to random.
|
31
|
-
# @return [Hash] The process ID of the started dealer (key +:pid+) and the array of ports that players may
|
31
|
+
# @return [Hash] The process ID of the started dealer (key +:pid+) and the array of ports that players may
|
32
32
|
# => use to connect to the new dealer instance (key +:port_numbers+).
|
33
33
|
# @raise (see ProcessRunner::go)
|
34
34
|
# @raise (see FileUtils::mkdir_p)
|
35
35
|
def self.start(dealer_arguments, log_directory=nil, port_numbers=nil)
|
36
36
|
dealer_start_command = DEALER_COMMAND_FORMAT.inject([AcpcDealer::DEALER_PATH]) do |command, parameter|
|
37
37
|
command << dealer_arguments[parameter].to_s
|
38
|
-
end
|
38
|
+
end
|
39
39
|
dealer_start_command << "-p #{port_numbers.join(',')}" if port_numbers
|
40
40
|
|
41
41
|
unless log_directory
|
42
42
|
log_directory = File.expand_path("../#{dealer_arguments[:match_name]}.logs", __FILE__)
|
43
43
|
end
|
44
44
|
|
45
|
-
FileUtils.mkdir_p log_directory
|
45
|
+
FileUtils.mkdir_p log_directory unless Dir.exist?(log_directory)
|
46
46
|
|
47
47
|
IO.pipe do |read_io, write_io|
|
48
48
|
pid = ProcessRunner.go(
|
49
|
-
dealer_start_command,
|
49
|
+
dealer_start_command,
|
50
50
|
err: [
|
51
|
-
"#{dealer_arguments[:match_name]}.actions.log",
|
51
|
+
File.join(log_directory, "#{dealer_arguments[:match_name]}.actions.log"),
|
52
52
|
File::CREAT|File::WRONLY
|
53
53
|
],
|
54
54
|
out: write_io,
|
data/lib/acpc_dealer/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module AcpcDealer
|
2
|
-
VERSION = "0.0.
|
3
|
-
end
|
2
|
+
VERSION = "0.0.5"
|
3
|
+
end
|
Binary file
|
@@ -127,7 +127,7 @@ static void initErrorInfo( const uint32_t maxInvalidActions,
|
|
127
127
|
info->usedMatchMicros[ s ] = 0;
|
128
128
|
}
|
129
129
|
}
|
130
|
-
|
130
|
+
|
131
131
|
|
132
132
|
/* update the number of invalid actions for seat
|
133
133
|
returns >= 0 if match should continue, -1 for failure */
|
@@ -704,8 +704,8 @@ static int printFinalMessage( const Game *game, char *seatName[ MAX_PLAYERS ],
|
|
704
704
|
|
705
705
|
actions are read/sent to seat p on seatFD[ p ]
|
706
706
|
|
707
|
-
if quiet is not zero, only print out errors, warnings, and final value
|
708
|
-
|
707
|
+
if quiet is not zero, only print out errors, warnings, and final value
|
708
|
+
|
709
709
|
if logFile is not NULL, print out a single line for each completed
|
710
710
|
match with the final state and all player values. The values are
|
711
711
|
printed in player, not seat order.
|
@@ -1186,7 +1186,7 @@ int main( int argc, char **argv )
|
|
1186
1186
|
fprintf( stderr, "ERROR: could not open transaction file %s\n", name );
|
1187
1187
|
exit( EXIT_FAILURE );
|
1188
1188
|
}
|
1189
|
-
} else {
|
1189
|
+
} else {
|
1190
1190
|
/* no transaction file */
|
1191
1191
|
|
1192
1192
|
transactionFile = NULL;
|
@@ -1275,8 +1275,12 @@ int main( int argc, char **argv )
|
|
1275
1275
|
exit( EXIT_FAILURE );
|
1276
1276
|
}
|
1277
1277
|
|
1278
|
-
fflush( stderr );
|
1279
|
-
fflush( stdout );
|
1278
|
+
//fflush( stderr );
|
1279
|
+
//fflush( stdout );
|
1280
|
+
// Otherwise the last line or two of the log file
|
1281
|
+
// won't be written sometimes when run through a
|
1282
|
+
// Ruby interface.
|
1283
|
+
fflush(NULL);
|
1280
1284
|
if( transactionFile != NULL ) {
|
1281
1285
|
fclose( transactionFile );
|
1282
1286
|
}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: acpc_dealer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dustin Morrill
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-05-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: clive
|