Use named casts on openrct2 root folder (#11139)

This commit is contained in:
Tulio Leao 2020-04-17 16:36:25 -03:00 committed by GitHub
parent 64e4a8420e
commit c17127f65b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 94 additions and 78 deletions

View File

@ -82,13 +82,13 @@ static FILE* fopen_utf8(const char* path, const char* mode)
static void sprite_entries_make_absolute()
{
for (uint32_t i = 0; i < spriteFileHeader.num_entries; i++)
spriteFileEntries[i].offset += (uintptr_t)spriteFileData;
spriteFileEntries[i].offset += reinterpret_cast<uintptr_t>(spriteFileData);
}
static void sprite_entries_make_relative()
{
for (uint32_t i = 0; i < spriteFileHeader.num_entries; i++)
spriteFileEntries[i].offset -= (uintptr_t)spriteFileData;
spriteFileEntries[i].offset -= reinterpret_cast<uintptr_t>(spriteFileData);
}
static bool sprite_file_open(const utf8* path)
@ -106,7 +106,7 @@ static bool sprite_file_open(const utf8* path)
if (spriteFileHeader.num_entries > 0)
{
int32_t openEntryTableSize = spriteFileHeader.num_entries * sizeof(rct_g1_element_32bit);
rct_g1_element_32bit* openElements = (rct_g1_element_32bit*)malloc(openEntryTableSize);
rct_g1_element_32bit* openElements = static_cast<rct_g1_element_32bit*>(malloc(openEntryTableSize));
if (openElements == nullptr)
{
fclose(file);
@ -120,7 +120,7 @@ static bool sprite_file_open(const utf8* path)
return false;
}
spriteFileData = (uint8_t*)malloc(spriteFileHeader.total_size);
spriteFileData = static_cast<uint8_t*>(malloc(spriteFileHeader.total_size));
if (fread(spriteFileData, spriteFileHeader.total_size, 1, file) != 1)
{
free(spriteFileData);
@ -130,13 +130,14 @@ static bool sprite_file_open(const utf8* path)
}
int32_t entryTableSize = spriteFileHeader.num_entries * sizeof(rct_g1_element);
spriteFileEntries = (rct_g1_element*)malloc(entryTableSize);
spriteFileEntries = static_cast<rct_g1_element*>(malloc(entryTableSize));
for (uint32_t i = 0; i < spriteFileHeader.num_entries; i++)
{
rct_g1_element_32bit* inElement = &openElements[i];
rct_g1_element* outElement = &spriteFileEntries[i];
outElement->offset = (uint8_t*)((uintptr_t)inElement->offset + (uintptr_t)spriteFileData);
outElement->offset = reinterpret_cast<uint8_t*>(
(static_cast<uintptr_t>(inElement->offset) + reinterpret_cast<uintptr_t>(spriteFileData)));
outElement->width = inElement->width;
outElement->height = inElement->height;
outElement->x_offset = inElement->x_offset;
@ -167,7 +168,7 @@ static bool sprite_file_save(const char* path)
if (spriteFileHeader.num_entries > 0)
{
int32_t saveEntryTableSize = spriteFileHeader.num_entries * sizeof(rct_g1_element_32bit);
rct_g1_element_32bit* saveElements = (rct_g1_element_32bit*)malloc(saveEntryTableSize);
rct_g1_element_32bit* saveElements = static_cast<rct_g1_element_32bit*>(malloc(saveEntryTableSize));
if (saveElements == nullptr)
{
fclose(file);
@ -179,7 +180,8 @@ static bool sprite_file_save(const char* path)
rct_g1_element* inElement = &spriteFileEntries[i];
rct_g1_element_32bit* outElement = &saveElements[i];
outElement->offset = (uint32_t)((uintptr_t)inElement->offset - (uintptr_t)spriteFileData);
outElement->offset = static_cast<uint32_t>(
(reinterpret_cast<uintptr_t>(inElement->offset) - reinterpret_cast<uintptr_t>(spriteFileData)));
outElement->width = inElement->width;
outElement->height = inElement->height;
outElement->x_offset = inElement->x_offset;
@ -239,14 +241,14 @@ static bool sprite_file_export(int32_t spriteIndex, const char* outPath)
if (spriteHeader->flags & G1_FLAG_RLE_COMPRESSION)
{
gfx_rle_sprite_to_buffer(
spriteHeader->offset, pixels, (uint8_t*)spriteFilePalette, &dpi, ImageId(), 0, spriteHeader->height, 0,
spriteHeader->width);
spriteHeader->offset, pixels, reinterpret_cast<uint8_t*>(spriteFilePalette), &dpi, ImageId(), 0,
spriteHeader->height, 0, spriteHeader->width);
}
else
{
gfx_bmp_sprite_to_buffer(
(uint8_t*)spriteFilePalette, spriteHeader->offset, pixels, spriteHeader, &dpi, spriteHeader->height,
spriteHeader->width, ImageId());
reinterpret_cast<uint8_t*>(spriteFilePalette), spriteHeader->offset, pixels, spriteHeader, &dpi,
spriteHeader->height, spriteHeader->width, ImageId());
}
auto const pixels8 = dpi.bits;
@ -258,7 +260,7 @@ static bool sprite_file_export(int32_t spriteIndex, const char* outPath)
image.Height = dpi.height;
image.Depth = 8;
image.Stride = dpi.width + dpi.pitch;
image.Palette = std::make_unique<rct_palette>(*((rct_palette*)&spriteFilePalette));
image.Palette = std::make_unique<rct_palette>(*(reinterpret_cast<rct_palette*>(&spriteFilePalette)));
image.Pixels = std::vector<uint8_t>(pixels8, pixels8 + pixelsLen);
Imaging::WriteToFile(outPath, image, IMAGE_FORMAT::PNG);
return true;
@ -295,8 +297,8 @@ static bool sprite_file_import(
auto result = importer.Import(image, x_offset, y_offset, flags, (ImageImporter::IMPORT_MODE)mode);
*outElement = result.Element;
*outBuffer = (uint8_t*)result.Buffer;
*outBufferLength = (int)result.BufferLength;
*outBuffer = static_cast<uint8_t*>(result.Buffer);
*outBufferLength = static_cast<int>(result.BufferLength);
return true;
}
catch (const std::exception& e)
@ -346,7 +348,7 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
return -1;
}
if (spriteIndex < 0 || spriteIndex >= (int32_t)spriteFileHeader.num_entries)
if (spriteIndex < 0 || spriteIndex >= static_cast<int32_t>(spriteFileHeader.num_entries))
{
sprite_file_close();
fprintf(stderr, "Sprite #%d does not exist in sprite file.\n", spriteIndex);
@ -382,7 +384,7 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
return -1;
}
if (spriteIndex < 0 || spriteIndex >= (int32_t)spriteFileHeader.num_entries)
if (spriteIndex < 0 || spriteIndex >= static_cast<int32_t>(spriteFileHeader.num_entries))
{
fprintf(stderr, "Sprite #%d does not exist in sprite file.\n", spriteIndex);
return -1;
@ -424,11 +426,11 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
return -1;
}
int32_t maxIndex = (int32_t)spriteFileHeader.num_entries;
int32_t numbers = (int32_t)std::floor(std::log(maxIndex));
int32_t maxIndex = static_cast<int32_t>(spriteFileHeader.num_entries);
int32_t numbers = static_cast<int32_t>(std::floor(std::log(maxIndex)));
size_t pathLen = strlen(outputPath);
if (pathLen >= (size_t)(MAX_PATH - numbers - 5))
if (pathLen >= static_cast<size_t>(MAX_PATH - numbers - 5))
{
fprintf(stderr, "Path too long.\n");
return -1;
@ -534,10 +536,11 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
spriteFileHeader.num_entries++;
spriteFileHeader.total_size += bufferLength;
spriteFileEntries = (rct_g1_element*)realloc(spriteFileEntries, spriteFileHeader.num_entries * sizeof(rct_g1_element));
spriteFileEntries = static_cast<rct_g1_element*>(
realloc(spriteFileEntries, spriteFileHeader.num_entries * sizeof(rct_g1_element)));
sprite_entries_make_relative();
spriteFileData = (uint8_t*)realloc(spriteFileData, spriteFileHeader.total_size);
spriteFileData = static_cast<uint8_t*>(realloc(spriteFileData, spriteFileHeader.total_size));
sprite_entries_make_absolute();
spriteFileEntries[spriteFileHeader.num_entries - 1] = spriteElement;
@ -603,7 +606,7 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
{
if (!json_is_object(sprite_description))
{
fprintf(stderr, "Error: expected object for sprite %lu\n", (unsigned long)i);
fprintf(stderr, "Error: expected object for sprite %lu\n", static_cast<unsigned long>(i));
json_decref(sprite_list);
return -1;
}
@ -611,7 +614,7 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
json_t* path = json_object_get(sprite_description, "path");
if (!json_is_string(path))
{
fprintf(stderr, "Error: no path provided for sprite %lu\n", (unsigned long)i);
fprintf(stderr, "Error: no path provided for sprite %lu\n", static_cast<unsigned long>(i));
json_decref(sprite_list);
return -1;
}
@ -665,11 +668,11 @@ int32_t cmdline_for_sprite(const char** argv, int32_t argc)
spriteFileHeader.num_entries++;
spriteFileHeader.total_size += bufferLength;
spriteFileEntries = (rct_g1_element*)realloc(
spriteFileEntries, spriteFileHeader.num_entries * sizeof(rct_g1_element));
spriteFileEntries = static_cast<rct_g1_element*>(
realloc(spriteFileEntries, spriteFileHeader.num_entries * sizeof(rct_g1_element)));
sprite_entries_make_relative();
spriteFileData = (uint8_t*)realloc(spriteFileData, spriteFileHeader.total_size);
spriteFileData = static_cast<uint8_t*>(realloc(spriteFileData, spriteFileHeader.total_size));
sprite_entries_make_absolute();
spriteFileEntries[spriteFileHeader.num_entries - 1] = spriteElement;

View File

@ -450,7 +450,7 @@ namespace OpenRCT2
_drawingEngineType = gConfigGeneral.drawing_engine;
auto drawingEngineFactory = _uiContext->GetDrawingEngineFactory();
auto drawingEngine = drawingEngineFactory->Create((DRAWING_ENGINE_TYPE)_drawingEngineType, _uiContext);
auto drawingEngine = drawingEngineFactory->Create(static_cast<DRAWING_ENGINE_TYPE>(_drawingEngineType), _uiContext);
if (drawingEngine == nullptr)
{
@ -607,8 +607,9 @@ namespace OpenRCT2
// which the window function doesn't like
auto intent = Intent(WC_OBJECT_LOAD_ERROR);
intent.putExtra(INTENT_EXTRA_PATH, path);
// TODO: CAST-IMPROVEMENT-NEEDED
intent.putExtra(INTENT_EXTRA_LIST, (void*)e.MissingObjects.data());
intent.putExtra(INTENT_EXTRA_LIST_COUNT, (uint32_t)e.MissingObjects.size());
intent.putExtra(INTENT_EXTRA_LIST_COUNT, static_cast<uint32_t>(e.MissingObjects.size()));
auto windowManager = _uiContext->GetWindowManager();
windowManager->OpenIntent(&intent);
@ -947,7 +948,7 @@ namespace OpenRCT2
if (draw)
{
const float alpha = std::min((float)_accumulator / GAME_UPDATE_TIME_MS, 1.0f);
const float alpha = std::min(static_cast<float>(_accumulator) / GAME_UPDATE_TIME_MS, 1.0f);
sprite_position_tween_all(alpha);
_drawingEngine->BeginDraw();
@ -1148,7 +1149,7 @@ bool context_load_park_from_file(const utf8* path)
bool context_load_park_from_stream(void* stream)
{
return GetContext()->LoadParkFromStream((IStream*)stream, "");
return GetContext()->LoadParkFromStream(static_cast<IStream*>(stream), "");
}
void openrct2_write_full_version_info(utf8* buffer, size_t bufferSize)
@ -1163,7 +1164,7 @@ void openrct2_finish()
void context_setcurrentcursor(int32_t cursor)
{
GetContext()->GetUiContext()->SetCursor((CURSOR_ID)cursor);
GetContext()->GetUiContext()->SetCursor(static_cast<CURSOR_ID>(cursor));
}
void context_update_cursor_scale()
@ -1236,7 +1237,7 @@ void context_trigger_resize()
void context_set_fullscreen_mode(int32_t mode)
{
return GetContext()->GetUiContext()->SetFullscreenMode((FULLSCREEN_MODE)mode);
return GetContext()->GetUiContext()->SetFullscreenMode(static_cast<FULLSCREEN_MODE>(mode));
}
void context_recreate_window()
@ -1342,7 +1343,7 @@ bool platform_open_common_file_dialog(utf8* outFilename, file_dialog_desc* desc,
try
{
FileDialogDesc desc2;
desc2.Type = (FILE_DIALOG_TYPE)desc->type;
desc2.Type = static_cast<FILE_DIALOG_TYPE>(desc->type);
desc2.Title = String::ToStd(desc->title);
desc2.InitialDirectory = String::ToStd(desc->initial_directory);
desc2.DefaultFilename = String::ToStd(desc->default_filename);

View File

@ -55,7 +55,7 @@ void Date::Update()
}
else
{
_monthTicks = (uint16_t)monthTicks;
_monthTicks = static_cast<uint16_t>(monthTicks);
}
}

View File

@ -102,7 +102,7 @@ namespace Editor
tool_cancel();
auto intent = Intent(WC_LOADSAVE);
intent.putExtra(INTENT_EXTRA_LOADSAVE_TYPE, LOADSAVETYPE_LOAD | LOADSAVETYPE_GAME);
intent.putExtra(INTENT_EXTRA_CALLBACK, (void*)ConvertSaveToScenarioCallback);
intent.putExtra(INTENT_EXTRA_CALLBACK, reinterpret_cast<void*>(ConvertSaveToScenarioCallback));
context_open_intent(&intent);
}
@ -347,7 +347,8 @@ namespace Editor
gParkFlags &= ~PARK_FLAGS_SPRITES_INITIALISED;
gGuestInitialCash = std::clamp(gGuestInitialCash, (money16)MONEY(10, 00), (money16)MAX_ENTRANCE_FEE);
gGuestInitialCash = std::clamp(
gGuestInitialCash, static_cast<money16>(MONEY(10, 00)), static_cast<money16>(MAX_ENTRANCE_FEE));
gInitialCash = std::min(gInitialCash, 100000);
finance_reset_cash_to_initial();

View File

@ -43,7 +43,7 @@ static void window_editor_object_selection_select_default_objects();
*/
static void setup_track_manager_objects()
{
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
for (int32_t i = 0; i < numObjects; i++)
{
@ -72,7 +72,7 @@ static void setup_track_manager_objects()
*/
static void setup_track_designer_objects()
{
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
for (int32_t i = 0; i < numObjects; i++)
{
@ -195,7 +195,7 @@ void setup_in_use_selection_flags()
}
}
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
for (int32_t i = 0; i < numObjects; i++)
{
@ -226,7 +226,7 @@ void setup_in_use_selection_flags()
*/
void sub_6AB211()
{
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
_objectSelectionFlags = std::vector<uint8_t>(numObjects);
for (uint8_t objectType = 0; objectType < OBJECT_TYPE_COUNT; objectType++)
@ -316,11 +316,11 @@ static void remove_selected_objects_from_research(const rct_object_entry* instal
*/
void unload_unselected_objects()
{
int32_t numItems = (int32_t)object_repository_get_items_count();
int32_t numItems = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
size_t numObjectsToUnload = 0;
rct_object_entry* objectsToUnload = (rct_object_entry*)malloc(numItems * sizeof(rct_object_entry));
rct_object_entry* objectsToUnload = static_cast<rct_object_entry*>(malloc(numItems * sizeof(rct_object_entry)));
for (int32_t i = 0; i < numItems; i++)
{
@ -363,7 +363,7 @@ void reset_selected_object_count_and_size()
objectType = 0;
}
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
for (int32_t i = 0; i < numObjects; i++)
{
@ -395,7 +395,7 @@ static void set_object_selection_error(uint8_t is_master_object, rct_string_id e
*/
int32_t window_editor_object_selection_select_object(uint8_t bh, int32_t flags, const rct_object_entry* entry)
{
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* item = object_repository_find_object_by_entry(entry);
if (item == nullptr)
{
@ -507,7 +507,7 @@ int32_t window_editor_object_selection_select_object(uint8_t bh, int32_t flags,
bool editor_check_object_group_at_least_one_selected(int32_t checkObjectType)
{
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
for (int32_t i = 0; i < numObjects; i++)
@ -526,7 +526,7 @@ int32_t editor_remove_unused_objects()
sub_6AB211();
setup_in_use_selection_flags();
int32_t numObjects = (int32_t)object_repository_get_items_count();
int32_t numObjects = static_cast<int32_t>(object_repository_get_items_count());
const ObjectRepositoryItem* items = object_repository_get_items();
int32_t numUnselectedObjects = 0;

View File

@ -142,7 +142,7 @@ enum
*/
void update_palette_effects()
{
auto water_type = (rct_water_type*)object_entry_get_chunk(OBJECT_TYPE_WATER, 0);
auto water_type = static_cast<rct_water_type*>(object_entry_get_chunk(OBJECT_TYPE_WATER, 0));
if (gClimateLightningFlash == 1)
{
@ -211,7 +211,7 @@ void update_palette_effects()
}
}
uint32_t j = gPaletteEffectFrame;
j = (((uint16_t)((~j / 2) * 128) * 15) >> 16);
j = ((static_cast<uint16_t>((~j / 2) * 128) * 15) >> 16);
uint32_t waterId = SPR_GAME_PALETTE_WATER;
if (water_type != nullptr)
{
@ -262,7 +262,7 @@ void update_palette_effects()
}
}
j = ((uint16_t)(gPaletteEffectFrame * -960) * 3) >> 16;
j = (static_cast<uint16_t>(gPaletteEffectFrame * -960) * 3) >> 16;
waterId = SPR_GAME_PALETTE_4;
g1 = gfx_get_g1_element(shade + waterId);
if (g1 != nullptr)
@ -333,7 +333,7 @@ void utf8_to_rct2_self(char* buffer, size_t length)
char* dst = buffer;
while (*src != 0 && i < length - 1)
{
if (*src == (char)(uint8_t)0xFF)
if (*src == static_cast<char>(static_cast<uint8_t>(0xFF)))
{
if (i < length - 3)
{
@ -659,13 +659,14 @@ void* create_save_game_as_intent()
void save_game_as()
{
auto* intent = (Intent*)create_save_game_as_intent();
auto* intent = static_cast<Intent*>(create_save_game_as_intent());
context_open_intent(intent);
delete intent;
}
static int32_t compare_autosave_file_paths(const void* a, const void* b)
{
// TODO: CAST-IMPROVEMENT-NEEDED
return strcmp(*(char**)a, *(char**)b);
}
@ -706,13 +707,13 @@ static void limit_autosave_count(const size_t numberOfFilesToKeep, bool processL
return;
}
autosaveFiles = (utf8**)malloc(sizeof(utf8*) * autosavesCount);
autosaveFiles = static_cast<utf8**>(malloc(sizeof(utf8*) * autosavesCount));
{
auto scanner = std::unique_ptr<IFileScanner>(Path::ScanDirectory(filter, false));
for (size_t i = 0; i < autosavesCount; i++)
{
autosaveFiles[i] = (utf8*)malloc(sizeof(utf8) * MAX_PATH);
autosaveFiles[i] = static_cast<utf8*>(malloc(sizeof(utf8) * MAX_PATH));
std::memset(autosaveFiles[i], 0, sizeof(utf8) * MAX_PATH);
if (scanner->Next())
@ -825,7 +826,7 @@ void game_load_or_quit_no_save_prompt()
{
auto intent = Intent(WC_LOADSAVE);
intent.putExtra(INTENT_EXTRA_LOADSAVE_TYPE, LOADSAVETYPE_LOAD | LOADSAVETYPE_GAME);
intent.putExtra(INTENT_EXTRA_CALLBACK, (void*)game_load_or_quit_no_save_prompt_callback);
intent.putExtra(INTENT_EXTRA_CALLBACK, reinterpret_cast<void*>(game_load_or_quit_no_save_prompt_callback));
context_open_intent(&intent);
}
break;

View File

@ -1,3 +1,12 @@
/*****************************************************************************
* Copyright (c) 2014-2020 OpenRCT2 developers
*
* For a complete list of all authors, please refer to contributors.md
* Interested in contributing? Visit https://github.com/OpenRCT2/OpenRCT2
*
* OpenRCT2 is licensed under the GNU General Public License version 3.
*****************************************************************************/
#include "GameStateSnapshots.h"
#include "core/CircularBuffer.h"
@ -40,9 +49,9 @@ struct GameStateSnapshot_t
{
if (sprites[i].generic.sprite_identifier == SPRITE_IDENTIFIER_NULL)
continue;
indexTable.push_back((uint32_t)i);
indexTable.push_back(static_cast<uint32_t>(i));
}
numSavedSprites = (uint32_t)indexTable.size();
numSavedSprites = static_cast<uint32_t>(indexTable.size());
}
ds << numSavedSprites;
@ -125,7 +134,7 @@ struct GameStateSnapshots : public IGameStateSnapshots
{
snapshot.SerialiseSprites(get_sprite(0), MAX_SPRITES, true);
// log_info("Snapshot size: %u bytes", (uint32_t)snapshot.storedSprites.GetLength());
// log_info("Snapshot size: %u bytes", static_cast<uint32_t>(snapshot.storedSprites.GetLength()));
}
virtual const GameStateSnapshot_t* GetLinkedSnapshot(uint32_t tick) const override final
@ -171,7 +180,7 @@ struct GameStateSnapshots : public IGameStateSnapshots
std::memcpy(&valB, &spriteCmp.field, sizeof(struc::field)); \
uintptr_t offset = reinterpret_cast<uintptr_t>(&spriteBase.field) - reinterpret_cast<uintptr_t>(&spriteBase); \
changeData.diffs.push_back( \
GameStateSpriteChange_t::Diff_t{ (size_t)offset, sizeof(struc::field), #struc, #field, valA, valB }); \
GameStateSpriteChange_t::Diff_t{ static_cast<size_t>(offset), sizeof(struc::field), #struc, #field, valA, valB }); \
}
void CompareSpriteDataCommon(
@ -517,7 +526,7 @@ struct GameStateSnapshots : public IGameStateSnapshots
std::vector<rct_sprite> spritesBase = BuildSpriteList(const_cast<GameStateSnapshot_t&>(base));
std::vector<rct_sprite> spritesCmp = BuildSpriteList(const_cast<GameStateSnapshot_t&>(cmp));
for (uint32_t i = 0; i < (uint32_t)spritesBase.size(); i++)
for (uint32_t i = 0; i < static_cast<uint32_t>(spritesBase.size()); i++)
{
GameStateSpriteChange_t changeData;
changeData.spriteIndex = i;
@ -650,8 +659,8 @@ struct GameStateSnapshots : public IGameStateSnapshots
snprintf(
tempBuffer, sizeof(tempBuffer),
" %s::%s, len = %u, offset = %u, left = 0x%.16llX, right = 0x%.16llX\n", diff.structname,
diff.fieldname, (uint32_t)diff.length, (uint32_t)diff.offset, (unsigned long long)diff.valueA,
(unsigned long long)diff.valueB);
diff.fieldname, static_cast<uint32_t>(diff.length), static_cast<uint32_t>(diff.offset),
static_cast<unsigned long long>(diff.valueA), static_cast<unsigned long long>(diff.valueB));
outputBuffer += tempBuffer;
}
}

View File

@ -34,7 +34,7 @@ public:
std::string GetDirectoryPath(DIRBASE base) const override
{
return _basePath[(size_t)base];
return _basePath[static_cast<size_t>(base)];
}
std::string GetDirectoryPath(DIRBASE base, DIRID did) const override
@ -46,12 +46,12 @@ public:
default:
case DIRBASE::RCT1:
case DIRBASE::RCT2:
directoryName = DirectoryNamesRCT2[(size_t)did];
directoryName = DirectoryNamesRCT2[static_cast<size_t>(did)];
break;
case DIRBASE::OPENRCT2:
case DIRBASE::USER:
case DIRBASE::CONFIG:
directoryName = DirectoryNamesOpenRCT2[(size_t)did];
directoryName = DirectoryNamesOpenRCT2[static_cast<size_t>(did)];
break;
}
@ -62,13 +62,13 @@ public:
{
auto dirbase = GetDefaultBaseDirectory(pathid);
auto basePath = GetDirectoryPath(dirbase);
auto fileName = FileNames[(size_t)pathid];
auto fileName = FileNames[static_cast<size_t>(pathid)];
return Path::Combine(basePath, fileName);
}
void SetBasePath(DIRBASE base, const std::string& path) override
{
_basePath[(size_t)base] = path;
_basePath[static_cast<size_t>(base)] = path;
}
private:
@ -152,7 +152,7 @@ std::unique_ptr<IPlatformEnvironment> OpenRCT2::CreatePlatformEnvironment()
if (basePaths[(size_t)DIRBASE::DOCUMENTATION].empty())
{
basePaths[(size_t)DIRBASE::DOCUMENTATION] = basePaths[(size_t)DIRBASE::OPENRCT2];
basePaths[(size_t)DIRBASE::DOCUMENTATION] = basePaths[static_cast<size_t>(DIRBASE::OPENRCT2)];
}
auto env = OpenRCT2::CreatePlatformEnvironment(basePaths);

View File

@ -304,7 +304,7 @@ namespace OpenRCT2
auto compressBuf = std::make_unique<unsigned char[]>(compressLength);
compress2(
compressBuf.get(), &compressLength, (unsigned char*)stream.GetData(), stream.GetLength(),
compressBuf.get(), &compressLength, static_cast<const unsigned char*>(stream.GetData()), stream.GetLength(),
ReplayCompressionLevel);
file.data.Write(compressBuf.get(), compressLength);
@ -367,8 +367,8 @@ namespace OpenRCT2
info.Ticks = gCurrentTicks - data->tickStart;
else if (_mode == ReplayMode::PLAYING)
info.Ticks = data->tickEnd - data->tickStart;
info.NumCommands = (uint32_t)data->commands.size();
info.NumChecksums = (uint32_t)data->checksums.size();
info.NumCommands = static_cast<uint32_t>(data->commands.size());
info.NumChecksums = static_cast<uint32_t>(data->checksums.size());
return true;
}
@ -593,7 +593,8 @@ namespace OpenRCT2
auto buff = std::make_unique<unsigned char[]>(recFile.uncompressedSize);
unsigned long outSize = recFile.uncompressedSize;
uncompress(
(unsigned char*)buff.get(), &outSize, (unsigned char*)recFile.data.GetData(), recFile.data.GetLength());
static_cast<unsigned char*>(buff.get()), &outSize,
static_cast<const unsigned char*>(recFile.data.GetData()), recFile.data.GetLength());
if (outSize != recFile.uncompressedSize)
{
return false;
@ -744,7 +745,7 @@ namespace OpenRCT2
serialiser << data.tickStart;
serialiser << data.tickEnd;
uint32_t countCommands = (uint32_t)data.commands.size();
uint32_t countCommands = static_cast<uint32_t>(data.commands.size());
serialiser << countCommands;
if (serialiser.IsSaving())
@ -765,7 +766,7 @@ namespace OpenRCT2
}
}
uint32_t countChecksums = (uint32_t)data.checksums.size();
uint32_t countChecksums = static_cast<uint32_t>(data.checksums.size());
serialiser << countChecksums;
if (serialiser.IsLoading())

View File

@ -88,8 +88,8 @@ namespace
# if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
# define RCT2_ENDIANESS __ORDER_LITTLE_ENDIAN__
# define LOBYTE(w) ((uint8_t)(w))
# define HIBYTE(w) ((uint8_t)(((uint16_t)(w) >> 8) & 0xFF))
# define LOBYTE(w) (static_cast<uint8_t>(w))
# define HIBYTE(w) (static_cast<uint8_t>((static_cast<uint16_t>(w) >> 8) & 0xFF))
# endif // __BYTE_ORDER__
# ifndef RCT2_ENDIANESS
@ -139,8 +139,8 @@ using money64 = fixed64_1dp;
#define MONEY(whole, fraction) ((whole)*10 + ((fraction) / 10))
#define MONEY_FREE MONEY(0, 00)
#define MONEY16_UNDEFINED (money16)(uint16_t) 0xFFFF
#define MONEY32_UNDEFINED ((money32)0x80000000)
#define MONEY16_UNDEFINED static_cast<money16>(static_cast<uint16_t>(0xFFFF))
#define MONEY32_UNDEFINED (static_cast<money32>(0x80000000))
using EMPTY_ARGS_VOID_POINTER = void();
using rct_string_id = uint16_t;