MCPcopy Create free account
hub / github.com/OpenNFS/OpenNFS / LoadCar

Method LoadCar

src/Loaders/car_loader.cpp:7–50  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5#include "car_loader.h"
6
7shared_ptr<Car> CarLoader::LoadCar(NFSVer nfs_version, const std::string &car_name) {
8 std::stringstream car_path;
9 car_path << RESOURCE_PATH << ToString(nfs_version);
10
11 switch (nfs_version) {
12 case NFS_2:
13 car_path << NFS_2_CAR_PATH << car_name;
14 break;
15 case NFS_2_SE:
16 car_path << NFS_2_SE_CAR_PATH << car_name;
17 break;
18 case NFS_3:
19 car_path << NFS_3_CAR_PATH << car_name;
20 break;
21 case NFS_3_PS1:
22 car_path << "/" << car_name;
23 break;
24 case NFS_4:
25 car_path << NFS_4_CAR_PATH << car_name;
26 break;
27 case UNKNOWN:
28 ASSERT(false, "Unknown car type!");
29 default:
30 break;
31 }
32
33 switch (nfs_version) {
34 case NFS_2:
35 return NFS2<PC>::LoadCar(car_path.str());
36 case NFS_2_SE:
37 return NFS2<PC>::LoadCar(car_path.str());
38 case NFS_3:
39 return NFS3::LoadCar(car_path.str());
40 case NFS_3_PS1:
41 return NFS2<PS1>::LoadCar(car_path.str());
42 case NFS_4:
43 return NFS4::LoadCar(car_path.str());
44 default:
45 ASSERT(false, "Unknown car type!");
46 break;
47 }
48
49 return shared_ptr<Car>();
50}

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected