ColorShapeLinks AI
An AI competition for the IEEE Conference on Games 2021
|
Controls a session of ColorShapeLinks matches. More...
Public Member Functions | |
SessionController (IMatchConfig matchConfig, ISessionConfig sessionConfig, IEnumerable< IThinkerPrototype > thinkerPrototypes, IEnumerable< IThinkerListener > thinkerListeners, IEnumerable< IMatchListener > matchListeners, IEnumerable< ISessionListener > sessionListeners) | |
Create a new session controller. More... | |
ExitStatus | Run (bool complete) |
Run a session of ColorShapeLinks matches. More... | |
IThinker | GetThinker (PColor thinkerColor) |
Get thinker of the specified color. More... | |
Properties | |
Board | Board [get] |
The game board. More... | |
IThinker | CurrentThinker [get] |
The current thinker. More... | |
SessionState | State [get] |
State of the current session. More... | |
ISessionConfig | SessionConfig [get] |
Session configuration. More... | |
IMatchConfig | MatchConfig [get] |
Match configuration. More... | |
Match | CurrentMatch [get] |
The match currently being played. More... | |
IEnumerable< Match > | Matches [get] |
All matches played or to be played in current session. More... | |
IEnumerable< KeyValuePair< Match, Winner > > | Results [get] |
Results of matches played so far in current session. More... | |
IEnumerable< KeyValuePair< string, int > > | Standings [get] |
Standings (classification, ranking) of thinkers in current session. More... | |
Winner | LastMatchResult [get] |
Result of last match. More... | |
string | WinnerString [get] |
The winner's name and color. More... | |
Properties inherited from IMatchDataProvider | |
Board | Board [get] |
The game board. More... | |
IThinker | CurrentThinker [get] |
The current thinker. More... | |
Properties inherited from ISessionDataProvider | |
SessionState | State [get] |
State of the current session. More... | |
ISessionConfig | SessionConfig [get] |
Session configuration. More... | |
IMatchConfig | MatchConfig [get] |
Match configuration. More... | |
Match | CurrentMatch [get] |
The match currently being played. More... | |
IEnumerable< Match > | Matches [get] |
All matches played or to be played in current session. More... | |
IEnumerable< KeyValuePair< Match, Winner > > | Results [get] |
Results of matches played so far in current session. More... | |
IEnumerable< KeyValuePair< string, int > > | Standings [get] |
Standings (classification, ranking) of thinkers in current session. More... | |
Winner | LastMatchResult [get] |
Result of last match. More... | |
string | WinnerString [get] |
The winner's name and color. More... | |
Events | |
Action< ISessionDataProvider > | BeforeSession |
Event raised when the session is about to start. More... | |
Action< ISessionDataProvider > | AfterSession |
Event raised when the session is over. More... | |
Action< Match > | BeforeMatch |
Event raised before a match starts in the context of a session. More... | |
Action< Match, ISessionDataProvider > | AfterMatch |
Event raised after a match takes place in the context of a session. More... | |
Events inherited from ISessionSubject | |
Action< ISessionDataProvider > | BeforeSession |
Event raised when the session is about to start. More... | |
Action< ISessionDataProvider > | AfterSession |
Event raised when the session is over. More... | |
Action< Match > | BeforeMatch |
Event raised before a match starts in the context of a session. More... | |
Action< Match, ISessionDataProvider > | AfterMatch |
Event raised after a match takes place in the context of a session. More... | |
Controls a session of ColorShapeLinks matches.
|
inline |
Create a new session controller.
matchConfig | Match configuration. |
sessionConfig | Session configuration. |
thinkerPrototypes | List of thinker prototypes for thinkers participating in this session. |
thinkerListeners | List of thinker listeners. |
matchListeners | List of match listeners. |
sessionListeners | List of session listeners. |
Get thinker of the specified color.
thinkerColor | Color of the thinker to get. |
Implements IMatchDataProvider.
|
inline |
Run a session of ColorShapeLinks matches.
complete | Is the session complete, i.e., should thinkers compete against each other two times, home and away? |
|
get |
The match currently being played.
|
get |
The current thinker.
The current thinker.
|
get |
Result of last match.
One of the values of the Winner enumeration.
Match configuration.
Match configuration consists of number of board rows and columns, how many pieces in a row to win, initial number of pieces, etc.
|
get |
All matches played or to be played in current session.
Collection of matches.
Results of matches played so far in current session.
Collection of match-winner pairs.
|
get |
Session configuration.
Session configuration consists of points per win, per loss and per draw.
|
get |
Standings (classification, ranking) of thinkers in current session.
Descending ordered collection of thinker-points pairs.
|
get |
State of the current session.
One of the values defined in the SessionState enumeration.
System.NotImplementedException | Always thrown, since this implementation doesn't track an explicit session state. |
|
get |
The winner's name and color.
A string containing the winner's name and color.
Action<Match, ISessionDataProvider> AfterMatch |
Event raised after a match takes place in the context of a session.
Match
type parameter provides information about the match that just finished.ISessionDataProvider
type parameter provides data about the current state of the session. Action<ISessionDataProvider> AfterSession |
Event raised when the session is over.
ISessionDataProvider
type parameter provides data about the finished session. Action<Match> BeforeMatch |
Event raised before a match starts in the context of a session.
Match
type parameter provides information about the match that is about to start. Action<ISessionDataProvider> BeforeSession |
Event raised when the session is about to start.
ISessionDataProvider
type parameter provides data about the session that is about to start.