# All Classes

- All Classes Interface Summary Class Summary Enum Summary Exception Summary Annotation Types Summary
  Class | Description
  --- | ---
  ActivateBonusWrapper |
  AllRuleSets | Stores rule sets, and allows lookup by name.
  ArithmeticResult | A tool for an easy online testing of arithmetic expression evaluation.
  Arrows |
  Board |
  Board.Pos | Can be used to describe the position of a piece on the [1:N]x[1:N] grid, or that of a bucket (at (0,0), ...
  Captive | The main class for the Captive Game Server
  CheckPlanService | The "Check my experiment plan" service.
  ColorMap |
  ConvertRules | This class is used for a one-off project: converting the list of rules found in Kevin's GUI (stored in a JSON file there) to text files describing rules in a similar, but slightly different, format used by our server.
  CsvData | Represents the entire content of a CSV file.
  CsvData.BasicLineEntry |
  CsvData.CommentEntry | Stores a comment line from the CSV file.
  CsvData.LineEntry |
  Display | An annotation describing how, if at all, a particular data field (content of a SQL database column) is to be displayed in HTML tables and data entry forms etc.
  Episode | An Episode is a single instance of a Game played by a person or machine with our game server.
  Episode.CODE | Return codes for the /move and /display API web API calls, and for the MOVE command in the captive game server.
  Episode.FINISH_CODE |
  Episode.Move | A Move instance describes an [attempted] act of picking a piece and dropping it into a bucket.
  Episode.OutputMode |
  Episode.Pick | A Pick instance describes the act of picking a piece, without specifying its destination
  EpisodeInfo | An EpisodeInfo instance extends an Episode, containing additional information related to it being played as part of an experiment.
  Expression |
  Expression.AdditiveExpression |
  Expression.ArithmeticExpression | An arithmetic expression is composed of variables, constants, and arithmetic operations; parentheses can be used for ordering operations.
  Expression.BracketList |
  Expression.ColonExpression | Id:ArithmeticExpression; used in GS 3
  Expression.EqualityExpression | Has exactly two operands, and the operator is '=='
  Expression.ExList | Can be overridden as needed
  Expression.Id | A variable.
  Expression.MultiplicativeExpression |
  Expression.NegationExpression | !E evaluates to [1] if E is an empty set, or to [] otherwise
  Expression.Num | A numeric constant
  Expression.ParenList |
  Expression.QualifiedId | A.B
  Expression.RangeExpression | [Num..Num]
  Expression.SerialExpression | Additive or multiplicative
  Expression.Star | A Star expression is simply "*".
  Files | Information about the data files the Rule Game web server reads and writes
  FileWriteReport | This data structure is converted to JSON and send to the client in response to the /writeFile web API call.
  Fmter | Auxiliary class for formatting output as plain text of HTML.
  Game |
  GameGenerator | This class generates random games (with the same rule set and randomly created initial boards) based on the provided parameter range specifications
  GamePlayException |
  GameService | The "First Batch" of API calls, primarily for use in the research environment, where a player can choose any game to play
  GameService2 | The "Second Batch" of API calls, primarily for use with players constrained by an experiment plan, and playing a sequence of games as outlined in the trial list to which the player is assigned.
  GameService2Html | The HTML wrapper for the Second Batch calls, to allow for the "HTML Play".
  GameServiceHtml | The HTML wrapper for the First Batch calls, to allow for the "HTML Play".
  GameSocketServer | The socket implementation of a captive game server
  GetImageServlet | Returns the content of the SVG file for the specified shape
  GetSvgWrapper | Returns the content of the SVG file for the specified shape
  GiveUpWrapper |
  GuessWriteReport | This data structure is converted to JSON and send to the client in response to the /guess web API call.
  HTMLFmter | Auxiliary class for formatting output as HTML.
  IllegalInputException | An exception of this type is thrown when we want to report to the user that the data he's entered are invalid
  ImageObject | Describes an image-and-properties-based object
  ImportCSV | Methods responsible for parsing CSV files.
  JsonReflect | Tools for exporting Java objects as JSON structures
  JsonToJava | Tools for importing Java objects from JSON structures.
  ListShapesWrapper | Lists all available shapes
  Logging | Methods used by CHEETA to log warning and error messages.
  Main |
  NewEpisodeWrapper |
  NewEpisodeWrapper2 | This is an object that's converted to a JSON structure and sent to the client as a response in /GameService2/newEpisode calls.
  Order | An Order object describe a built-in or custom ordering of
  Order.PositionSelector | Names of built-in (predefined) orders
  OurTable | All our entities (corresponding to table rows) implement this.
  ParaSet |
  ParseConfig | This class is used to obtain configuration parameters, from a configuration file or from Java System Properties.
  Piece | Represents a piece of a specified type at a specified location.
  Piece.Color |
  Piece.PseudoEnum | A flexible replacement for an Enum
  Piece.Shape |
  PlayerInfo | Information about a player (what trial list he's in, what episodes he's done etc) stored in the SQL database.
  PlayerInfo.Action | What type of action takes the player to a particular destination?
  PlayerInfo.Transition | Where can we go from here?
  PlayerResponse | The HashMap capability is used for debugging info in debug mode
  PredefinedBoardGameGenerator | This class generates games based on a set of predefined initial boards
  PropertiesTable | This is an auxiliary class, used to read the entire content of a properties file, and to create ImageObject objects for all image files in the directory.
  RandomGameGenerator | This class generates random games (with the same rule set and randomly created initial boards) based on the provided parameter range specifications
  RandomImageGameGenerator | This class generates random games (with the same rule set and randomly created initial boards) using image-and-property based game pieces based on the provided parameter range specifications
  RandomRG |
  Reflect | A bunch of methods to figure what fields a class has, and how to print them out in a more or less sensible way.
  Reflect.Entry | An entry describes one field of the class, complete with its access methods (getter and setter) and the display hints
  ResponseBase |
  ResponseBase | The base of all response objects returned by our REST API methods
  Role | A role is simply a database-storable wrapper around the role name
  Role.Name |
  RuleParseException |
  RuleSet | A RuleSet describes the rules of a game.
  RuleSet.Atom | Syntax:(counter,shape,color,position,bucketFunctions)
  RuleSet.BucketList | A BucketList represents the information about the destination buckets given in the "buckets" field of an atom.
  RuleSet.BucketSelector | The list of variables that can be used in the bucket expression
  RuleSet.PositionList | Represents the restrictions on the positions from which game pieces can be picked
  RuleSet.Row | A row object represents the content of one line of the rule set description file, i.e.
  Test | Used for testing JPA persistence features
  TestChild | An EpisodeInfo instance extends an Episode, containing additional information related to it being played as part of an experiment.
  TestParent |
  Token | A token represents an element of the input text.
  Token.Type |
  Tools | Various methods related to generating HTML forms and their components, and processing requests sent by the web browser when those forms are filled
  TrialList |
  TrivialGameGenerator | Just keeps returning the same game every time
  Util | Auxiliary methods for manipulating hash tables etc