OpenTTD Source  20241121-master-g67a0fccfad
vehiclelist_cmd.h
Go to the documentation of this file.
1 /*
2  * This file is part of OpenTTD.
3  * OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4  * OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
5  * See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
6  */
7 
10 #ifndef VEHICLELIST_CMD_H
11 #define VEHICLELIST_CMD_H
12 
13 #include "command_func.h"
14 #include "vehiclelist.h"
15 
16 template <typename Tcont, typename Titer>
18 {
19  return buffer << vli.type << vli.vtype << vli.company << vli.index;
20 }
21 
22 inline EndianBufferReader &operator >>(EndianBufferReader &buffer, VehicleListIdentifier &vli)
23 {
24  return buffer >> vli.type >> vli.vtype >> vli.company >> vli.index;
25 }
26 
27 #endif /* VEHICLELIST_CMD_H */
Endian-aware buffer adapter that always reads values in little endian order.
Endian-aware buffer adapter that always writes values in little endian order.
Functions related to commands.
The information about a vehicle list.
Definition: vehiclelist.h:28
VehicleListType type
The type of vehicle list.
Definition: vehiclelist.h:29
CompanyID company
The company associated with this list.
Definition: vehiclelist.h:31
VehicleType vtype
The vehicle type associated with this list.
Definition: vehiclelist.h:30
uint32_t index
A vehicle list type specific index.
Definition: vehiclelist.h:32
Functions and type for generating vehicle lists.