OpenTTD: AllowedSubtags Struct Reference

OpenTTD

- Main Page
- Related Pages
- Modules
- Namespaces
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

Public Member Functions | Data Fields
AllowedSubtags Struct Reference

Data structure to store the allowed id/type combinations for action 14. More...

## Public Member Functions
| AllowedSubtags ()
| Create empty subtags object used to identify the end of a list.
| AllowedSubtags (uint32 id, DataHandler handler)
| Create a binary leaf node.
| AllowedSubtags (uint32 id, TextHandler handler)
| Create a text leaf node.
| AllowedSubtags (uint32 id, BranchHandler handler)
| Create a branch node with a callback handler.
| AllowedSubtags (uint32 id, AllowedSubtags *subtags)
| Create a branch node with a list of sub-nodes.

## Data Fields
uint32 | id
| The identifier for this node.
byte | type
| The type of the node, must be one of 'C', 'B' or 'T'.
union {
DataHandler data
| Callback function for a binary node, only valid if type == 'B'.
TextHandler text
| Callback function for a text node, only valid if type == 'T'.
struct {
union {
BranchHandler branch
| Callback function for a branch node, only valid if type == 'C' && call_handler.
AllowedSubtags * subtags
| Pointer to a list of subtags, only valid if type == 'C' && !call_handler.
} u
bool call_handler
| True if there is a callback function for this node, false if there is a list of subnodes.
} |
} | handler

## Detailed Description

Data structure to store the allowed id/type combinations for action 14.

The data can be represented as a tree with 3 types of nodes:

1. Branch nodes (identified by 'C' for choice).
2. Binary leaf nodes (identified by 'B').
3. Text leaf nodes (identified by 'T').

Definition at line 7493 of file newgrf.cpp.

## Constructor & Destructor Documentation

AllowedSubtags::AllowedSubtags | ( |  | ) |
| inline

Create empty subtags object used to identify the end of a list.

Definition at line 7495 of file newgrf.cpp.

AllowedSubtags::AllowedSubtags | ( | uint32 | id,
|  | DataHandler | handler
| ) |  |
| inline

Create a binary leaf node.

Parameters

  id | The id for this node.
  handler | The callback function to call.

Definition at line 7505 of file newgrf.cpp.

AllowedSubtags::AllowedSubtags | ( | uint32 | id,
|  | TextHandler | handler
| ) |  |
| inline

Create a text leaf node.

Parameters

  id | The id for this node.
  handler | The callback function to call.

Definition at line 7517 of file newgrf.cpp.

AllowedSubtags::AllowedSubtags | ( | uint32 | id,
|  | BranchHandler | handler
| ) |  |
| inline

Create a branch node with a callback handler.

Parameters

  id | The id for this node.
  handler | The callback function to call.

Definition at line 7529 of file newgrf.cpp.

AllowedSubtags::AllowedSubtags | ( | uint32 | id,
|  | AllowedSubtags * | subtags
| ) |  |
| inline

Create a branch node with a list of sub-nodes.

Parameters

  id | The id for this node.
  subtags | Array with all valid subtags.

Definition at line 7542 of file newgrf.cpp.

References subtags.

The documentation for this struct was generated from the following file:

- src/newgrf.cpp