diff --git a/demboyz/demmessages/demhandlers.cpp b/demboyz/demmessages/demhandlers.cpp index 8781a24..79d622e 100644 --- a/demboyz/demmessages/demhandlers.cpp +++ b/demboyz/demmessages/demhandlers.cpp @@ -2,7 +2,16 @@ #include "demhandlers.h" #include "demmessages.h" -void DemHandlers::CreateDemMsgStructs(void* demDataStructs[9]) +#include "dem_unknown.h" +#include "dem_packet.h" +#include "dem_synctick.h" +#include "dem_consolecmd.h" +#include "dem_usercmd.h" +#include "dem_datatables.h" +#include "dem_stop.h" +#include "dem_stringtables.h" + +void DemHandlers::CreateDemMsgStructs(DemDataStructArray& demDataStructs) { demDataStructs[0] = new DemMsg::Dem_Unknown(); demDataStructs[1] = new DemMsg::Dem_Packet(); @@ -15,7 +24,7 @@ void DemHandlers::CreateDemMsgStructs(void* demDataStructs[9]) demDataStructs[8] = new DemMsg::Dem_StringTables(); } -void DemHandlers::DestroyDemMsgStructs(void* demDataStructs[9]) +void DemHandlers::DestroyDemMsgStructs(DemDataStructArray& demDataStructs) { delete reinterpret_cast(demDataStructs[0]); delete reinterpret_cast(demDataStructs[1]); diff --git a/demboyz/demmessages/demhandlers.h b/demboyz/demmessages/demhandlers.h index c0e5c2a..a6fd5b1 100644 --- a/demboyz/demmessages/demhandlers.h +++ b/demboyz/demmessages/demhandlers.h @@ -2,6 +2,8 @@ #pragma once #include +#include +#include "demmessages.h" namespace base { @@ -49,8 +51,9 @@ namespace DemHandlers namespace DemHandlers { - void CreateDemMsgStructs(void* demDataStructs[9]); - void DestroyDemMsgStructs(void* demDataStructs[9]); + using DemDataStructArray = std::array; + void CreateDemMsgStructs(DemDataStructArray& demDataStructs); + void DestroyDemMsgStructs(DemDataStructArray& demDataStructs); bool DemMsg_FileRead(uint32_t type, FileRead& demofile, void* data); bool DemMsg_FileWrite(uint32_t type, FileWrite& demofile, void* data); diff --git a/demboyz/demmessages/demmessages.h b/demboyz/demmessages/demmessages.h index 221e851..da49e38 100644 --- a/demboyz/demmessages/demmessages.h +++ b/demboyz/demmessages/demmessages.h @@ -1,14 +1,4 @@ #pragma once -#include #include "demofile/demotypes.h" - -#include "dem_unknown.h" -#include "dem_packet.h" -#include "dem_synctick.h" -#include "dem_consolecmd.h" -#include "dem_usercmd.h" -#include "dem_datatables.h" -#include "dem_stop.h" -#include "dem_stringtables.h" diff --git a/demboyz/io/demreader.cpp b/demboyz/io/demreader.cpp index f1f91e1..a9c91f7 100644 --- a/demboyz/io/demreader.cpp +++ b/demboyz/io/demreader.cpp @@ -43,7 +43,7 @@ PacketTrailingBits ParsePacket(uint8_t* packet, size_t length, void DemoReader::ProcessDem(std::FILE* inputFp, IDemoWriter* writer) { NetHandlers::NetDataStructArray netDataStructs; - void* demDataStructs[9]; + DemHandlers::DemDataStructArray demDataStructs; NetHandlers::CreateNetMsgStructs(netDataStructs); DemHandlers::CreateDemMsgStructs(demDataStructs); diff --git a/demboyz/io/jsonreader.cpp b/demboyz/io/jsonreader.cpp index 40d00cf..0f1d1ba 100644 --- a/demboyz/io/jsonreader.cpp +++ b/demboyz/io/jsonreader.cpp @@ -41,7 +41,7 @@ PacketTrailingBits ParsePacket(base::JsonReaderFile& jsonReader, void DemoReader::ProcessJson(std::FILE* inputFp, IDemoWriter* writer) { NetHandlers::NetDataStructArray netDataStructs; - void* demDataStructs[9]; + DemHandlers::DemDataStructArray demDataStructs; NetHandlers::CreateNetMsgStructs(netDataStructs); DemHandlers::CreateDemMsgStructs(demDataStructs);