From 78bda75e451a7ad473660e41914c1b62b84d2989 Mon Sep 17 00:00:00 2001 From: MysterD Date: Tue, 19 Apr 2022 21:06:18 -0700 Subject: [PATCH] Massive DynOS refactor for performance/organization --- data/dynos.c.h | 9 +- data/dynos.cpp.h | 40 +- data/dynos_bin_actor.cpp | 34 +- data/dynos_c.cpp | 45 +- data/dynos_gfx_init.cpp | 78 +- data/dynos_gfx_update.cpp | 163 -- data/dynos_mgr_actor.cpp | 144 +- data/dynos_mgr_anim.cpp | 106 + data/dynos_mgr_col.cpp | 21 +- data/dynos_mgr_lvl.cpp | 36 +- data/dynos_mgr_movtexqc.cpp | 15 +- data/dynos_mgr_pack.cpp | 140 ++ data/dynos_mgr_tex.cpp | 13 +- data/dynos_opt.cpp | 4 +- gmon.log | 3551 ++++++++++++++++++++++++++++++++ include/macros.h | 9 + src/game/object_helpers.c | 1 + src/pc/configfile.c | 12 +- src/pc/djui/djui_panel_dynos.c | 8 +- src/pc/gfx/gfx_pc.c | 8 +- src/pc/mixer.c | 9 +- src/pc/mods/mod_cache.c | 4 - 22 files changed, 4075 insertions(+), 375 deletions(-) create mode 100644 data/dynos_mgr_anim.cpp create mode 100644 data/dynos_mgr_pack.cpp create mode 100644 gmon.log diff --git a/data/dynos.c.h b/data/dynos.c.h index 44a11fa7..29122a82 100644 --- a/data/dynos.c.h +++ b/data/dynos.c.h @@ -22,13 +22,14 @@ bool dynos_warp_exit_level(s32 aDelay); bool dynos_warp_to_castle(s32 aLevel); // -- dynos packs -- // -int dynos_packs_get_count(void); -const char* dynos_packs_get(s32 index); -bool dynos_packs_get_enabled(s32 index); -void dynos_packs_set_enabled(s32 index, bool value); +int dynos_pack_get_count(void); +const char* dynos_pack_get_name(s32 index); +bool dynos_pack_get_enabled(s32 index); +void dynos_pack_set_enabled(s32 index, bool value); void dynos_generate_packs(const char* directory); // -- geos -- // +void dynos_actor_override(void** aSharedChild); void dynos_add_actor_custom(const char *filePath, const char* geoName); const void* dynos_geolayout_get(const char *name); diff --git a/data/dynos.cpp.h b/data/dynos.cpp.h index e0d1dd15..dad094d2 100644 --- a/data/dynos.cpp.h +++ b/data/dynos.cpp.h @@ -474,7 +474,11 @@ struct ActorGfx { }; struct PackData { + s32 mIndex; + bool mEnabled; SysPath mPath; + String mDisplayName; + Array> mGfxData; }; typedef Pair Label; @@ -672,12 +676,8 @@ void DynOS_Opt_DrawPrompt(DynosOption *aCurrentMenu, DynosOption *aOptionsMenu, // Gfx // -Array &DynOS_Gfx_GetActorList(); -Array &DynOS_Gfx_GetPacks(); -Array &DynOS_Gfx_GetPacksEnabled(); -Array DynOS_Gfx_Init(); +void DynOS_Gfx_Init(); void DynOS_Gfx_Update(); -void DynOS_Gfx_SwapAnimations(void *aPtr); void DynOS_Gfx_Free(GfxData *aGfxData); // @@ -745,17 +745,35 @@ const void* DynOS_Builtin_Func_GetFromName(const char* aDataName); const void* DynOS_Builtin_Func_GetFromIndex(s32 aIndex); s32 DynOS_Builtin_Func_GetIndexFromData(const void* aData); +// +// Pack Manager +// + +s32 DynOS_Pack_GetCount(); +void DynOS_Pack_SetEnabled(PackData* aPack, bool aEnabled); +PackData* DynOS_Pack_GetFromIndex(s32 aIndex); +PackData* DynOS_Pack_GetFromPath(const SysPath& aPath); +PackData* DynOS_Pack_Add(const SysPath& aPath); +Pair* DynOS_Pack_GetActor(PackData* aPackData, const char* aActorName); +void DynOS_Pack_AddActor(PackData* aPackData, const char* aActorName, GfxData* aGfxData); + // // Actor Manager // void DynOS_Actor_AddCustom(const SysPath &aFilename, const char *aActorName); -s32 DynOS_Actor_GetCount(); -const char *DynOS_Actor_GetName(s32 aIndex); -const void *DynOS_Actor_GetLayoutFromIndex(s32 aIndex); const void *DynOS_Actor_GetLayoutFromName(const char *aActorName); -s32 DynOS_Actor_GetIndex(const void *aGeoLayout); -bool DynOS_Actor_IsCustom(s32 aIndex); +ActorGfx* DynOS_Actor_GetActorGfx(const void* aGeoref); +void DynOS_Actor_Valid(const void* aGeoref, ActorGfx& aActorGfx); +void DynOS_Actor_Invalid(const void* aGeoref, s32 aPackIndex); +void DynOS_Actor_Override(void** aSharedChild); +void DynOS_Actor_Override_All(void); + +// +// Anim Manager +// + +void DynOS_Anim_Swap(void *aPtr); // // Tex Manager @@ -880,7 +898,7 @@ void *DynOS_Pointer_Load(FILE *aFile, GfxData *aGfxData, u32 aValue); void DynOS_GfxDynCmd_Load(FILE *aFile, GfxData *aGfxData); -GfxData *DynOS_Actor_LoadFromBinary(const SysPath &aPackFolder, const char *aActorName, const SysPath &aFilename); +GfxData *DynOS_Actor_LoadFromBinary(const SysPath &aPackFolder, const char *aActorName, const SysPath &aFilename, bool aAddToPack); void DynOS_Actor_GeneratePack(const SysPath &aPackFolder); DataNode* DynOS_Lvl_Parse(GfxData* aGfxData, DataNode* aNode, bool aDisplayPercent); diff --git a/data/dynos_bin_actor.cpp b/data/dynos_bin_actor.cpp index 40a72a45..f5d80a18 100644 --- a/data/dynos_bin_actor.cpp +++ b/data/dynos_bin_actor.cpp @@ -72,25 +72,15 @@ static bool DynOS_Actor_WriteBinary(const SysPath &aOutputFilename, GfxData *aGf // Reading // ///////////// -GfxData *DynOS_Actor_LoadFromBinary(const SysPath &aPackFolder, const char *aActorName, const SysPath &aFilename) { - struct DynosGfxDataCache { SysPath mPackFolder; Array> mGfxData; }; - static Array sDynosGfxDataCache = {}; - +GfxData *DynOS_Actor_LoadFromBinary(const SysPath &aPackFolder, const char *aActorName, const SysPath &aFilename, bool aAddToPack) { // Look for pack in cache - DynosGfxDataCache *_Pack = NULL; - for (s32 i = 0; i != sDynosGfxDataCache.Count(); ++i) { - if (sDynosGfxDataCache[i]->mPackFolder == aPackFolder) { - _Pack = sDynosGfxDataCache[i]; - break; - } - } + PackData* _Pack = DynOS_Pack_GetFromPath(aPackFolder); // Look for actor in pack if (_Pack) { - for (s32 i = 0; i != _Pack->mGfxData.Count(); ++i) { - if (!strcmp(_Pack->mGfxData[i].first, aActorName)) { - return _Pack->mGfxData[i].second; - } + auto _ActorPair = DynOS_Pack_GetActor(_Pack, aActorName); + if (_ActorPair != NULL) { + return _ActorPair->second; } } @@ -119,13 +109,13 @@ GfxData *DynOS_Actor_LoadFromBinary(const SysPath &aPackFolder, const char *aAct } // Add data to cache, even if not loaded - if (_Pack) { - _Pack->mGfxData.Add({ aActorName, _GfxData }); - } else { - _Pack = New(); - _Pack->mPackFolder = aPackFolder; - _Pack->mGfxData.Add({ aActorName, _GfxData }); - sDynosGfxDataCache.Add(_Pack); + if (aAddToPack) { + if (_Pack) { + DynOS_Pack_AddActor(_Pack, aActorName, _GfxData); + } else { + _Pack = DynOS_Pack_Add(aPackFolder); + DynOS_Pack_AddActor(_Pack, aActorName, _GfxData); + } } return _GfxData; diff --git a/data/dynos_c.cpp b/data/dynos_c.cpp index 600f0774..37c5e6ca 100644 --- a/data/dynos_c.cpp +++ b/data/dynos_c.cpp @@ -25,7 +25,7 @@ s32 dynos_tex_import(void **output, void *ptr, s32 tile, void *grapi, void **has } void dynos_gfx_swap_animations(void *ptr) { - return DynOS_Gfx_SwapAnimations(ptr); + return DynOS_Anim_Swap(ptr); } // -- warps -- // @@ -48,34 +48,31 @@ bool dynos_warp_to_castle(s32 aLevel) { // -- dynos packs -- // -int dynos_packs_get_count(void) { - return DynOS_Gfx_GetPacks().Count(); +int dynos_pack_get_count(void) { + return DynOS_Pack_GetCount(); } -const char* dynos_packs_get(s32 index) { - const char* path = DynOS_Gfx_GetPacks()[index]->mPath.c_str(); - - // extract basename - const char* cpath = path; - const char* ctoken = cpath; - while (*ctoken != '\0') { - if (*ctoken == '/' || *ctoken == '\\') { - if (*(ctoken + 1) != '\0') { - cpath = (ctoken + 1); - } - } - ctoken++; +const char* dynos_pack_get_name(s32 index) { + PackData* _Pack = DynOS_Pack_GetFromIndex(index); + if (_Pack) { + return _Pack->mDisplayName.begin(); } - - return cpath; + return NULL; } -bool dynos_packs_get_enabled(s32 index) { - return DynOS_Gfx_GetPacksEnabled()[index]; +bool dynos_pack_get_enabled(s32 index) { + PackData* _Pack = DynOS_Pack_GetFromIndex(index); + if (_Pack) { + return _Pack->mEnabled; + } + return false; } -void dynos_packs_set_enabled(s32 index, bool value) { - DynOS_Gfx_GetPacksEnabled()[index] = value; +void dynos_pack_set_enabled(s32 index, bool value) { + PackData* _Pack = DynOS_Pack_GetFromIndex(index); + if (_Pack) { + DynOS_Pack_SetEnabled(_Pack, value); + } } void dynos_generate_packs(const char* directory) { @@ -84,6 +81,10 @@ void dynos_generate_packs(const char* directory) { // -- geos -- // +void dynos_actor_override(void** aSharedChild) { + DynOS_Actor_Override(aSharedChild); +} + void dynos_add_actor_custom(const char *filePath, const char* geoName) { DynOS_Actor_AddCustom(filePath, geoName); } diff --git a/data/dynos_gfx_init.cpp b/data/dynos_gfx_init.cpp index 7a619ee2..7fdb9733 100644 --- a/data/dynos_gfx_init.cpp +++ b/data/dynos_gfx_init.cpp @@ -1,20 +1,5 @@ #include "dynos.cpp.h" -Array &DynOS_Gfx_GetActorList() { - static Array sActorGfxList; - return sActorGfxList; -} - -Array &DynOS_Gfx_GetPacks() { - static Array sPacks; - return sPacks; -} - -Array &DynOS_Gfx_GetPacksEnabled() { - static Array sPacksEnabled; - return sPacksEnabled; -} - void DynOS_Gfx_GeneratePacks(const char* directory) { DIR *modsDir = opendir(directory); if (!modsDir) { return; } @@ -39,8 +24,31 @@ void DynOS_Gfx_GeneratePacks(const char* directory) { closedir(modsDir); } +static void ScanPackBins(SysPath aPackFolder) { + DIR *_PackDir = opendir(aPackFolder.c_str()); + if (!_PackDir) { return; } + + struct dirent *_PackEnt = NULL; + while ((_PackEnt = readdir(_PackDir)) != NULL) { + // Skip . and .. + if (SysPath(_PackEnt->d_name) == ".") continue; + if (SysPath(_PackEnt->d_name) == "..") continue; + + // Skip non .bin + s32 length = strlen(_PackEnt->d_name); + if (length < 5) { continue; } + if (strncmp(&_PackEnt->d_name[length - 4], ".bin", 4)) { continue; } + + String _ActorName = _PackEnt->d_name; + _ActorName[length - 4] = '\0'; + + SysPath _FileName = fstring("%s/%s", aPackFolder.begin(), _PackEnt->d_name); + + DynOS_Actor_LoadFromBinary(aPackFolder, strdup(_ActorName.begin()), _FileName, true); + } +} + static void ScanPacksFolder(SysPath _DynosPacksFolder) { - Array &pDynosPacks = DynOS_Gfx_GetPacks(); DIR *_DynosPacksDir = opendir(_DynosPacksFolder.c_str()); if (_DynosPacksDir) { struct dirent *_DynosPacksEnt = NULL; @@ -53,34 +61,16 @@ static void ScanPacksFolder(SysPath _DynosPacksFolder) { // If pack folder exists, add it to the pack list SysPath _PackFolder = fstring("%s/%s", _DynosPacksFolder.c_str(), _DynosPacksEnt->d_name); if (fs_sys_dir_exists(_PackFolder.c_str())) { - PackData *_Pack = New(); - - // Scan folder for subfolders to convert into .bin files - _Pack->mPath = _PackFolder; + struct PackData* _Pack = DynOS_Pack_Add(_PackFolder); DynOS_Actor_GeneratePack(_PackFolder); - - // Add pack to pack list - pDynosPacks.Add(_Pack); - - // Add enabled flag - DynOS_Gfx_GetPacksEnabled().Add(true); + ScanPackBins(_PackFolder); } } closedir(_DynosPacksDir); } } -Array DynOS_Gfx_Init() { - - // Alloc and init the actors gfx list - Array &pActorGfxList = DynOS_Gfx_GetActorList(); - pActorGfxList.Resize(DynOS_Actor_GetCount()); - for (s32 i = 0; i != DynOS_Actor_GetCount(); ++i) { - pActorGfxList[i].mPackIndex = -1; - pActorGfxList[i].mGfxData = NULL; - pActorGfxList[i].mGraphNode = (GraphNode *) DynOS_Geo_GetGraphNode(DynOS_Actor_GetLayoutFromIndex(i), false); - } - +void DynOS_Gfx_Init() { // Scan the DynOS packs folder SysPath _DynosPacksFolder = fstring("%s/%s", DYNOS_EXE_FOLDER, DYNOS_PACKS_FOLDER); ScanPacksFolder(_DynosPacksFolder); @@ -88,18 +78,4 @@ Array DynOS_Gfx_Init() { // Scan the user path folder SysPath _DynosPacksUserFolder = fstring("%s/%s", DYNOS_USER_FOLDER, DYNOS_PACKS_FOLDER); ScanPacksFolder(_DynosPacksUserFolder); - - // Return a list of pack names - Array &pDynosPacks = DynOS_Gfx_GetPacks(); - Array _PackNames; - for (const auto& _Pack : pDynosPacks) { - u64 _DirSep1 = _Pack->mPath.find_last_of('\\'); - u64 _DirSep2 = _Pack->mPath.find_last_of('/'); - if (_DirSep1++ == SysPath::npos) _DirSep1 = 0; - if (_DirSep2++ == SysPath::npos) _DirSep2 = 0; - SysPath _DirName = _Pack->mPath.substr(MAX(_DirSep1, _DirSep2)); - _PackNames.Add(_DirName.c_str()); - } - - return _PackNames; } diff --git a/data/dynos_gfx_update.cpp b/data/dynos_gfx_update.cpp index 224bbda8..81c2fef0 100644 --- a/data/dynos_gfx_update.cpp +++ b/data/dynos_gfx_update.cpp @@ -1,169 +1,6 @@ #include "dynos.cpp.h" extern "C" { -#include "object_fields.h" -#include "game/level_update.h" -#include "game/object_list_processor.h" -#include "pc/configfile.h" } -// -// Update animations -// - -// Retrieve the current Mario's animation index -static s32 RetrieveCurrentMarioAnimationIndex() { - struct MarioAnimDmaRelatedThing *_AnimDmaTable = gMarioState->animation->animDmaTable; - for (s32 i = 0; i != (s32) _AnimDmaTable->count; ++i) { - void *_AnimAddr = _AnimDmaTable->srcAddr + _AnimDmaTable->anim[i].offset; - if (_AnimAddr == gMarioState->animation->currentAnimAddr) { - return i; - } - } - return -1; -} - -// Retrieve the current animation index -// As we don't know the length of the table, let's hope that we'll always find the animation... -static s32 RetrieveCurrentAnimationIndex(struct Object *aObject) { - if (!aObject->oAnimations || !aObject->header.gfx.animInfo.curAnim) { - return -1; - } - for (s32 i = 0; aObject->oAnimations[i] != NULL; ++i) { - if (aObject->oAnimations[i] == aObject->header.gfx.animInfo.curAnim) { - return i; - } - } - return -1; -} - -// Must be called twice, before and after geo_set_animation_globals -void DynOS_Gfx_SwapAnimations(void *aPtr) { - static Animation *pDefaultAnimation = NULL; - static Animation sGfxDataAnimation; - - // Does the object has a model? - struct Object *_Object = (struct Object *) aPtr; - if (!_Object->header.gfx.sharedChild) { - return; - } - - // Swap the current animation with the one from the Gfx data - if (!pDefaultAnimation) { - pDefaultAnimation = _Object->header.gfx.animInfo.curAnim; - - // Actor index - s32 _ActorIndex = DynOS_Actor_GetIndex(_Object->header.gfx.sharedChild->georef); - if (_ActorIndex == -1) { - return; - } - - // Gfx data - GfxData *_GfxData = DynOS_Gfx_GetActorList()[_ActorIndex].mGfxData; - if (!_GfxData) { - return; - } - - // Animation table - if (_GfxData->mAnimationTable.Empty()) { - return; - } - - // Animation index - s32 _AnimIndex = (_Object == gMarioObject ? RetrieveCurrentMarioAnimationIndex() : RetrieveCurrentAnimationIndex(_Object)); - if (_AnimIndex == -1) { - return; - } - - // Animation data - const AnimData *_AnimData = (const AnimData *) _GfxData->mAnimationTable[_AnimIndex].second; - if (_AnimData) { - sGfxDataAnimation.flags = _AnimData->mFlags; - sGfxDataAnimation.animYTransDivisor = _AnimData->mUnk02; - sGfxDataAnimation.startFrame = _AnimData->mUnk04; - sGfxDataAnimation.loopStart = _AnimData->mUnk06; - sGfxDataAnimation.loopEnd = _AnimData->mUnk08; - sGfxDataAnimation.unusedBoneCount = _AnimData->mUnk0A.second; - sGfxDataAnimation.values = _AnimData->mValues.second.begin(); - sGfxDataAnimation.index = _AnimData->mIndex.second.begin(); - sGfxDataAnimation.length = _AnimData->mLength; - _Object->header.gfx.animInfo.curAnim = &sGfxDataAnimation; - } - - // Restore the default animation - } else { - _Object->header.gfx.animInfo.curAnim = pDefaultAnimation; - pDefaultAnimation = NULL; - } -} - -// -// Update models -// - void DynOS_Gfx_Update() { - if (!gObjectLists) { return; } - - // Check packs - Array &_Enabled = DynOS_Gfx_GetPacksEnabled(); - const Array &pDynosPacks = DynOS_Gfx_GetPacks(); - while (_Enabled.Count() < pDynosPacks.Count()) { - _Enabled.Add(true); - } - - // Loop through all object lists - for (s32 list : { OBJ_LIST_PLAYER, OBJ_LIST_DESTRUCTIVE, OBJ_LIST_GENACTOR, OBJ_LIST_PUSHABLE, OBJ_LIST_LEVEL, OBJ_LIST_DEFAULT, OBJ_LIST_SURFACE, OBJ_LIST_POLELIKE, OBJ_LIST_UNIMPORTANT }) { - struct Object *_Head = (struct Object *) &gObjectLists[list]; - for (struct Object *_Object = (struct Object *) _Head->header.next; _Object != _Head; _Object = (struct Object *) _Object->header.next) { - // Make sure it's non-null - if (!_Object->header.gfx.sharedChild) { continue; } - - // Actor index - s32 _ActorIndex = DynOS_Actor_GetIndex(_Object->header.gfx.sharedChild->georef); - if (_ActorIndex == -1) { continue; } - - // Replace the object's model and animations - ActorGfx *_ActorGfx = &DynOS_Gfx_GetActorList()[_ActorIndex]; - - // Check for disabled downloaded models - if (configDisableDownloadedModels && _ActorGfx->mPackIndex == 99) { - extern const GeoLayout error_model_geo[]; - s32 actorIndex = DynOS_Actor_IsCustom(_ActorIndex) ? DynOS_Actor_GetIndex(error_model_geo) : _ActorIndex; - const void* geoLayout = DynOS_Actor_GetLayoutFromIndex(actorIndex); - _ActorGfx->mPackIndex = -1; - _ActorGfx->mGfxData = NULL; - _ActorGfx->mGraphNode = (GraphNode *) DynOS_Geo_GetGraphNode(geoLayout, true); - } - - for (s32 i = 0; i != pDynosPacks.Count(); ++i) { - // If enabled and no pack is selected - // load the pack's model and replace the default actor's model - if (_Enabled[i] && _ActorGfx->mPackIndex == -1) { - - // Load Gfx data from binary - SysPath _Filename = fstring("%s/%s.bin", pDynosPacks[i]->mPath.begin(), DynOS_Actor_GetName(_ActorIndex)); - GfxData *_GfxData = DynOS_Actor_LoadFromBinary(pDynosPacks[i]->mPath, DynOS_Actor_GetName(_ActorIndex), _Filename); - if (_GfxData) { - _ActorGfx->mPackIndex = i; - _ActorGfx->mGfxData = _GfxData; - _ActorGfx->mGraphNode = (GraphNode *) DynOS_Geo_GetGraphNode((*(_GfxData->mGeoLayouts.end() - 1))->mData, true); - _ActorGfx->mGraphNode->georef = DynOS_Actor_GetLayoutFromIndex(_ActorIndex); - DynOS_Tex_Valid(_GfxData); - break; - } - } - - // If disabled and this pack is the one selected - // replace the actor's model by the default one - else if (!_Enabled[i] && _ActorGfx->mPackIndex == i) { - DynOS_Tex_Invalid(_ActorGfx->mGfxData); - _ActorGfx->mPackIndex = -1; - _ActorGfx->mGfxData = NULL; - _ActorGfx->mGraphNode = (GraphNode *) DynOS_Geo_GetGraphNode(DynOS_Actor_GetLayoutFromIndex(_ActorIndex), true); - } - } - - // Update object - _Object->header.gfx.sharedChild = _ActorGfx->mGraphNode; - } - } } diff --git a/data/dynos_mgr_actor.cpp b/data/dynos_mgr_actor.cpp index 008df908..033d915a 100644 --- a/data/dynos_mgr_actor.cpp +++ b/data/dynos_mgr_actor.cpp @@ -1,27 +1,36 @@ +#include #include "dynos.cpp.h" -static Array> sDynosCustomActors; +extern "C" { +#include "object_fields.h" +#include "game/level_update.h" +#include "game/object_list_processor.h" +#include "pc/configfile.h" +} + +// Static maps/arrays +static std::map& DynosValidActors() { + static std::map sDynosValidActors; + return sDynosValidActors; +} + +static Array>& DynosCustomActors() { + static Array> sDynosCustomActors; + return sDynosCustomActors; +} // TODO: the cleanup/refactor didn't really go as planned. // clean up the actor management code more void DynOS_Actor_AddCustom(const SysPath &aFilename, const char *aActorName) { - // check for duplicates - bool isUnique = true; - s32 foundIndex = -1; - for (s32 i = 0; i < DynOS_Actor_GetCount(); ++i) { - if (!strcmp(DynOS_Actor_GetName(i), aActorName)) { - isUnique = false; - foundIndex = i; - break; - } - } + + const void* georef = DynOS_Builtin_Actor_GetFromName(aActorName); u16 actorLen = strlen(aActorName); char* actorName = (char*)calloc(1, sizeof(char) * (actorLen + 1)); strcpy(actorName, aActorName); - GfxData *_GfxData = DynOS_Actor_LoadFromBinary(aFilename, actorName, aFilename); + GfxData *_GfxData = DynOS_Actor_LoadFromBinary(aFilename, actorName, aFilename, false); if (!_GfxData) { Print(" ERROR: Couldn't load Actor Binary \"%s\" from \"%s\"", actorName, aFilename.c_str()); free(actorName); @@ -36,36 +45,20 @@ void DynOS_Actor_AddCustom(const SysPath &aFilename, const char *aActorName) { } // Add to custom actors - s32 index = DynOS_Actor_GetCount(); - if (isUnique) { - sDynosCustomActors.Add({ actorName, geoLayout }); - } else { - index = foundIndex; + if (georef == NULL) { + DynosCustomActors().Add({ actorName, geoLayout }); + georef = geoLayout; } // Alloc and init the actors gfx list - Array &pActorGfxList = DynOS_Gfx_GetActorList(); - pActorGfxList.Resize(DynOS_Actor_GetCount()); - pActorGfxList[index].mPackIndex = 99; - pActorGfxList[index].mGfxData = _GfxData; - pActorGfxList[index].mGraphNode = (GraphNode *) DynOS_Geo_GetGraphNode(geoLayout, false); - DynOS_Tex_Valid(_GfxData); -} + ActorGfx actorGfx = { + .mGfxData = _GfxData, + .mGraphNode = (GraphNode *) DynOS_Geo_GetGraphNode(geoLayout, false), + .mPackIndex = 99, + }; -s32 DynOS_Actor_GetCount() { - return (s32) DynOS_Builtin_Actor_GetCount() + sDynosCustomActors.Count(); -} - -const char *DynOS_Actor_GetName(s32 aIndex) { - s32 builtinCount = DynOS_Builtin_Actor_GetCount(); - if (aIndex < builtinCount) { return (const char *) DynOS_Builtin_Actor_GetNameFromIndex(aIndex); } - return sDynosCustomActors[aIndex - builtinCount].first; -} - -const void *DynOS_Actor_GetLayoutFromIndex(s32 aIndex) { - s32 builtinCount = DynOS_Builtin_Actor_GetCount(); - if (aIndex < builtinCount) { return (const void *) DynOS_Builtin_Actor_GetFromIndex(aIndex); } - return sDynosCustomActors[aIndex - builtinCount].second; + // Add to list + DynOS_Actor_Valid(georef, actorGfx); } const void *DynOS_Actor_GetLayoutFromName(const char *aActorName) { @@ -81,26 +74,73 @@ const void *DynOS_Actor_GetLayoutFromName(const char *aActorName) { } } - // check actors - for (s32 i = 0; i < DynOS_Actor_GetCount(); ++i) { - if (!strcmp(DynOS_Actor_GetName(i), aActorName)) { - return DynOS_Actor_GetLayoutFromIndex(i); + // check loaded actors + for (auto& pair : DynosValidActors()) { + for (auto& geo : pair.second.mGfxData->mGeoLayouts) { + if (!strcmp(aActorName, geo->mName.begin())) { + return geo->mData; + } + } + } + + // check built in actors + for (s32 i = 0; i < DynOS_Builtin_Actor_GetCount(); ++i) { + auto name = DynOS_Builtin_Actor_GetNameFromIndex(i); + if (!strcmp(aActorName, name)) { + return DynOS_Builtin_Actor_GetFromIndex(i); } } return NULL; } -s32 DynOS_Actor_GetIndex(const void *aGeoLayout) { - for (s32 i = 0; i < DynOS_Actor_GetCount(); ++i) { - if (DynOS_Actor_GetLayoutFromIndex(i) == aGeoLayout) { - return i; - } - } - return -1; +ActorGfx* DynOS_Actor_GetActorGfx(const void* aGeoref) { + if (aGeoref == NULL) { return NULL; } + auto& _ValidActors = DynosValidActors(); + if (_ValidActors.count(aGeoref) == 0) { return NULL; } + return &_ValidActors[aGeoref]; } -bool DynOS_Actor_IsCustom(s32 aIndex) { - s32 builtinCount = DynOS_Builtin_Actor_GetCount(); - return aIndex >= builtinCount; +void DynOS_Actor_Valid(const void* aGeoref, ActorGfx& aActorGfx) { + if (aGeoref == NULL) { return; } + auto& _ValidActors = DynosValidActors(); + _ValidActors[aGeoref] = aActorGfx; + DynOS_Tex_Valid(aActorGfx.mGfxData); +} + +void DynOS_Actor_Invalid(const void* aGeoref, s32 aPackIndex) { + if (aGeoref == NULL) { return; } + auto& _ValidActors = DynosValidActors(); + if (_ValidActors.count(aGeoref) == 0) { return; } + if (_ValidActors[aGeoref].mPackIndex != aPackIndex) { return; } + + DynOS_Tex_Invalid(_ValidActors[aGeoref].mGfxData); + _ValidActors.erase(aGeoref); +} + +void DynOS_Actor_Override(void** aSharedChild) { + if ((aSharedChild == NULL) || (*aSharedChild == NULL)) { return; } + + const void* georef = (*(GraphNode**)aSharedChild)->georef; + if (georef == NULL) { return; } + + auto& _ValidActors = DynosValidActors(); + if (_ValidActors.count(georef) == 0) { return; } + + *aSharedChild = (void*)_ValidActors[georef].mGraphNode; +} + +void DynOS_Actor_Override_All(void) { + if (!gObjectLists) { return; } + // Loop through all object lists + for (s32 list : { OBJ_LIST_PLAYER, OBJ_LIST_DESTRUCTIVE, OBJ_LIST_GENACTOR, OBJ_LIST_PUSHABLE, OBJ_LIST_LEVEL, OBJ_LIST_DEFAULT, OBJ_LIST_SURFACE, OBJ_LIST_POLELIKE, OBJ_LIST_UNIMPORTANT }) { + struct Object *_Head = (struct Object *) &gObjectLists[list]; + for (struct Object *_Object = (struct Object *) _Head->header.next; _Object != _Head; _Object = (struct Object *) _Object->header.next) { + if (_Object->header.gfx.sharedChild != NULL && _Object->header.gfx.sharedChild->georef != NULL) { + GraphNode* georef =(GraphNode*)_Object->header.gfx.sharedChild->georef; + _Object->header.gfx.sharedChild = (GraphNode *) DynOS_Geo_GetGraphNode(georef, true); + } + DynOS_Actor_Override((void**)&_Object->header.gfx.sharedChild); + } + } } diff --git a/data/dynos_mgr_anim.cpp b/data/dynos_mgr_anim.cpp new file mode 100644 index 00000000..b65f769c --- /dev/null +++ b/data/dynos_mgr_anim.cpp @@ -0,0 +1,106 @@ +#include "dynos.cpp.h" +extern "C" { +#include "object_fields.h" +#include "game/level_update.h" +#include "game/object_list_processor.h" +#include "pc/configfile.h" +} + +// +// Update animations +// + +// Retrieve the current Mario's animation index +static s32 RetrieveCurrentMarioAnimationIndex(u32 aPlayerIndex) { + struct MarioAnimDmaRelatedThing *_AnimDmaTable = gMarioStates[aPlayerIndex].animation->animDmaTable; + for (s32 i = 0; i != (s32) _AnimDmaTable->count; ++i) { + void *_AnimAddr = _AnimDmaTable->srcAddr + _AnimDmaTable->anim[i].offset; + if (_AnimAddr == gMarioStates[aPlayerIndex].animation->currentAnimAddr) { + return i; + } + } + return -1; +} + +// Retrieve the current animation index +// As we don't know the length of the table, let's hope that we'll always find the animation... +static s32 RetrieveCurrentAnimationIndex(struct Object *aObject) { + if (!aObject->oAnimations || !aObject->header.gfx.animInfo.curAnim) { + return -1; + } + for (s32 i = 0; aObject->oAnimations[i] != NULL; ++i) { + if (aObject->oAnimations[i] == aObject->header.gfx.animInfo.curAnim) { + return i; + } + } + return -1; +} + +// Must be called twice, before and after geo_set_animation_globals +void DynOS_Anim_Swap(void *aPtr) { + static Animation *pDefaultAnimation = NULL; + static Animation sGfxDataAnimation; + + // Does the object has a model? + struct Object *_Object = (struct Object *) aPtr; + if (!_Object->header.gfx.sharedChild) { + return; + } + + // Swap the current animation with the one from the Gfx data + if (!pDefaultAnimation) { + pDefaultAnimation = _Object->header.gfx.animInfo.curAnim; + + // ActorGfx data + ActorGfx* _ActorGfx = DynOS_Actor_GetActorGfx(_Object->header.gfx.sharedChild->georef); + if (!_ActorGfx) { + return; + } + + // GfxData + GfxData* _GfxData = _ActorGfx->mGfxData; + if (!_GfxData) { + return; + } + + // Animation table + if (_GfxData->mAnimationTable.Empty()) { + return; + } + + // Animation index + s32 _AnimIndex = -1; + for (u32 i = 0; i < MAX_PLAYERS; i++) { + if (gMarioStates[i].marioObj == NULL) { continue; } + if (_Object == gMarioStates[i].marioObj) { + _AnimIndex = RetrieveCurrentMarioAnimationIndex(i); + } + } + if (_AnimIndex == -1) { + _AnimIndex = RetrieveCurrentAnimationIndex(_Object); + } + if (_AnimIndex == -1) { + return; + } + + // Animation data + const AnimData *_AnimData = (const AnimData *) _GfxData->mAnimationTable[_AnimIndex].second; + if (_AnimData) { + sGfxDataAnimation.flags = _AnimData->mFlags; + sGfxDataAnimation.animYTransDivisor = _AnimData->mUnk02; + sGfxDataAnimation.startFrame = _AnimData->mUnk04; + sGfxDataAnimation.loopStart = _AnimData->mUnk06; + sGfxDataAnimation.loopEnd = _AnimData->mUnk08; + sGfxDataAnimation.unusedBoneCount = _AnimData->mUnk0A.second; + sGfxDataAnimation.values = _AnimData->mValues.second.begin(); + sGfxDataAnimation.index = _AnimData->mIndex.second.begin(); + sGfxDataAnimation.length = _AnimData->mLength; + _Object->header.gfx.animInfo.curAnim = &sGfxDataAnimation; + } + + // Restore the default animation + } else { + _Object->header.gfx.animInfo.curAnim = pDefaultAnimation; + pDefaultAnimation = NULL; + } +} diff --git a/data/dynos_mgr_col.cpp b/data/dynos_mgr_col.cpp index dc367eba..591e5600 100644 --- a/data/dynos_mgr_col.cpp +++ b/data/dynos_mgr_col.cpp @@ -1,11 +1,16 @@ #include "dynos.cpp.h" -static Array*>> sDynosCollisions; +static Array*>>& DynosCollisions() { + static Array*>> sDynosCollisions; + return sDynosCollisions; +} void DynOS_Col_Activate(const SysPath &aFilename, const char *aCollisionName) { + auto& _DynosCollisions = DynosCollisions(); + // check for duplicates - for (s32 i = 0; i < sDynosCollisions.Count(); ++i) { - if (!strcmp(sDynosCollisions[i].first, aCollisionName)) { + for (s32 i = 0; i < _DynosCollisions.Count(); ++i) { + if (!strcmp(_DynosCollisions[i].first, aCollisionName)) { return; } } @@ -23,10 +28,12 @@ void DynOS_Col_Activate(const SysPath &aFilename, const char *aCollisionName) { } // Add to collisions - sDynosCollisions.Add({ collisionName, _Node }); + _DynosCollisions.Add({ collisionName, _Node }); } Collision* DynOS_Col_Get(const char* collisionName) { + auto& _DynosCollisions = DynosCollisions(); + // check levels auto& levelsArray = DynOS_Lvl_GetArray(); for (auto& lvl : levelsArray) { @@ -38,9 +45,9 @@ Collision* DynOS_Col_Get(const char* collisionName) { } // check mod actor collisions - for (s32 i = 0; i < sDynosCollisions.Count(); ++i) { - if (!strcmp(sDynosCollisions[i].first, collisionName)) { - return sDynosCollisions[i].second->mData; + for (s32 i = 0; i < _DynosCollisions.Count(); ++i) { + if (!strcmp(_DynosCollisions[i].first, collisionName)) { + return _DynosCollisions[i].second->mData; } } diff --git a/data/dynos_mgr_lvl.cpp b/data/dynos_mgr_lvl.cpp index d4ecf3a6..3742e733 100644 --- a/data/dynos_mgr_lvl.cpp +++ b/data/dynos_mgr_lvl.cpp @@ -10,20 +10,26 @@ struct OverrideLevelScript { GfxData* gfxData; }; -static Array> sDynosCustomLevelScripts; -static Array sDynosOverrideLevelScripts; +static Array& DynosOverrideLevelScripts() { + static Array sDynosOverrideLevelScripts; + return sDynosOverrideLevelScripts; +} Array> &DynOS_Lvl_GetArray() { + static Array> sDynosCustomLevelScripts; return sDynosCustomLevelScripts; } void DynOS_Lvl_Activate(s32 modIndex, const SysPath &aFilename, const char *aLevelName) { + auto& _CustomLevelScripts = DynOS_Lvl_GetArray(); + auto& _OverrideLevelScripts = DynosOverrideLevelScripts(); + // make sure vanilla levels were parsed DynOS_Level_GetCount(); // check for duplicates - for (s32 i = 0; i < sDynosCustomLevelScripts.Count(); ++i) { - if (!strcmp(sDynosCustomLevelScripts[i].first, aLevelName)) { + for (s32 i = 0; i < _CustomLevelScripts.Count(); ++i) { + if (!strcmp(_CustomLevelScripts[i].first, aLevelName)) { return; } } @@ -42,7 +48,7 @@ void DynOS_Lvl_Activate(s32 modIndex, const SysPath &aFilename, const char *aLev _Node->mModIndex = modIndex; // Add to levels - sDynosCustomLevelScripts.Add({ levelName, _Node }); + _CustomLevelScripts.Add({ levelName, _Node }); // Override vanilla script auto& newScripts = _Node->mLevelScripts; @@ -54,13 +60,15 @@ void DynOS_Lvl_Activate(s32 modIndex, const SysPath &aFilename, const char *aLev } DynOS_Level_Override((void*)originalScript, newScriptNode->mData); - sDynosOverrideLevelScripts.Add({ originalScript, newScriptNode->mData, _Node}); + _OverrideLevelScripts.Add({ originalScript, newScriptNode->mData, _Node}); DynOS_Tex_Valid(_Node); } GfxData* DynOS_Lvl_GetActiveGfx(void) { - for (s32 i = 0; i < sDynosCustomLevelScripts.Count(); ++i) { - auto& gfxData = sDynosCustomLevelScripts[i].second; + auto& _CustomLevelScripts = DynOS_Lvl_GetArray(); + + for (s32 i = 0; i < _CustomLevelScripts.Count(); ++i) { + auto& gfxData = _CustomLevelScripts[i].second; auto& scripts = gfxData->mLevelScripts; if (gLevelScriptActive == scripts[scripts.Count() - 1]->mData) { return gfxData; @@ -86,7 +94,9 @@ const char* DynOS_Lvl_GetToken(u32 index) { } Trajectory* DynOS_Lvl_GetTrajectory(const char* aName) { - for (auto& script : sDynosCustomLevelScripts) { + auto& _CustomLevelScripts = DynOS_Lvl_GetArray(); + + for (auto& script : _CustomLevelScripts) { for (auto& trajectoryNode : script.second->mTrajectories) { if (trajectoryNode->mName == aName) { return trajectoryNode->mData; @@ -97,10 +107,12 @@ Trajectory* DynOS_Lvl_GetTrajectory(const char* aName) { } void DynOS_Lvl_LoadBackground(void *aPtr) { + auto& _CustomLevelScripts = DynOS_Lvl_GetArray(); + // ensure this texture list exists GfxData* foundGfxData = NULL; DataNode* foundList = NULL; - for (auto& script : sDynosCustomLevelScripts) { + for (auto& script : _CustomLevelScripts) { auto &textureLists = script.second->mTextureLists; for (auto& textureList : textureLists) { if (textureList == aPtr) { @@ -130,7 +142,9 @@ double_break: } void *DynOS_Lvl_Override(void *aCmd) { - for (auto& overrideStruct : sDynosOverrideLevelScripts) { + auto& _OverrideLevelScripts = DynosOverrideLevelScripts(); + + for (auto& overrideStruct : _OverrideLevelScripts) { if (aCmd == overrideStruct.originalScript || aCmd == overrideStruct.newScript) { aCmd = (void*)overrideStruct.newScript; gLevelScriptModIndex = overrideStruct.gfxData->mModIndex; diff --git a/data/dynos_mgr_movtexqc.cpp b/data/dynos_mgr_movtexqc.cpp index 3a24eb81..0d2fdb40 100644 --- a/data/dynos_mgr_movtexqc.cpp +++ b/data/dynos_mgr_movtexqc.cpp @@ -10,11 +10,16 @@ struct RegisteredMovtexQC { s16 type; }; -static Array sDynosRegisteredMovtexQCs; +static Array& DynosRegisteredMovtexQCs() { + static Array sDynosRegisteredMovtexQCs; + return sDynosRegisteredMovtexQCs; +} void DynOS_MovtexQC_Register(const char* name, s16 level, s16 area, s16 type) { + auto& _DynosRegisteredMovtexQCs = DynosRegisteredMovtexQCs(); + // check for duplicates - for (auto& registered : sDynosRegisteredMovtexQCs) { + for (auto& registered : _DynosRegisteredMovtexQCs) { if (registered.level == level && registered.area == area && registered.type == type) { return; } } @@ -23,7 +28,7 @@ void DynOS_MovtexQC_Register(const char* name, s16 level, s16 area, s16 type) { for (auto& node : lvlPair.second->mMovtexQCs) { if (node->mName == name) { // add it - sDynosRegisteredMovtexQCs.Add({ + _DynosRegisteredMovtexQCs.Add({ .dataNode = node, .level = level, .area = area, @@ -35,9 +40,11 @@ void DynOS_MovtexQC_Register(const char* name, s16 level, s16 area, s16 type) { } DataNode* DynOS_MovtexQC_GetFromId(u32 id) { + auto& _DynosRegisteredMovtexQCs = DynosRegisteredMovtexQCs(); + // find the datanode s16 type = (id & 0xF); - for (auto& registered : sDynosRegisteredMovtexQCs) { + for (auto& registered : _DynosRegisteredMovtexQCs) { if (registered.level == gCurrLevelNum && registered.area == gCurrAreaIndex && registered.type == type) { return registered.dataNode; } diff --git a/data/dynos_mgr_pack.cpp b/data/dynos_mgr_pack.cpp new file mode 100644 index 00000000..eee63dae --- /dev/null +++ b/data/dynos_mgr_pack.cpp @@ -0,0 +1,140 @@ +#include "dynos.cpp.h" + +static Array& DynosPacks() { + static Array sDynosPacks; + return sDynosPacks; +} + +static void DynOS_Pack_ActivateActor(s32 aPackIndex, Pair& pair) { + const char* aActorName = pair.first; + GfxData* aGfxData = pair.second; + + GraphNode* graphNode = (GraphNode *) DynOS_Geo_GetGraphNode((*(aGfxData->mGeoLayouts.end() - 1))->mData, false); + if (graphNode == NULL) { return; } + + const void* georef = DynOS_Builtin_Actor_GetFromName(aActorName); + graphNode->georef = georef; + + ActorGfx actorGfx = { + .mGfxData = aGfxData, + .mGraphNode = graphNode, + .mPackIndex = aPackIndex, + }; + + DynOS_Actor_Valid(georef, actorGfx); +} + +static void DynOS_Pack_DeactivateActor(s32 aPackIndex, Pair& pair) { + const char* aActorName = pair.first; + const void* georef = DynOS_Builtin_Actor_GetFromName(aActorName); + DynOS_Actor_Invalid(georef, aPackIndex); + + // figure out which actor to replace it with + Pair* _Replacement = NULL; + s32 _ReplacementPackIndex = 0; + for (auto& _Pack : DynosPacks()) { + if (!_Pack.mEnabled) { continue; } + auto _Tmp = DynOS_Pack_GetActor(&_Pack, aActorName); + if (_Tmp != NULL) { + _Replacement = _Tmp; + _ReplacementPackIndex = _Pack.mIndex; + } + } + if (_Replacement != NULL) { + DynOS_Pack_ActivateActor(_ReplacementPackIndex, *_Replacement); + } +} + +s32 DynOS_Pack_GetCount() { + return DynosPacks().Count(); +} + +void DynOS_Pack_SetEnabled(PackData* aPack, bool aEnabled) { + if (aPack == NULL) { return; } + aPack->mEnabled = aEnabled; + + if (aEnabled) { + for (auto& pair : aPack->mGfxData) { + DynOS_Pack_ActivateActor(aPack->mIndex, pair); + } + } else { + for (auto& pair : aPack->mGfxData) { + DynOS_Pack_DeactivateActor(aPack->mIndex, pair); + } + } + DynOS_Actor_Override_All(); +} + +PackData* DynOS_Pack_GetFromIndex(s32 aIndex) { + auto& _DynosPacks = DynosPacks(); + if (aIndex < 0 || aIndex >= _DynosPacks.Count()) { + return NULL; + } + return &_DynosPacks[aIndex]; +} + +PackData* DynOS_Pack_GetFromPath(const SysPath& aPath) { + for (auto& packData : DynosPacks()) { + if (packData.mPath == aPath) { + return &packData; + } + } + return NULL; +} + +PackData* DynOS_Pack_Add(const SysPath& aPath) { + PackData* existing = DynOS_Pack_GetFromPath(aPath); + if (existing != NULL) { return existing; } + + auto& _DynosPacks = DynosPacks(); + s32 index = _DynosPacks.Count(); + _DynosPacks.Add({ + .mIndex = index, + .mPath = aPath, + .mGfxData = {}, + }); + + PackData* _Pack = &_DynosPacks[index]; + + // extract basename + const char* cpath = aPath.c_str(); + const char* ctoken = cpath; + while (*ctoken != '\0') { + if (*ctoken == '/' || *ctoken == '\\') { + if (*(ctoken + 1) != '\0') { + cpath = (ctoken + 1); + } + } + ctoken++; + } + _Pack->mDisplayName = cpath; + + DynOS_Pack_SetEnabled(_Pack, true); + + return _Pack; +} + +Pair* DynOS_Pack_GetActor(PackData* aPackData, const char* aActorName) { + if (aPackData == NULL || aActorName == NULL) { + return NULL; + } + for (auto& pair : aPackData->mGfxData) { + if (!strcmp(pair.first, aActorName)) { + return &pair; + } + } + return NULL; +} + +void DynOS_Pack_AddActor(PackData* aPackData, const char* aActorName, GfxData* aGfxData) { + if (aPackData == NULL || aActorName == NULL || aGfxData == NULL) { + return; + } + + s32 index = aPackData->mGfxData.Count(); + aPackData->mGfxData.Add({ aActorName, aGfxData }); + + if (aPackData->mEnabled) { + DynOS_Pack_ActivateActor(aPackData->mIndex, aPackData->mGfxData[index]); + } +} diff --git a/data/dynos_mgr_tex.cpp b/data/dynos_mgr_tex.cpp index 8476235a..290944f7 100644 --- a/data/dynos_mgr_tex.cpp +++ b/data/dynos_mgr_tex.cpp @@ -4,7 +4,11 @@ extern "C" { #include "pc/gfx/gfx_rendering_api.h" } -static std::set *> sDynosValidTextures; +// static set +static std::set *>& DynosValidTextures() { + static std::set *> sDynosValidTextures; + return sDynosValidTextures; +} // // Conversion @@ -251,13 +255,13 @@ static bool DynOS_Tex_Cache(THN **aOutput, DataNode *aNode, s32 aTile, void DynOS_Tex_Valid(GfxData* aGfxData) { for (auto &_Texture : aGfxData->mTextures) { - sDynosValidTextures.insert(_Texture); + DynosValidTextures().insert(_Texture); } } void DynOS_Tex_Invalid(GfxData* aGfxData) { for (auto &_Texture : aGfxData->mTextures) { - sDynosValidTextures.erase(_Texture); + DynosValidTextures().erase(_Texture); } } @@ -266,7 +270,8 @@ void DynOS_Tex_Invalid(GfxData* aGfxData) { // static DataNode *DynOS_Tex_RetrieveNode(void *aPtr) { - if (sDynosValidTextures.find((DataNode*)aPtr) != sDynosValidTextures.end()) { + auto& _ValidTextures = DynosValidTextures(); + if (_ValidTextures.find((DataNode*)aPtr) != _ValidTextures.end()) { return (DataNode*)aPtr; } return NULL; diff --git a/data/dynos_opt.cpp b/data/dynos_opt.cpp index aee4e71a..2cdd880e 100644 --- a/data/dynos_opt.cpp +++ b/data/dynos_opt.cpp @@ -605,7 +605,7 @@ static u32 DynOS_Opt_GetHash(const String& aStr) { } static void DynOS_Opt_CreateModelPacksSubMenu() { - Array _Packs = DynOS_Gfx_Init(); + /*Array _Packs = DynOS_Gfx_Init(); if (_Packs.Count() == 0) { return; } @@ -615,7 +615,7 @@ static void DynOS_Opt_CreateModelPacksSubMenu() { DynOS_Opt_CreateToggle(String("dynos_pack_%d", i), String("dynos_pack_%08X", DynOS_Opt_GetHash(_Packs[i])), _Packs[i], false); } DynOS_Opt_CreateButton("dynos_packs_disable_all", "Disable all packs", "DynOS_Opt_DisableAllPacks"); - DynOS_Opt_EndSubMenu(); + DynOS_Opt_EndSubMenu();*/ } void DynOS_Opt_Init() { diff --git a/gmon.log b/gmon.log new file mode 100644 index 00000000..17650e01 --- /dev/null +++ b/gmon.log @@ -0,0 +1,3551 @@ +Flat profile: + +Each sample counts as 0.01 seconds. + % cumulative self self total + time seconds seconds calls us/call us/call name + 13.94 0.29 0.29 gfx_sp_tri1 + 12.02 0.54 0.25 gfx_sp_vertex + 7.21 0.69 0.15 aEnvMixerImpl + 5.29 0.80 0.11 geo_process_node_and_siblings + 5.29 0.91 0.11 gfx_run_dl + 3.85 0.99 0.08 body + 3.37 1.06 0.07 clear_spatial_partition + 3.37 1.13 0.07 aADPCMdecImpl + 2.16 1.18 0.05 clamp32 + 1.92 1.22 0.04 color_comb_component + 1.92 1.26 0.04 gfx_opengl_set_texture_uniforms + 1.68 1.29 0.04 clamp16 + 1.44 1.32 0.03 gfx_matrix_mul + 0.96 1.34 0.02 aResampleImpl + 0.96 1.36 0.02 djui_gfx_dp_execute_clipping + 0.96 1.38 0.02 find_floor_from_list + 0.96 1.40 0.02 geo_append_display_list2 + 0.96 1.42 0.02 gfx_adjust_x_for_aspect_ratio + 0.96 1.44 0.02 gfx_opengl_unload_shader + 0.96 1.46 0.02 gfx_sp_set_other_mode + 0.96 1.48 0.02 gfx_texture_cache_lookup + 0.96 1.50 0.02 interpolate_vectors + 0.96 1.52 0.02 mtxf_rotate_xyz_and_translate + 0.96 1.54 0.02 mtxf_to_mtx + 0.96 1.56 0.02 sequence_channel_process_sound + 0.48 1.57 0.01 832670 0.01 0.01 std::_Rb_tree_node*>::_M_valptr() const + 0.48 1.58 0.01 832670 0.01 0.01 std::less*>::operator()(DataNode*, DataNode*) const + 0.48 1.59 0.01 207938 0.05 0.05 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) + 0.48 1.60 0.01 686 14.58 14.58 DynOS_Warp_Update(void*, bool) + 0.48 1.61 0.01 aInterleaveImpl + 0.48 1.62 0.01 aMixImpl + 0.48 1.63 0.01 aSetBufferImpl + 0.48 1.64 0.01 absf + 0.48 1.65 0.01 adsr_update + 0.48 1.66 0.01 anim_process + 0.48 1.67 0.01 bhv_cannon_barrel_loop + 0.48 1.68 0.01 calculate_normal_dir + 0.48 1.69 0.01 clear_object_collision + 0.48 1.70 0.01 copy_mario_state_to_object + 0.48 1.71 0.01 cur_obj_compute_vel_xz + 0.48 1.72 0.01 cur_obj_move_using_vel_and_gravity + 0.48 1.73 0.01 cur_obj_resolve_wall_collisions + 0.48 1.74 0.01 djui_base_add_padding + 0.48 1.75 0.01 djui_base_render + 0.48 1.76 0.01 djui_font_normal_render_char + 0.48 1.77 0.01 djui_font_title_render_char + 0.48 1.78 0.01 djui_text_render + 0.48 1.79 0.01 djui_text_render_line_parse_escape + 0.48 1.80 0.01 find_surface_on_ray_list + 0.48 1.81 0.01 fish_spawner_act_respawn + 0.48 1.82 0.01 geo_get_mario_state + 0.48 1.83 0.01 gfx_dp_load_block + 0.48 1.84 0.01 gfx_normalize_vector + 0.48 1.85 0.01 gfx_opengl_shader_get_info + 0.48 1.86 0.01 gfx_sp_geometry_mode + 0.48 1.87 0.01 gfx_sp_movemem + 0.48 1.88 0.01 guMtxIdentF + 0.48 1.89 0.01 interpolate_angles + 0.48 1.90 0.01 is_player_active + 0.48 1.91 0.01 make_vertex + 0.48 1.92 0.01 movtex_make_quad_vertex + 0.48 1.93 0.01 mtxf_copy + 0.48 1.94 0.01 mtxf_mul + 0.48 1.95 0.01 mtxf_scale_vec3f + 0.48 1.96 0.01 nearest_mario_state_to_object + 0.48 1.97 0.01 osEepromLongWrite + 0.48 1.98 0.01 play_sound_if_cam_switched_to_lakitu_or_mario + 0.48 1.99 0.01 process_notes + 0.48 2.00 0.01 ray_surface_intersect + 0.48 2.01 0.01 round_float + 0.48 2.02 0.01 sequence_player_process_sequence + 0.48 2.03 0.01 sequence_player_process_sound + 0.48 2.04 0.01 update_objects_in_list + 0.48 2.05 0.01 vec3f_copy + 0.48 2.06 0.01 vec3s_copy + 0.24 2.07 0.01 get_quad_collection_from_id + 0.24 2.07 0.01 movtex_gen_quads_id + 0.24 2.08 0.01 vec3f_length + 0.24 2.08 0.01 vec3f_normalize + 0.00 2.08 0.00 832748 0.00 0.00 std::_Identity*>::operator()(DataNode* const&) const + 0.00 2.08 0.00 832670 0.00 0.00 __gnu_cxx::__aligned_membuf*>::_M_ptr() const + 0.00 2.08 0.00 832670 0.00 0.00 __gnu_cxx::__aligned_membuf*>::_M_addr() const + 0.00 2.08 0.00 832670 0.00 0.01 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) + 0.00 2.08 0.00 623827 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) + 0.00 2.08 0.00 623180 0.00 0.00 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) + 0.00 2.08 0.00 415074 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() + 0.00 2.08 0.00 208077 0.00 0.00 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) + 0.00 2.08 0.00 208042 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() + 0.00 2.08 0.00 208013 0.00 0.01 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) + 0.00 2.08 0.00 208007 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() + 0.00 2.08 0.00 207988 0.00 0.00 std::operator!=(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) + 0.00 2.08 0.00 207963 0.00 0.07 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) + 0.00 2.08 0.00 207945 0.00 0.00 std::operator==(std::_Rb_tree_iterator*> const&, std::_Rb_tree_iterator*> const&) + 0.00 2.08 0.00 207938 0.00 0.14 DynOS_Tex_Import(void**, void*, int, void*, void**, void*, unsigned int*, unsigned int) + 0.00 2.08 0.00 207938 0.00 0.14 DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) + 0.00 2.08 0.00 207938 0.00 0.14 DynOS_Tex_RetrieveNode(void*) + 0.00 2.08 0.00 207938 0.00 0.05 std::set*, std::less*>, std::allocator*> >::end() const + 0.00 2.08 0.00 207938 0.00 0.05 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() const + 0.00 2.08 0.00 207938 0.00 0.10 std::set*, std::less*>, std::allocator*> >::find(DataNode* const&) + 0.00 2.08 0.00 207938 0.00 0.10 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) + 0.00 2.08 0.00 207938 0.00 0.14 dynos_tex_import + 0.00 2.08 0.00 143128 0.00 0.00 String::operator==(String const&) const + 0.00 2.08 0.00 42560 0.00 0.00 DynOS_Anim_Swap(void*) + 0.00 2.08 0.00 42560 0.00 0.00 dynos_gfx_swap_animations + 0.00 2.08 0.00 22902 0.00 0.00 short ReadBytes(_IO_FILE*) + 0.00 2.08 0.00 17755 0.00 0.00 operator new(unsigned long, void*) + 0.00 2.08 0.00 15720 0.00 0.00 unsigned int ReadBytes(_IO_FILE*) + 0.00 2.08 0.00 11451 0.00 0.00 signed char ReadBytes(_IO_FILE*) + 0.00 2.08 0.00 8775 0.00 0.00 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) + 0.00 2.08 0.00 4905 0.00 0.00 DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}::operator()(std::pair const&) const + 0.00 2.08 0.00 4478 0.00 0.00 unsigned char ReadBytes(_IO_FILE*) + 0.00 2.08 0.00 2959 0.00 0.00 String::Add(char) + 0.00 2.08 0.00 2318 0.00 0.00 String::String() + 0.00 2.08 0.00 2287 0.00 0.00 String::Read(_IO_FILE*) + 0.00 2.08 0.00 1857 0.00 0.00 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) + 0.00 2.08 0.00 1632 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 1632 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 1629 0.00 0.00 GetPointerFromData(GfxData*, String const&, unsigned int) + 0.00 2.08 0.00 1497 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 1497 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 1488 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 1488 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 1488 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 1488 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 1391 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() const + 0.00 2.08 0.00 1358 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 1358 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 1358 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 1358 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 995 0.00 0.00 DynOS_Actor_Override(void**) + 0.00 2.08 0.00 937 0.00 0.00 std::operator==(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) + 0.00 2.08 0.00 823 0.00 0.00 DynOS_Tex_Cache(THN**, DataNode*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) + 0.00 2.08 0.00 799 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) + 0.00 2.08 0.00 720 0.00 0.00 NoCopy::NoCopy() + 0.00 2.08 0.00 692 0.00 0.00 Array::Array() + 0.00 2.08 0.00 686 0.00 0.00 DynOS_SwapCmd(void*) + 0.00 2.08 0.00 686 0.00 14.58 DynOS_UpdateCmd(void*) + 0.00 2.08 0.00 686 0.00 0.00 DynOS_Lvl_Override(void*) + 0.00 2.08 0.00 686 0.00 0.00 Array::end() + 0.00 2.08 0.00 686 0.00 0.00 Array::begin() + 0.00 2.08 0.00 686 0.00 0.00 dynos_swap_cmd + 0.00 2.08 0.00 686 0.00 14.58 dynos_update_cmd + 0.00 2.08 0.00 588 0.00 0.00 String::operator==(char const*) const + 0.00 2.08 0.00 471 0.00 0.00 dynos_actor_override + 0.00 2.08 0.00 466 0.00 0.00 std::map, std::allocator > >::count(void const* const&) const + 0.00 2.08 0.00 466 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const + 0.00 2.08 0.00 466 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const + 0.00 2.08 0.00 466 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() const + 0.00 2.08 0.00 466 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() const + 0.00 2.08 0.00 453 0.00 0.00 DynOS_Opt_Loop(DynosOption*, bool (*)(DynosOption*, void*), void*) + 0.00 2.08 0.00 453 0.00 0.00 DynOS_UpdateGfx() + 0.00 2.08 0.00 453 0.00 0.00 DynOS_UpdateOpt(void*) + 0.00 2.08 0.00 453 0.00 0.00 DynOS_Gfx_Update() + 0.00 2.08 0.00 453 0.00 0.00 DynOS_Opt_Update(OSContPad*) + 0.00 2.08 0.00 453 0.00 0.00 dynos_update_gfx + 0.00 2.08 0.00 453 0.00 0.00 dynos_update_opt + 0.00 2.08 0.00 450 0.00 0.00 DynOS_Geo_GetGraphNode(void const*, bool) + 0.00 2.08 0.00 444 0.00 0.00 int Array >::FindIf const&)#1}>(DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}) const + 0.00 2.08 0.00 425 0.00 0.00 Array >::operator[](int) + 0.00 2.08 0.00 405 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 399 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 382 0.00 0.00 std::less::operator()(void const*, void const*) const + 0.00 2.08 0.00 373 0.00 0.00 __gnu_cxx::__aligned_membuf >::_M_ptr() const + 0.00 2.08 0.00 373 0.00 0.00 __gnu_cxx::__aligned_membuf >::_M_addr() const + 0.00 2.08 0.00 373 0.00 0.00 std::_Select1st >::operator()(std::pair const&) const + 0.00 2.08 0.00 373 0.00 0.00 std::_Rb_tree_node >::_M_valptr() const + 0.00 2.08 0.00 373 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) + 0.00 2.08 0.00 331 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base const*) + 0.00 2.08 0.00 308 0.00 0.00 String::Length() const + 0.00 2.08 0.00 302 0.00 0.00 DynOS_Gfx_Load(_IO_FILE*, GfxData*) + 0.00 2.08 0.00 302 0.00 0.00 Gfx* New(unsigned long long) + 0.00 2.08 0.00 302 0.00 0.00 DataNode* New >(unsigned long long) + 0.00 2.08 0.00 302 0.00 0.00 Array*>::Add(DataNode* const&) + 0.00 2.08 0.00 302 0.00 0.00 Array*>::Resize(int) + 0.00 2.08 0.00 302 0.00 0.00 DataNode::DataNode() + 0.00 2.08 0.00 289 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 289 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 287 0.00 0.00 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) + 0.00 2.08 0.00 252 0.00 0.00 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) + 0.00 2.08 0.00 223 0.00 0.00 DynOS_Builtin_Func_GetFromIndex(int) + 0.00 2.08 0.00 223 0.00 0.00 int ReadBytes(_IO_FILE*) + 0.00 2.08 0.00 216 0.00 0.00 DynOS_Vtx_Load(_IO_FILE*, GfxData*) + 0.00 2.08 0.00 216 0.00 0.00 Vtx* New(unsigned long long) + 0.00 2.08 0.00 216 0.00 0.00 DataNode* New >(unsigned long long) + 0.00 2.08 0.00 216 0.00 0.00 Array*>::Add(DataNode* const&) + 0.00 2.08 0.00 216 0.00 0.00 Array*>::Resize(int) + 0.00 2.08 0.00 216 0.00 0.00 DataNode::DataNode() + 0.00 2.08 0.00 173 0.00 0.00 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) + 0.00 2.08 0.00 144 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() + 0.00 2.08 0.00 140 0.00 0.00 String::Clear() + 0.00 2.08 0.00 98 0.00 0.00 DynOS_Geo_Load(_IO_FILE*, GfxData*) + 0.00 2.08 0.00 98 0.00 0.00 DataNode* New >(unsigned long long) + 0.00 2.08 0.00 98 0.00 0.00 unsigned long* New(unsigned long long) + 0.00 2.08 0.00 98 0.00 0.00 Array*>::Add(DataNode* const&) + 0.00 2.08 0.00 98 0.00 0.00 Array*>::Resize(int) + 0.00 2.08 0.00 98 0.00 0.00 DataNode::DataNode() + 0.00 2.08 0.00 93 0.00 0.00 std::_Rb_tree_iterator*>&& std::forward*> >(std::remove_reference*> >::type&) + 0.00 2.08 0.00 90 0.00 0.00 String::operator=(String const&) + 0.00 2.08 0.00 82 0.00 0.00 Array::Resize(int) + 0.00 2.08 0.00 72 0.00 0.00 __gnu_cxx::__aligned_membuf*>::_M_ptr() + 0.00 2.08 0.00 72 0.00 0.00 __gnu_cxx::__aligned_membuf*>::_M_addr() + 0.00 2.08 0.00 72 0.00 0.00 std::_Rb_tree_node*>::_M_valptr() + 0.00 2.08 0.00 71 0.00 0.00 String::String(char const*) + 0.00 2.08 0.00 58 0.00 0.00 Array::Array() + 0.00 2.08 0.00 57 0.00 0.00 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) + 0.00 2.08 0.00 56 0.00 0.00 DataNode* New >(unsigned long long) + 0.00 2.08 0.00 56 0.00 0.00 Array*>::Add(DataNode* const&) + 0.00 2.08 0.00 56 0.00 0.00 Array*>::Resize(int) + 0.00 2.08 0.00 56 0.00 0.00 DataNode::DataNode() + 0.00 2.08 0.00 50 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::size() const + 0.00 2.08 0.00 48 0.00 0.00 std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 46 0.00 0.00 std::operator==(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) + 0.00 2.08 0.00 43 0.00 0.15 std::set*, std::less*>, std::allocator*> >::insert(DataNode* const&) + 0.00 2.08 0.00 43 0.00 0.00 std::pair*>, bool>::pair*>, bool, true>(std::_Rb_tree_iterator*>&&, bool&&) + 0.00 2.08 0.00 43 0.00 0.00 std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) + 0.00 2.08 0.00 43 0.00 0.15 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) + 0.00 2.08 0.00 43 0.00 0.13 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) + 0.00 2.08 0.00 43 0.00 0.00 std::_Rb_tree_iterator*>& std::forward*>&>(std::remove_reference*>&>::type&) + 0.00 2.08 0.00 43 0.00 0.00 bool& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 43 0.00 0.00 bool&& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 40 0.00 0.00 Array::Count() const + 0.00 2.08 0.00 39 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 39 0.00 0.00 Array::Array() + 0.00 2.08 0.00 39 0.00 0.00 Array::~Array() + 0.00 2.08 0.00 38 0.00 0.00 void*&& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 37 0.00 0.00 __gnu_cxx::__aligned_membuf >::_M_ptr() + 0.00 2.08 0.00 37 0.00 0.00 __gnu_cxx::__aligned_membuf >::_M_addr() + 0.00 2.08 0.00 37 0.00 0.00 std::_Rb_tree_node >::_M_valptr() + 0.00 2.08 0.00 36 0.00 0.00 __gnu_cxx::new_allocator*> >::deallocate(std::_Rb_tree_node*>*, unsigned long) + 0.00 2.08 0.00 36 0.00 0.00 void __gnu_cxx::new_allocator*> >::destroy*>(DataNode**) + 0.00 2.08 0.00 36 0.00 0.00 __gnu_cxx::new_allocator*> >::allocate(unsigned long, void const*) + 0.00 2.08 0.00 36 0.00 0.00 void __gnu_cxx::new_allocator*> >::construct*, DataNode* const&>(DataNode**, DataNode* const&) + 0.00 2.08 0.00 36 0.00 0.00 __gnu_cxx::new_allocator*> >::max_size() const + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::operator()* const&>(DataNode* const&) const + 0.00 2.08 0.00 36 0.00 0.00 std::allocator_traits*> > >::deallocate(std::allocator*> >&, std::_Rb_tree_node*>*, unsigned long) + 0.00 2.08 0.00 36 0.00 0.00 void std::allocator_traits*> > >::destroy*>(std::allocator*> >&, DataNode**) + 0.00 2.08 0.00 36 0.00 0.00 std::allocator_traits*> > >::allocate(std::allocator*> >&, unsigned long) + 0.00 2.08 0.00 36 0.00 0.00 void std::allocator_traits*> > >::construct*, DataNode* const&>(std::allocator*> >&, DataNode**, DataNode* const&) + 0.00 2.08 0.00 36 0.00 0.00 std::pair::pair*>*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node*>*&, std::_Rb_tree_node_base*&) + 0.00 2.08 0.00 36 0.00 0.02 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::_Alloc_node(std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >&) + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_node() + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_put_node(std::_Rb_tree_node*>*) + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) + 0.00 2.08 0.00 36 0.00 0.00 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) + 0.00 2.08 0.00 36 0.00 0.00 std::_Rb_tree_node*>*& std::forward*>*&>(std::remove_reference*>*&>::type&) + 0.00 2.08 0.00 34 0.00 0.00 Array::operator[](int) + 0.00 2.08 0.00 32 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::begin() + 0.00 2.08 0.00 31 0.00 0.00 DynOS_Pack_GetFromIndex(int) + 0.00 2.08 0.00 31 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 31 0.00 0.00 Array::~Array() + 0.00 2.08 0.00 31 0.00 0.00 Array::begin() + 0.00 2.08 0.00 31 0.00 0.00 NoCopy::~NoCopy() + 0.00 2.08 0.00 29 0.00 0.00 std::_Rb_tree_iterator >::operator*() const + 0.00 2.08 0.00 29 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() + 0.00 2.08 0.00 28 0.00 0.00 void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) + 0.00 2.08 0.00 28 0.00 0.00 DynOS_Tex_Load(_IO_FILE*, GfxData*) + 0.00 2.08 0.00 28 0.00 0.00 TexData* New(unsigned long long) + 0.00 2.08 0.00 28 0.00 0.00 void Delete(TexData*&) + 0.00 2.08 0.00 28 0.00 0.00 void Delete >(DataNode*&) + 0.00 2.08 0.00 28 0.00 0.00 Array::Add(String const&) + 0.00 2.08 0.00 28 0.00 0.00 Array::Resize(int) + 0.00 2.08 0.00 28 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 28 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 28 0.00 0.00 Array::Read(_IO_FILE*) + 0.00 2.08 0.00 28 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 28 0.00 0.00 Array::~Array() + 0.00 2.08 0.00 28 0.00 0.00 Array::operator=(Array const&) + 0.00 2.08 0.00 28 0.00 0.00 TexData::TexData() + 0.00 2.08 0.00 28 0.00 0.00 DataNode::~DataNode() + 0.00 2.08 0.00 28 0.00 0.00 Array::Empty() const + 0.00 2.08 0.00 26 0.00 0.00 Array::Array(unsigned char const*, unsigned char const*) + 0.00 2.08 0.00 26 0.00 0.00 Array::Count() const + 0.00 2.08 0.00 25 0.00 0.00 _RelocateGraphNodePointers(GraphNode*, unsigned long long) + 0.00 2.08 0.00 25 0.00 0.00 std::_Rb_tree_const_iterator*>::operator++(int) + 0.00 2.08 0.00 25 0.00 0.24 std::set*, std::less*>, std::allocator*> >::erase(DataNode* const&) + 0.00 2.08 0.00 25 0.00 0.00 std::pair*>, std::_Rb_tree_iterator*> >::pair*>, std::_Rb_tree_iterator*>, true>(std::_Rb_tree_iterator*>&&, std::_Rb_tree_iterator*>&&) + 0.00 2.08 0.00 25 0.00 0.24 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) + 0.00 2.08 0.00 25 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>) + 0.00 2.08 0.00 25 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) + 0.00 2.08 0.00 25 0.00 0.01 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) + 0.00 2.08 0.00 25 0.00 0.24 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) + 0.00 2.08 0.00 25 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() + 0.00 2.08 0.00 24 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 24 0.00 0.00 String::begin() const + 0.00 2.08 0.00 20 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base*) + 0.00 2.08 0.00 20 0.00 0.00 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 20 0.00 0.00 std::tuple<>&& std::forward >(std::remove_reference >::type&) + 0.00 2.08 0.00 20 0.00 0.00 std::tuple&& std::forward >(std::remove_reference >::type&) + 0.00 2.08 0.00 19 0.00 0.00 Array >::Add(std::pair const&) + 0.00 2.08 0.00 19 0.00 0.00 Array >::Resize(int) + 0.00 2.08 0.00 19 0.00 0.00 std::pair::pair(void*&&, void*&&) + 0.00 2.08 0.00 19 0.00 0.00 std::pair::operator=(std::pair const&) + 0.00 2.08 0.00 19 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) + 0.00 2.08 0.00 19 0.00 0.00 std::operator==(std::_Rb_tree_iterator > const&, std::_Rb_tree_iterator > const&) + 0.00 2.08 0.00 18 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 18 0.00 0.00 String::begin() + 0.00 2.08 0.00 18 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() + 0.00 2.08 0.00 16 0.00 0.00 std::map, std::allocator > >::lower_bound(void const* const&) + 0.00 2.08 0.00 16 0.00 0.00 std::map, std::allocator > >::end() + 0.00 2.08 0.00 16 0.00 0.00 std::map, std::allocator > >::operator[](void const* const&) + 0.00 2.08 0.00 16 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) + 0.00 2.08 0.00 16 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() + 0.00 2.08 0.00 15 0.00 0.00 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_iterator > const&) + 0.00 2.08 0.00 15 0.00 0.00 dynos_pack_get_name + 0.00 2.08 0.00 14 0.00 0.00 DynOS_Lights_Load(_IO_FILE*, GfxData*) + 0.00 2.08 0.00 14 0.00 0.00 DynOS_Builtin_Actor_GetFromName(char const*) + 0.00 2.08 0.00 14 0.00 0.00 Lights1* New(unsigned long long) + 0.00 2.08 0.00 14 0.00 0.00 DataNode* New >(unsigned long long) + 0.00 2.08 0.00 14 0.00 0.00 Lights1 ReadBytes(_IO_FILE*) + 0.00 2.08 0.00 14 0.00 0.00 Array*>::Add(DataNode* const&) + 0.00 2.08 0.00 14 0.00 0.00 Array*>::Resize(int) + 0.00 2.08 0.00 14 0.00 0.00 DataNode::DataNode() + 0.00 2.08 0.00 13 0.00 0.00 Array >::end() + 0.00 2.08 0.00 13 0.00 0.00 Array >::begin() + 0.00 2.08 0.00 13 0.00 0.00 std::map, std::allocator > >::key_comp() const + 0.00 2.08 0.00 13 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::key_comp() const + 0.00 2.08 0.00 12 0.00 0.00 void Print(char const*, char const*) + 0.00 2.08 0.00 12 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 12 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 12 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 12 0.00 0.00 Array::Array() + 0.00 2.08 0.00 10 0.00 0.92 DynOS_Pack_SetEnabled(PackData*, bool) + 0.00 2.08 0.00 10 0.00 0.00 DynOS_Actor_Override_All() + 0.00 2.08 0.00 9 0.00 0.00 DynOS_Read_Buffer(_IO_FILE*, GfxData*) + 0.00 2.08 0.00 9 0.00 0.00 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 9 0.00 0.00 DynOS_Actor_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 9 0.00 0.00 char* New(unsigned long long) + 0.00 2.08 0.00 9 0.00 0.00 void Delete(char*&) + 0.00 2.08 0.00 9 0.00 0.00 GetNearestIfDefPointer(char*) + 0.00 2.08 0.00 9 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 9 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::size() const + 0.00 2.08 0.00 9 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base*) + 0.00 2.08 0.00 9 0.00 0.00 __gnu_cxx::__enable_if::__value, bool>::__type std::operator==(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 9 0.00 0.00 dynos_pack_get_enabled + 0.00 2.08 0.00 8 0.00 0.00 std::initializer_list::begin() const + 0.00 2.08 0.00 8 0.00 0.00 std::_Head_base<0ul, void const* const&, false>::_M_head(std::_Head_base<0ul, void const* const&, false>&) + 0.00 2.08 0.00 8 0.00 0.00 std::_Head_base<0ul, void const* const&, false>::_Head_base(void const* const&) + 0.00 2.08 0.00 8 0.00 0.00 std::_Tuple_impl<0ul, void const* const&>::_M_head(std::_Tuple_impl<0ul, void const* const&>&) + 0.00 2.08 0.00 8 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node_base const*) + 0.00 2.08 0.00 8 0.00 0.00 void const* const& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 7 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 7 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 7 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 7 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 7 0.00 0.00 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base* const&) + 0.00 2.08 0.00 7 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base const*) + 0.00 2.08 0.00 7 0.00 0.92 dynos_pack_set_enabled + 0.00 2.08 0.00 6 0.00 1.04 DynOS_Tex_Valid(GfxData*) + 0.00 2.08 0.00 6 0.00 1.04 DynOS_Actor_Valid(void const*, ActorGfx&) + 0.00 2.08 0.00 6 0.00 0.00 DynOS_Pack_GetCount() + 0.00 2.08 0.00 6 0.00 0.00 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 6 0.00 0.00 GfxData* New(unsigned long long) + 0.00 2.08 0.00 6 0.00 1.04 DynOS_Pack_ActivateActor(int, std::pair&) + 0.00 2.08 0.00 6 0.00 0.00 GfxContext::GfxContext() + 0.00 2.08 0.00 6 0.00 0.00 Array::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array::end() + 0.00 2.08 0.00 6 0.00 0.00 Array::begin() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array >*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array >*>::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 6 0.00 0.00 Array::~Array() + 0.00 2.08 0.00 6 0.00 0.00 Array >::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array >::Resize(int) + 0.00 2.08 0.00 6 0.00 0.00 Array >::Array() + 0.00 2.08 0.00 6 0.00 0.00 Array >::Clear() + 0.00 2.08 0.00 6 0.00 0.00 Array >::~Array() + 0.00 2.08 0.00 6 0.00 0.00 GfxData::GfxData() + 0.00 2.08 0.00 6 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::begin() + 0.00 2.08 0.00 6 0.00 0.00 std::_Rb_tree_iterator >&& std::forward > >(std::remove_reference > >::type&) + 0.00 2.08 0.00 6 0.00 0.00 dynos_pack_get_count + 0.00 2.08 0.00 5 0.00 0.00 DynOS_Tex_Upload(DataNode*, GfxRenderingAPI*, int, int) + 0.00 2.08 0.00 4 0.00 1.51 DynOS_Actor_Invalid(void const*, int) + 0.00 2.08 0.00 4 0.00 0.00 DynOS_Builtin_Tex_GetFromName(char const*) + 0.00 2.08 0.00 4 0.00 0.00 DynOS_Builtin_LvlCol_GetFromName(char const*) + 0.00 2.08 0.00 4 0.00 0.00 DynOS_Builtin_LvlGeo_GetFromName(char const*) + 0.00 2.08 0.00 4 0.00 0.00 DynOS_Builtin_ScriptPtr_GetFromName(char const*) + 0.00 2.08 0.00 4 0.00 1.51 DynOS_Pack_DeactivateActor(int, std::pair&) + 0.00 2.08 0.00 4 0.00 0.00 Array >::Clear() + 0.00 2.08 0.00 4 0.00 0.00 Array >::Array() + 0.00 2.08 0.00 4 0.00 0.00 ActorGfx::ActorGfx() + 0.00 2.08 0.00 4 0.00 0.00 __gnu_cxx::new_allocator > >::deallocate(std::_Rb_tree_node >*, unsigned long) + 0.00 2.08 0.00 4 0.00 0.00 void __gnu_cxx::new_allocator > >::destroy >(std::pair*) + 0.00 2.08 0.00 4 0.00 0.00 __gnu_cxx::new_allocator > >::allocate(unsigned long, void const*) + 0.00 2.08 0.00 4 0.00 0.00 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + 0.00 2.08 0.00 4 0.00 0.00 __gnu_cxx::new_allocator > >::max_size() const + 0.00 2.08 0.00 4 0.00 0.00 std::initializer_list::end() const + 0.00 2.08 0.00 4 0.00 0.00 std::initializer_list::size() const + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree_const_iterator >::_M_const_cast() const + 0.00 2.08 0.00 4 0.00 0.00 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(void const* const&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree_header::_M_reset() + 0.00 2.08 0.00 4 0.00 0.00 std::allocator_traits > > >::deallocate(std::allocator > >&, std::_Rb_tree_node >*, unsigned long) + 0.00 2.08 0.00 4 0.00 0.00 void std::allocator_traits > > >::destroy >(std::allocator > >&, std::pair*) + 0.00 2.08 0.00 4 0.00 0.00 std::allocator_traits > > >::allocate(std::allocator > >&, unsigned long) + 0.00 2.08 0.00 4 0.00 0.00 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree_iterator*>::operator--() + 0.00 2.08 0.00 4 0.00 0.00 std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) + 0.00 2.08 0.00 4 0.00 0.00 std::pair::pair(std::piecewise_construct_t, std::tuple, std::tuple<>) + 0.00 2.08 0.00 4 0.00 0.00 std::tuple::tuple(std::tuple&&) + 0.00 2.08 0.00 4 0.00 0.00 std::tuple::tuple(void const* const&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_node() + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node >*) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) + 0.00 2.08 0.00 4 0.00 0.00 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + 0.00 2.08 0.00 4 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) + 0.00 2.08 0.00 4 0.00 0.00 void const* const& std::__get_helper<0ul, void const* const&>(std::_Tuple_impl<0ul, void const* const&>&) + 0.00 2.08 0.00 4 0.00 0.00 std::tuple_element<0ul, std::tuple >::type& std::get<0ul, void const* const&>(std::tuple&) + 0.00 2.08 0.00 3 0.00 0.00 DynOS_Gfx_Free(GfxData*) + 0.00 2.08 0.00 3 0.00 0.92 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 3 0.00 2.01 DynOS_Tex_Invalid(GfxData*) + 0.00 2.08 0.00 3 0.00 1.04 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) + 0.00 2.08 0.00 3 0.00 0.00 DynOS_Pack_GetActor(PackData*, char const*) + 0.00 2.08 0.00 3 0.00 0.00 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 3 0.00 1.04 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) + 0.00 2.08 0.00 3 0.00 0.00 void Delete(GfxData*&) + 0.00 2.08 0.00 3 0.00 0.00 std::__cxx11::basic_string, std::allocator > fstring<__gnu_cxx::__normal_iterator, std::allocator > >, char*>(char const*, __gnu_cxx::__normal_iterator, std::allocator > >, char*) + 0.00 2.08 0.00 3 0.00 1.04 ScanPackBins(std::__cxx11::basic_string, std::allocator >) + 0.00 2.08 0.00 3 0.00 0.00 DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) + 0.00 2.08 0.00 3 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array::Add(PackData const&) + 0.00 2.08 0.00 3 0.00 0.00 Array::Resize(int) + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::end() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::begin() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array >*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array >*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array >*>::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array >*>::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array >::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array >::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array >::Add(std::pair const&) + 0.00 2.08 0.00 3 0.00 0.00 Array >::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array >::operator=(Array > const&) + 0.00 2.08 0.00 3 0.00 0.00 Array >::operator[](int) + 0.00 2.08 0.00 3 0.00 0.00 Array >::Clear() + 0.00 2.08 0.00 3 0.00 0.00 Array >::~Array() + 0.00 2.08 0.00 3 0.00 0.00 Array >::Resize(int) + 0.00 2.08 0.00 3 0.00 0.00 Array >::Array(Array > const&) + 0.00 2.08 0.00 3 0.00 0.00 Array >::Array() + 0.00 2.08 0.00 3 0.00 0.00 String::operator[](int) + 0.00 2.08 0.00 3 0.00 0.00 GfxData::~GfxData() + 0.00 2.08 0.00 3 0.00 0.00 PackData::~PackData() + 0.00 2.08 0.00 3 0.00 0.00 PackData::operator=(PackData const&) + 0.00 2.08 0.00 3 0.00 0.00 Array >::Count() const + 0.00 2.08 0.00 3 0.00 0.00 std::char_traits::compare(char const*, char const*, unsigned long) + 0.00 2.08 0.00 3 0.00 0.00 std::map, std::allocator > >::erase(void const* const&) + 0.00 2.08 0.00 3 0.00 0.00 std::pair::pair(char const*&, GfxData*&) + 0.00 2.08 0.00 3 0.00 0.00 std::pair::operator=(std::pair const&) + 0.00 2.08 0.00 3 0.00 0.00 std::pair::pair >*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node >*&, std::_Rb_tree_node_base*&) + 0.00 2.08 0.00 3 0.00 0.00 std::pair >, std::_Rb_tree_iterator > >::pair >, std::_Rb_tree_iterator >, true>(std::_Rb_tree_iterator >&&, std::_Rb_tree_iterator >&&) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_leftmost() + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_upper_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) + 0.00 2.08 0.00 3 0.00 0.00 GfxData*& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 3 0.00 0.00 char const*& std::forward(std::remove_reference::type&) + 0.00 2.08 0.00 3 0.00 0.00 std::_Rb_tree_node >*& std::forward >*&>(std::remove_reference >*&>::type&) + 0.00 2.08 0.00 2 0.00 0.00 DynOS_Gfx_GeneratePacks(char const*) + 0.00 2.08 0.00 2 0.00 0.00 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char const*) + 0.00 2.08 0.00 2 0.00 2.94 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) + 0.00 2.08 0.00 2 0.00 0.00 std::_Rb_tree_header::_Rb_tree_header() + 0.00 2.08 0.00 2 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() + 0.00 2.08 0.00 2 0.00 0.00 std::operator!=(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) + 0.00 2.08 0.00 2 0.00 0.00 dynos_generate_packs + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z18DynOS_Col_ActivateRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z18DynOS_Lvl_GetArrayv + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z19DynOS_Pack_GetCountv + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z20DynOS_Level_GetCountv + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z20DynOS_String_ConvertPKcb + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z21DynOS_Actor_AddCustomRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z23DynOS_MovtexQC_RegisterPKcsss + 0.00 2.08 0.00 1 0.00 0.00 _GLOBAL__sub_I__Z25DynOS_Tex_ConvertToRGBA32PKhyiiS0_ + 0.00 2.08 0.00 1 0.00 5.88 DynOS_Init() + 0.00 2.08 0.00 1 0.00 5.88 DynOS_Gfx_Init() + 0.00 2.08 0.00 1 0.00 5.88 DynOS_Opt_Init() + 0.00 2.08 0.00 1 0.00 0.00 DynOS_Warp_SetParam(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 __static_initialization_and_destruction_0(int, int) + 0.00 2.08 0.00 1 0.00 0.00 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*) + 0.00 2.08 0.00 1 0.00 0.00 DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) + 0.00 2.08 0.00 1 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array::Array() + 0.00 2.08 0.00 1 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array::Array() + 0.00 2.08 0.00 1 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array::Array() + 0.00 2.08 0.00 1 0.00 0.00 Array*> >::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array*> >::Array() + 0.00 2.08 0.00 1 0.00 0.00 Array >::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array >::Array() + 0.00 2.08 0.00 1 0.00 0.00 Array >::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array >::Array() + 0.00 2.08 0.00 1 0.00 0.00 Array::Clear() + 0.00 2.08 0.00 1 0.00 0.00 Array::Array() + 0.00 2.08 0.00 1 0.00 0.00 __gnu_cxx::new_allocator*> >::new_allocator() + 0.00 2.08 0.00 1 0.00 0.00 __gnu_cxx::new_allocator*> >::~new_allocator() + 0.00 2.08 0.00 1 0.00 0.00 __gnu_cxx::new_allocator > >::new_allocator() + 0.00 2.08 0.00 1 0.00 0.00 __gnu_cxx::new_allocator > >::~new_allocator() + 0.00 2.08 0.00 1 0.00 0.00 std::allocator*> >::allocator() + 0.00 2.08 0.00 1 0.00 0.00 std::allocator*> >::~allocator() + 0.00 2.08 0.00 1 0.00 0.00 std::allocator > >::allocator() + 0.00 2.08 0.00 1 0.00 0.00 std::allocator > >::~allocator() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree_key_compare*> >::_Rb_tree_key_compare() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree_key_compare >::_Rb_tree_key_compare() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree_const_iterator >::operator++(int) + 0.00 2.08 0.00 1 0.00 0.00 std::map, std::allocator > >::map() + 0.00 2.08 0.00 1 0.00 0.00 std::set*, std::less*>, std::allocator*> >::set() + 0.00 2.08 0.00 1 0.00 0.00 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base*&) + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::~_Rb_tree_impl() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::~_Rb_tree() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >) + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::~_Rb_tree_impl() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree() + 0.00 2.08 0.00 1 0.00 0.00 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::~_Rb_tree() + + % the percentage of the total running time of the +time program used by this function. + +cumulative a running sum of the number of seconds accounted + seconds for by this function and those listed above it. + + self the number of seconds accounted for by this +seconds function alone. This is the major sort for this + listing. + +calls the number of times this function was invoked, if + this function is profiled, else blank. + + self the average number of milliseconds spent in this +ms/call function per call, if this function is profiled, + else blank. + + total the average number of milliseconds spent in this +ms/call function and its descendents per call, if this + function is profiled, else blank. + +name the name of the function. This is the minor sort + for this listing. The index shows the location of + the function in the gprof listing. If the index is + in parenthesis it shows where it would appear in + the gprof listing if it were to be printed. + +Copyright (C) 2012-2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + + Call graph (explanation follows) + + +granularity: each sample hit covers 2 byte(s) for 0.48% of 2.08 seconds + +index % time self children called name + +[1] 13.9 0.29 0.00 gfx_sp_tri1 [1] +----------------------------------------------- + +[2] 12.0 0.25 0.00 gfx_sp_vertex [2] +----------------------------------------------- + +[3] 7.2 0.15 0.00 aEnvMixerImpl [3] +----------------------------------------------- + +[4] 5.3 0.11 0.00 geo_process_node_and_siblings [4] +----------------------------------------------- + +[5] 5.3 0.11 0.00 gfx_run_dl [5] +----------------------------------------------- + +[6] 3.8 0.08 0.00 body [6] +----------------------------------------------- + +[7] 3.4 0.07 0.00 clear_spatial_partition [7] +----------------------------------------------- + +[8] 3.4 0.07 0.00 aADPCMdecImpl [8] +----------------------------------------------- + +[9] 2.2 0.05 0.00 clamp32 [9] +----------------------------------------------- + +[10] 1.9 0.04 0.00 color_comb_component [10] +----------------------------------------------- + +[11] 1.9 0.04 0.00 gfx_opengl_set_texture_uniforms [11] +----------------------------------------------- + +[12] 1.7 0.04 0.00 clamp16 [12] +----------------------------------------------- + +[13] 1.4 0.03 0.00 gfx_matrix_mul [13] +----------------------------------------------- + 0.00 0.03 207938/207938 import_texture [15] +[14] 1.4 0.00 0.03 207938 dynos_tex_import [14] + 0.00 0.03 207938/207938 DynOS_Tex_Import(void**, void*, int, void*, void**, void*, unsigned int*, unsigned int) [16] +----------------------------------------------- + +[15] 1.4 0.00 0.03 import_texture [15] + 0.00 0.03 207938/207938 dynos_tex_import [14] +----------------------------------------------- + 0.00 0.03 207938/207938 dynos_tex_import [14] +[16] 1.4 0.00 0.03 207938 DynOS_Tex_Import(void**, void*, int, void*, void**, void*, unsigned int*, unsigned int) [16] + 0.00 0.03 207938/207938 DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [17] +----------------------------------------------- + 0.00 0.03 207938/207938 DynOS_Tex_Import(void**, void*, int, void*, void**, void*, unsigned int*, unsigned int) [16] +[17] 1.4 0.00 0.03 207938 DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [17] + 0.00 0.03 207938/207938 DynOS_Tex_RetrieveNode(void*) [18] + 0.00 0.00 823/823 DynOS_Tex_Cache(THN**, DataNode*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [7960] + 0.00 0.00 5/5 DynOS_Tex_Upload(DataNode*, GfxRenderingAPI*, int, int) [8190] +----------------------------------------------- + 0.00 0.03 207938/207938 DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [17] +[18] 1.4 0.00 0.03 207938 DynOS_Tex_RetrieveNode(void*) [18] + 0.00 0.02 207938/207938 std::set*, std::less*>, std::allocator*> >::find(DataNode* const&) [31] + 0.00 0.01 207938/207938 std::set*, std::less*>, std::allocator*> >::end() const [85] + 0.00 0.00 207938/207988 std::operator!=(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) [7929] +----------------------------------------------- + +[19] 1.0 0.02 0.00 aResampleImpl [19] +----------------------------------------------- + +[20] 1.0 0.02 0.00 djui_gfx_dp_execute_clipping [20] +----------------------------------------------- + +[21] 1.0 0.02 0.00 find_floor_from_list [21] +----------------------------------------------- + +[22] 1.0 0.02 0.00 geo_append_display_list2 [22] +----------------------------------------------- + +[23] 1.0 0.02 0.00 gfx_adjust_x_for_aspect_ratio [23] +----------------------------------------------- + +[24] 1.0 0.02 0.00 gfx_opengl_unload_shader [24] +----------------------------------------------- + +[25] 1.0 0.02 0.00 gfx_sp_set_other_mode [25] +----------------------------------------------- + +[26] 1.0 0.02 0.00 gfx_texture_cache_lookup [26] +----------------------------------------------- + +[27] 1.0 0.02 0.00 interpolate_vectors [27] +----------------------------------------------- + +[28] 1.0 0.02 0.00 mtxf_rotate_xyz_and_translate [28] +----------------------------------------------- + +[29] 1.0 0.02 0.00 mtxf_to_mtx [29] +----------------------------------------------- + +[30] 1.0 0.02 0.00 sequence_channel_process_sound [30] +----------------------------------------------- + 0.00 0.02 207938/207938 DynOS_Tex_RetrieveNode(void*) [18] +[31] 1.0 0.00 0.02 207938 std::set*, std::less*>, std::allocator*> >::find(DataNode* const&) [31] + 0.00 0.02 207938/207938 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] + 0.00 0.00 207938/208077 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) [7926] +----------------------------------------------- + 0.00 0.02 207938/207938 std::set*, std::less*>, std::allocator*> >::find(DataNode* const&) [31] +[32] 1.0 0.00 0.02 207938 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] + 0.00 0.01 207938/207963 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] + 0.00 0.00 207938/208013 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) [94] + 0.00 0.00 207938/832670 std::less*>::operator()(DataNode*, DataNode*) const [83] + 0.00 0.00 415053/415074 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() [7925] + 0.00 0.00 207938/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() [7927] + 0.00 0.00 207938/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() [7928] + 0.00 0.00 207938/207945 std::operator==(std::_Rb_tree_iterator*> const&, std::_Rb_tree_iterator*> const&) [7930] +----------------------------------------------- + 0.00 0.00 25/207963 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.01 207938/207963 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] +[33] 0.7 0.00 0.01 207963 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] + 0.00 0.01 624295/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] + 0.01 0.00 624295/832670 std::less*>::operator()(DataNode*, DataNode*) const [83] + 0.00 0.00 623698/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) [7923] + 0.00 0.00 207963/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] + 0.00 0.00 597/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) [7961] +----------------------------------------------- + 0.00 0.01 686/686 level_script_execute [65] +[34] 0.5 0.00 0.01 686 dynos_update_cmd [34] + 0.00 0.01 686/686 DynOS_UpdateCmd(void*) [88] +----------------------------------------------- + +[35] 0.5 0.01 0.00 aInterleaveImpl [35] +----------------------------------------------- + +[36] 0.5 0.01 0.00 aMixImpl [36] +----------------------------------------------- + +[37] 0.5 0.01 0.00 aSetBufferImpl [37] +----------------------------------------------- + +[38] 0.5 0.01 0.00 absf [38] +----------------------------------------------- + +[39] 0.5 0.01 0.00 adsr_update [39] +----------------------------------------------- + +[40] 0.5 0.01 0.00 anim_process [40] +----------------------------------------------- + +[41] 0.5 0.01 0.00 bhv_cannon_barrel_loop [41] +----------------------------------------------- + +[42] 0.5 0.01 0.00 calculate_normal_dir [42] +----------------------------------------------- + +[43] 0.5 0.01 0.00 clear_object_collision [43] +----------------------------------------------- + +[44] 0.5 0.01 0.00 copy_mario_state_to_object [44] +----------------------------------------------- + +[45] 0.5 0.01 0.00 cur_obj_compute_vel_xz [45] +----------------------------------------------- + +[46] 0.5 0.01 0.00 cur_obj_move_using_vel_and_gravity [46] +----------------------------------------------- + +[47] 0.5 0.01 0.00 cur_obj_resolve_wall_collisions [47] +----------------------------------------------- + +[48] 0.5 0.01 0.00 djui_base_add_padding [48] +----------------------------------------------- + +[49] 0.5 0.01 0.00 djui_base_render [49] +----------------------------------------------- + +[50] 0.5 0.01 0.00 djui_font_normal_render_char [50] +----------------------------------------------- + +[51] 0.5 0.01 0.00 djui_font_title_render_char [51] +----------------------------------------------- + +[52] 0.5 0.01 0.00 djui_text_render [52] +----------------------------------------------- + +[53] 0.5 0.01 0.00 djui_text_render_line_parse_escape [53] +----------------------------------------------- + +[54] 0.5 0.01 0.00 find_surface_on_ray_list [54] +----------------------------------------------- + +[55] 0.5 0.01 0.00 fish_spawner_act_respawn [55] +----------------------------------------------- + +[56] 0.5 0.01 0.00 geo_get_mario_state [56] +----------------------------------------------- + +[57] 0.5 0.01 0.00 gfx_dp_load_block [57] +----------------------------------------------- + +[58] 0.5 0.01 0.00 gfx_normalize_vector [58] +----------------------------------------------- + +[59] 0.5 0.01 0.00 gfx_opengl_shader_get_info [59] +----------------------------------------------- + +[60] 0.5 0.01 0.00 gfx_sp_geometry_mode [60] +----------------------------------------------- + +[61] 0.5 0.01 0.00 gfx_sp_movemem [61] +----------------------------------------------- + +[62] 0.5 0.01 0.00 guMtxIdentF [62] +----------------------------------------------- + +[63] 0.5 0.01 0.00 interpolate_angles [63] +----------------------------------------------- + +[64] 0.5 0.01 0.00 is_player_active [64] +----------------------------------------------- + +[65] 0.5 0.00 0.01 level_script_execute [65] + 0.00 0.01 686/686 dynos_update_cmd [34] + 0.00 0.00 686/686 dynos_swap_cmd [123] +----------------------------------------------- + +[66] 0.5 0.01 0.00 make_vertex [66] +----------------------------------------------- + +[67] 0.5 0.01 0.00 movtex_make_quad_vertex [67] +----------------------------------------------- + +[68] 0.5 0.01 0.00 mtxf_copy [68] +----------------------------------------------- + +[69] 0.5 0.01 0.00 mtxf_mul [69] +----------------------------------------------- + +[70] 0.5 0.01 0.00 mtxf_scale_vec3f [70] +----------------------------------------------- + +[71] 0.5 0.01 0.00 nearest_mario_state_to_object [71] +----------------------------------------------- + +[72] 0.5 0.01 0.00 osEepromLongWrite [72] +----------------------------------------------- + +[73] 0.5 0.01 0.00 play_sound_if_cam_switched_to_lakitu_or_mario [73] +----------------------------------------------- + +[74] 0.5 0.01 0.00 process_notes [74] +----------------------------------------------- + +[75] 0.5 0.01 0.00 ray_surface_intersect [75] +----------------------------------------------- + +[76] 0.5 0.01 0.00 round_float [76] +----------------------------------------------- + +[77] 0.5 0.01 0.00 sequence_player_process_sequence [77] +----------------------------------------------- + +[78] 0.5 0.01 0.00 sequence_player_process_sound [78] +----------------------------------------------- + +[79] 0.5 0.01 0.00 update_objects_in_list [79] +----------------------------------------------- + +[80] 0.5 0.01 0.00 vec3f_copy [80] +----------------------------------------------- + +[81] 0.5 0.01 0.00 vec3s_copy [81] +----------------------------------------------- + 0.01 0.00 832670/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] +[82] 0.5 0.01 0.00 832670 std::_Rb_tree_node*>::_M_valptr() const [82] + 0.00 0.00 832670/832670 __gnu_cxx::__aligned_membuf*>::_M_ptr() const [7921] +----------------------------------------------- + 0.00 0.00 12/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [121] + 0.00 0.00 35/832670 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 164/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 226/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 207938/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] + 0.01 0.00 624295/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] +[83] 0.5 0.01 0.00 832670 std::less*>::operator()(DataNode*, DataNode*) const [83] +----------------------------------------------- + 0.00 0.00 12/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [121] + 0.00 0.00 164/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 186/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 208013/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) [94] + 0.00 0.01 624295/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] +[84] 0.5 0.00 0.01 832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] + 0.01 0.00 832670/832670 std::_Rb_tree_node*>::_M_valptr() const [82] + 0.00 0.00 832670/832748 std::_Identity*>::operator()(DataNode* const&) const [7920] +----------------------------------------------- + 0.00 0.01 207938/207938 DynOS_Tex_RetrieveNode(void*) [18] +[85] 0.5 0.00 0.01 207938 std::set*, std::less*>, std::allocator*> >::end() const [85] + 0.00 0.01 207938/207938 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() const [86] +----------------------------------------------- + 0.00 0.01 207938/207938 std::set*, std::less*>, std::allocator*> >::end() const [85] +[86] 0.5 0.00 0.01 207938 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() const [86] + 0.01 0.00 207938/207938 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [87] +----------------------------------------------- + 0.01 0.00 207938/207938 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() const [86] +[87] 0.5 0.01 0.00 207938 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [87] +----------------------------------------------- + 0.00 0.01 686/686 dynos_update_cmd [34] +[88] 0.5 0.00 0.01 686 DynOS_UpdateCmd(void*) [88] + 0.01 0.00 686/686 DynOS_Warp_Update(void*, bool) [89] +----------------------------------------------- + 0.01 0.00 686/686 DynOS_UpdateCmd(void*) [88] +[89] 0.5 0.01 0.00 686 DynOS_Warp_Update(void*, bool) [89] +----------------------------------------------- + +[90] 0.2 0.01 0.00 get_quad_collection_from_id [90] +----------------------------------------------- + +[91] 0.2 0.01 0.00 movtex_gen_quads_id [91] +----------------------------------------------- + +[92] 0.2 0.01 0.00 vec3f_length [92] +----------------------------------------------- + +[93] 0.2 0.01 0.00 vec3f_normalize [93] +----------------------------------------------- + 0.00 0.00 35/208013 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 40/208013 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 207938/208013 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] +[94] 0.1 0.00 0.00 208013 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) [94] + 0.00 0.00 208013/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] +----------------------------------------------- + 0.00 0.00 3/10 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 7/10 dynos_pack_set_enabled [96] +[95] 0.0 0.00 0.00 10 DynOS_Pack_SetEnabled(PackData*, bool) [95] + 0.00 0.00 4/4 DynOS_Pack_DeactivateActor(int, std::pair&) [106] + 0.00 0.00 3/6 DynOS_Pack_ActivateActor(int, std::pair&) [101] + 0.00 0.00 10/13 Array >::begin() [8130] + 0.00 0.00 10/13 Array >::end() [8129] + 0.00 0.00 10/10 DynOS_Actor_Override_All() [8138] +----------------------------------------------- + 0.00 0.00 3/7 dynos_pack_read [119] + 0.00 0.00 4/7 djui_panel_dynos_apply [114] +[96] 0.0 0.00 0.00 7 dynos_pack_set_enabled [96] + 0.00 0.00 7/10 DynOS_Pack_SetEnabled(PackData*, bool) [95] + 0.00 0.00 7/31 DynOS_Pack_GetFromIndex(int) [8069] +----------------------------------------------- + 0.00 0.00 43/43 DynOS_Tex_Valid(GfxData*) [99] +[97] 0.0 0.00 0.00 43 std::set*, std::less*>, std::allocator*> >::insert(DataNode* const&) [97] + 0.00 0.00 43/43 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] + 0.00 0.00 43/43 std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) [8036] +----------------------------------------------- + 0.00 0.00 43/43 std::set*, std::less*>, std::allocator*> >::insert(DataNode* const&) [97] +[98] 0.0 0.00 0.00 43 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] + 0.00 0.00 43/43 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 36/36 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 43/832748 std::_Identity*>::operator()(DataNode* const&) const [7920] + 0.00 0.00 43/43 std::pair*>, bool>::pair*>, bool, true>(std::_Rb_tree_iterator*>&&, bool&&) [8035] + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::_Alloc_node(std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >&) [8059] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 7/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] +----------------------------------------------- + 0.00 0.00 6/6 DynOS_Actor_Valid(void const*, ActorGfx&) [100] +[99] 0.0 0.00 0.00 6 DynOS_Tex_Valid(GfxData*) [99] + 0.00 0.00 43/43 std::set*, std::less*>, std::allocator*> >::insert(DataNode* const&) [97] + 0.00 0.00 6/1497 Array*>::begin() [7948] + 0.00 0.00 6/1497 Array*>::end() [7947] +----------------------------------------------- + 0.00 0.00 6/6 DynOS_Pack_ActivateActor(int, std::pair&) [101] +[100] 0.0 0.00 0.00 6 DynOS_Actor_Valid(void const*, ActorGfx&) [100] + 0.00 0.00 6/6 DynOS_Tex_Valid(GfxData*) [99] + 0.00 0.00 6/16 std::map, std::allocator > >::operator[](void const* const&) [8117] +----------------------------------------------- + 0.00 0.00 3/6 DynOS_Pack_SetEnabled(PackData*, bool) [95] + 0.00 0.00 3/6 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] +[101] 0.0 0.00 0.00 6 DynOS_Pack_ActivateActor(int, std::pair&) [101] + 0.00 0.00 6/6 DynOS_Actor_Valid(void const*, ActorGfx&) [100] + 0.00 0.00 6/405 Array*>::end() [7982] + 0.00 0.00 6/450 DynOS_Geo_GetGraphNode(void const*, bool) [7979] + 0.00 0.00 6/14 DynOS_Builtin_Actor_GetFromName(char const*) [8122] +----------------------------------------------- + 0.00 0.00 25/25 DynOS_Tex_Invalid(GfxData*) [107] +[102] 0.0 0.00 0.00 25 std::set*, std::less*>, std::allocator*> >::erase(DataNode* const&) [102] + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) [104] +----------------------------------------------- + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) [104] +[103] 0.0 0.00 0.00 25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 164/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] + 0.00 0.00 164/832670 std::less*>::operator()(DataNode*, DataNode*) const [83] + 0.00 0.00 25/207963 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [121] + 0.00 0.00 78/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) [7923] + 0.00 0.00 33/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) [7961] + 0.00 0.00 25/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() [7928] + 0.00 0.00 25/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() [7927] + 0.00 0.00 25/25 std::pair*>, std::_Rb_tree_iterator*> >::pair*>, std::_Rb_tree_iterator*>, true>(std::_Rb_tree_iterator*>&&, std::_Rb_tree_iterator*>&&) [8096] +----------------------------------------------- + 0.00 0.00 25/25 std::set*, std::less*>, std::allocator*> >::erase(DataNode* const&) [102] +[104] 0.0 0.00 0.00 25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) [104] + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 50/50 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::size() const [8032] + 0.00 0.00 50/208077 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) [7926] + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] +----------------------------------------------- + 0.00 0.00 4/4 DynOS_Pack_DeactivateActor(int, std::pair&) [106] +[105] 0.0 0.00 0.00 4 DynOS_Actor_Invalid(void const*, int) [105] + 0.00 0.00 3/3 DynOS_Tex_Invalid(GfxData*) [107] + 0.00 0.00 7/16 std::map, std::allocator > >::operator[](void const* const&) [8117] + 0.00 0.00 4/466 std::map, std::allocator > >::count(void const* const&) const [7969] + 0.00 0.00 3/3 std::map, std::allocator > >::erase(void const* const&) [8282] +----------------------------------------------- + 0.00 0.00 4/4 DynOS_Pack_SetEnabled(PackData*, bool) [95] +[106] 0.0 0.00 0.00 4 DynOS_Pack_DeactivateActor(int, std::pair&) [106] + 0.00 0.00 4/4 DynOS_Actor_Invalid(void const*, int) [105] + 0.00 0.00 4/14 DynOS_Builtin_Actor_GetFromName(char const*) [8122] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Actor_Invalid(void const*, int) [105] +[107] 0.0 0.00 0.00 3 DynOS_Tex_Invalid(GfxData*) [107] + 0.00 0.00 25/25 std::set*, std::less*>, std::allocator*> >::erase(DataNode* const&) [102] + 0.00 0.00 3/1497 Array*>::begin() [7948] + 0.00 0.00 3/1497 Array*>::end() [7947] +----------------------------------------------- + 0.00 0.00 2/2 DynOS_Gfx_Init() [110] +[108] 0.0 0.00 0.00 2 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] + 0.00 0.00 3/3 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] + 0.00 0.00 3/3 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 12/287 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) [8000] + 0.00 0.00 3/173 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) [8010] + 0.00 0.00 3/9 DynOS_Actor_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8141] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[109] 0.0 0.00 0.00 1 DynOS_Init() [109] + 0.00 0.00 1/1 DynOS_Opt_Init() [111] +----------------------------------------------- + 0.00 0.00 1/1 DynOS_Opt_Init() [111] +[110] 0.0 0.00 0.00 1 DynOS_Gfx_Init() [110] + 0.00 0.00 2/2 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] + 0.00 0.00 2/2 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char const*) [8298] +----------------------------------------------- + 0.00 0.00 1/1 DynOS_Init() [109] +[111] 0.0 0.00 0.00 1 DynOS_Opt_Init() [111] + 0.00 0.00 1/1 DynOS_Gfx_Init() [110] +----------------------------------------------- + +[112] 0.0 0.00 0.00 __libc_csu_init [112] + 0.00 0.00 1/1 DynOS_Init() [109] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z20DynOS_String_ConvertPKcb [8306] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z19DynOS_Pack_GetCountv [8304] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z20DynOS_Level_GetCountv [8305] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z25DynOS_Tex_ConvertToRGBA32PKhyiiS0_ [8309] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z18DynOS_Col_ActivateRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc [8302] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z18DynOS_Lvl_GetArrayv [8303] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z21DynOS_Actor_AddCustomRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc [8307] + 0.00 0.00 1/1 _GLOBAL__sub_I__Z23DynOS_MovtexQC_RegisterPKcsss [8308] +----------------------------------------------- + 0.00 0.00 43/43 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] +[113] 0.0 0.00 0.00 43 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 226/832670 std::less*>::operator()(DataNode*, DataNode*) const [83] + 0.00 0.00 186/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] + 0.00 0.00 40/208013 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) [94] + 0.00 0.00 158/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) [7961] + 0.00 0.00 43/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() [7928] + 0.00 0.00 43/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() [7927] + 0.00 0.00 43/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] + 0.00 0.00 36/36 std::pair::pair*>*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node*>*&, std::_Rb_tree_node_base*&) [8058] + 0.00 0.00 28/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) [7923] + 0.00 0.00 7/32 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::begin() [8068] + 0.00 0.00 7/207945 std::operator==(std::_Rb_tree_iterator*> const&, std::_Rb_tree_iterator*> const&) [7930] + 0.00 0.00 7/7 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base* const&) [8159] + 0.00 0.00 4/4 std::_Rb_tree_iterator*>::operator--() [8213] +----------------------------------------------- + +[114] 0.0 0.00 0.00 djui_panel_dynos_apply [114] + 0.00 0.00 4/7 dynos_pack_set_enabled [96] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[115] 0.0 0.00 0.00 3 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] + 0.00 0.00 3/6 DynOS_Pack_ActivateActor(int, std::pair&) [101] + 0.00 0.00 3/3 Array >::Count() const [8280] + 0.00 0.00 3/3 std::pair::pair(char const*&, GfxData*&) [8283] + 0.00 0.00 3/3 Array >::Add(std::pair const&) [8267] + 0.00 0.00 3/3 Array >::operator[](int) [8270] +----------------------------------------------- + 0.00 0.00 3/3 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] +[116] 0.0 0.00 0.00 3 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] + 0.00 0.00 3/3 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] + 0.00 0.00 661/4478 unsigned char ReadBytes(_IO_FILE*) [7939] + 0.00 0.00 302/302 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] + 0.00 0.00 216/216 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] + 0.00 0.00 98/98 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] + 0.00 0.00 28/28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] + 0.00 0.00 14/14 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] + 0.00 0.00 3/6 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [8162] + 0.00 0.00 3/3 DynOS_Pack_GetActor(PackData*, char const*) [8230] + 0.00 0.00 3/6 GfxData* New(unsigned long long) [8163] +----------------------------------------------- + 0.00 0.00 3/3 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] +[117] 0.0 0.00 0.00 3 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] + 0.00 0.00 3/3 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] + 0.00 0.00 17/287 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) [8000] + 0.00 0.00 3/71 String::String(char const*) [8025] + 0.00 0.00 3/3 String::operator[](int) [8276] + 0.00 0.00 3/3 std::__cxx11::basic_string, std::allocator > fstring<__gnu_cxx::__normal_iterator, std::allocator > >, char*>(char const*, __gnu_cxx::__normal_iterator, std::allocator > >, char*) [8233] + 0.00 0.00 3/18 String::begin() [8113] +----------------------------------------------- + 0.00 0.00 3/3 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] +[118] 0.0 0.00 0.00 3 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 3/10 DynOS_Pack_SetEnabled(PackData*, bool) [95] + 0.00 0.00 3/6 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [8162] + 0.00 0.00 3/40 Array::Count() const [8040] + 0.00 0.00 3/2318 String::String() [7941] + 0.00 0.00 3/4 Array >::Array() [8196] + 0.00 0.00 3/3 Array::Add(PackData const&) [8237] + 0.00 0.00 3/3 PackData::~PackData() [8278] + 0.00 0.00 3/34 Array::operator[](int) [8067] + 0.00 0.00 3/71 String::String(char const*) [8025] + 0.00 0.00 3/90 String::operator=(String const&) [8020] +----------------------------------------------- + +[119] 0.0 0.00 0.00 dynos_pack_read [119] + 0.00 0.00 3/7 dynos_pack_set_enabled [96] + 0.00 0.00 6/15 dynos_pack_get_name [127] + 0.00 0.00 3/6 dynos_pack_get_count [129] +----------------------------------------------- + 0.00 0.00 36/36 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] +[120] 0.0 0.00 0.00 36 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 35/208013 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) [94] + 0.00 0.00 35/832670 std::less*>::operator()(DataNode*, DataNode*) const [83] + 0.00 0.00 36/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() [7927] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 36/36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::operator()* const&>(DataNode* const&) const [8053] + 0.00 0.00 36/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] + 0.00 0.00 35/832748 std::_Identity*>::operator()(DataNode* const&) const [7920] +----------------------------------------------- + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] +[121] 0.0 0.00 0.00 25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [121] + 0.00 0.00 12/832670 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] + 0.00 0.00 12/832670 std::less*>::operator()(DataNode*, DataNode*) const [83] + 0.00 0.00 25/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] + 0.00 0.00 12/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) [7923] +----------------------------------------------- + 0.00 0.00 42560/42560 geo_process_object [3299] +[122] 0.0 0.00 0.00 42560 dynos_gfx_swap_animations [122] + 0.00 0.00 42560/42560 DynOS_Anim_Swap(void*) [7932] +----------------------------------------------- + 0.00 0.00 686/686 level_script_execute [65] +[123] 0.0 0.00 0.00 686 dynos_swap_cmd [123] + 0.00 0.00 686/686 DynOS_SwapCmd(void*) [7964] +----------------------------------------------- + 0.00 0.00 471/471 obj_set_model [4904] +[124] 0.0 0.00 0.00 471 dynos_actor_override [124] + 0.00 0.00 471/995 DynOS_Actor_Override(void**) [7958] +----------------------------------------------- + 0.00 0.00 453/453 render_game [5359] +[125] 0.0 0.00 0.00 453 dynos_update_gfx [125] + 0.00 0.00 453/453 DynOS_UpdateGfx() [7975] +----------------------------------------------- + 0.00 0.00 453/453 read_controller_inputs [5321] +[126] 0.0 0.00 0.00 453 dynos_update_opt [126] + 0.00 0.00 453/453 DynOS_UpdateOpt(void*) [7976] +----------------------------------------------- + 0.00 0.00 3/15 djui_panel_dynos_create [2556] + 0.00 0.00 6/15 dynos_pack_read [119] + 0.00 0.00 6/15 dynos_pack_write [2733] +[127] 0.0 0.00 0.00 15 dynos_pack_get_name [127] + 0.00 0.00 15/31 DynOS_Pack_GetFromIndex(int) [8069] + 0.00 0.00 15/18 String::begin() [8113] +----------------------------------------------- + 0.00 0.00 3/9 djui_panel_dynos_create [2556] + 0.00 0.00 6/9 dynos_pack_write [2733] +[128] 0.0 0.00 0.00 9 dynos_pack_get_enabled [128] + 0.00 0.00 9/31 DynOS_Pack_GetFromIndex(int) [8069] +----------------------------------------------- + 0.00 0.00 1/6 djui_panel_dynos_create [2556] + 0.00 0.00 2/6 dynos_pack_write [2733] + 0.00 0.00 3/6 dynos_pack_read [119] +[129] 0.0 0.00 0.00 6 dynos_pack_get_count [129] + 0.00 0.00 6/6 DynOS_Pack_GetCount() [8161] +----------------------------------------------- + 0.00 0.00 2/2 mods_load [4494] +[130] 0.0 0.00 0.00 2 dynos_generate_packs [130] + 0.00 0.00 2/2 DynOS_Gfx_GeneratePacks(char const*) [8297] +----------------------------------------------- + 0.00 0.00 35/832748 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 43/832748 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] + 0.00 0.00 832670/832748 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) [84] +[7920] 0.0 0.00 0.00 832748 std::_Identity*>::operator()(DataNode* const&) const [7920] +----------------------------------------------- + 0.00 0.00 832670/832670 std::_Rb_tree_node*>::_M_valptr() const [82] +[7921] 0.0 0.00 0.00 832670 __gnu_cxx::__aligned_membuf*>::_M_ptr() const [7921] + 0.00 0.00 832670/832670 __gnu_cxx::__aligned_membuf*>::_M_addr() const [7922] +----------------------------------------------- + 0.00 0.00 832670/832670 __gnu_cxx::__aligned_membuf*>::_M_ptr() const [7921] +[7922] 0.0 0.00 0.00 832670 __gnu_cxx::__aligned_membuf*>::_M_addr() const [7922] +----------------------------------------------- + 0.00 0.00 11/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] + 0.00 0.00 12/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [121] + 0.00 0.00 28/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 78/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 623698/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] +[7923] 0.0 0.00 0.00 623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) [7923] +----------------------------------------------- + 0.00 0.00 7/623180 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] + 0.00 0.00 25/623180 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [121] + 0.00 0.00 32/623180 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::begin() [8068] + 0.00 0.00 36/623180 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 43/623180 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 207963/623180 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] + 0.00 0.00 415074/623180 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() [7925] +[7924] 0.0 0.00 0.00 623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] +----------------------------------------------- + 0.00 0.00 21/415074 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] + 0.00 0.00 415053/415074 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] +[7925] 0.0 0.00 0.00 415074 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() [7925] + 0.00 0.00 415074/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] +----------------------------------------------- + 0.00 0.00 43/208077 std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) [8036] + 0.00 0.00 46/208077 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] + 0.00 0.00 50/208077 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) [104] + 0.00 0.00 207938/208077 std::set*, std::less*>, std::allocator*> >::find(DataNode* const&) [31] +[7926] 0.0 0.00 0.00 208077 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) [7926] +----------------------------------------------- + 0.00 0.00 25/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 36/208042 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 43/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 207938/208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] +[7927] 0.0 0.00 0.00 208042 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() [7927] +----------------------------------------------- + 0.00 0.00 1/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::~_Rb_tree() [8353] + 0.00 0.00 25/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 43/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 207938/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] +[7928] 0.0 0.00 0.00 208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() [7928] +----------------------------------------------- + 0.00 0.00 50/207988 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] + 0.00 0.00 207938/207988 DynOS_Tex_RetrieveNode(void*) [18] +[7929] 0.0 0.00 0.00 207988 std::operator!=(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) [7929] +----------------------------------------------- + 0.00 0.00 7/207945 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 207938/207945 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) [32] +[7930] 0.0 0.00 0.00 207945 std::operator==(std::_Rb_tree_iterator*> const&, std::_Rb_tree_iterator*> const&) [7930] +----------------------------------------------- + 0.00 0.00 143128/143128 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7931] 0.0 0.00 0.00 143128 String::operator==(String const&) const [7931] +----------------------------------------------- + 0.00 0.00 42560/42560 dynos_gfx_swap_animations [122] +[7932] 0.0 0.00 0.00 42560 DynOS_Anim_Swap(void*) [7932] +----------------------------------------------- + 0.00 0.00 22902/22902 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] +[7933] 0.0 0.00 0.00 22902 short ReadBytes(_IO_FILE*) [7933] +----------------------------------------------- + 0.00 0.00 4/17755 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] + 0.00 0.00 4/17755 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] + 0.00 0.00 6/17755 GfxData* New(unsigned long long) [8163] + 0.00 0.00 14/17755 DataNode* New >(unsigned long long) [8124] + 0.00 0.00 14/17755 Lights1* New(unsigned long long) [8123] + 0.00 0.00 28/17755 TexData* New(unsigned long long) [8078] + 0.00 0.00 36/17755 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] + 0.00 0.00 36/17755 void __gnu_cxx::new_allocator*> >::construct*, DataNode* const&>(DataNode**, DataNode* const&) [8051] + 0.00 0.00 56/17755 DataNode* New >(unsigned long long) [8028] + 0.00 0.00 98/17755 DataNode* New >(unsigned long long) [8014] + 0.00 0.00 216/17755 DataNode* New >(unsigned long long) [8006] + 0.00 0.00 302/17755 DataNode* New >(unsigned long long) [7994] + 0.00 0.00 3817/17755 Vtx* New(unsigned long long) [8005] + 0.00 0.00 4075/17755 unsigned long* New(unsigned long long) [8015] + 0.00 0.00 4349/17755 char* New(unsigned long long) [8142] + 0.00 0.00 4700/17755 Gfx* New(unsigned long long) [7993] +[7934] 0.0 0.00 0.00 17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 216/15720 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] + 0.00 0.00 1629/15720 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] + 0.00 0.00 4173/15720 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] + 0.00 0.00 9702/15720 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] +[7935] 0.0 0.00 0.00 15720 unsigned int ReadBytes(_IO_FILE*) [7935] +----------------------------------------------- + 0.00 0.00 11451/11451 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] +[7936] 0.0 0.00 0.00 11451 signed char ReadBytes(_IO_FILE*) [7936] +----------------------------------------------- + 0.00 0.00 4075/8775 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] + 0.00 0.00 4700/8775 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] +[7937] 0.0 0.00 0.00 8775 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] + 0.00 0.00 1629/2318 String::String() [7941] + 0.00 0.00 1629/2287 String::Read(_IO_FILE*) [7942] + 0.00 0.00 1629/15720 unsigned int ReadBytes(_IO_FILE*) [7935] + 0.00 0.00 1629/1629 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] + 0.00 0.00 223/223 int ReadBytes(_IO_FILE*) [8003] + 0.00 0.00 223/223 DynOS_Builtin_Func_GetFromIndex(int) [8002] +----------------------------------------------- + 0.00 0.00 4905/4905 int Array >::FindIf const&)#1}>(DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}) const [7980] +[7938] 0.0 0.00 0.00 4905 DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}::operator()(std::pair const&) const [7938] +----------------------------------------------- + 0.00 0.00 661/4478 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] + 0.00 0.00 3817/4478 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] +[7939] 0.0 0.00 0.00 4478 unsigned char ReadBytes(_IO_FILE*) [7939] +----------------------------------------------- + 0.00 0.00 2959/2959 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[7940] 0.0 0.00 0.00 2959 String::Add(char) [7940] +----------------------------------------------- + 0.00 0.00 3/2318 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 14/2318 DataNode::DataNode() [8128] + 0.00 0.00 56/2318 DataNode::DataNode() [8031] + 0.00 0.00 98/2318 DataNode::DataNode() [8018] + 0.00 0.00 216/2318 DataNode::DataNode() [8009] + 0.00 0.00 302/2318 DataNode::DataNode() [7997] + 0.00 0.00 1629/2318 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] +[7941] 0.0 0.00 0.00 2318 String::String() [7941] +----------------------------------------------- + 0.00 0.00 14/2287 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] + 0.00 0.00 28/2287 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] + 0.00 0.00 98/2287 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] + 0.00 0.00 216/2287 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] + 0.00 0.00 302/2287 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] + 0.00 0.00 1629/2287 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] +[7942] 0.0 0.00 0.00 2287 String::Read(_IO_FILE*) [7942] +----------------------------------------------- + 0.00 0.00 466/1857 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] + 0.00 0.00 1391/1857 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() const [7953] +[7943] 0.0 0.00 0.00 1857 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [7943] +----------------------------------------------- + 0.00 0.00 3/1632 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1629/1632 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7944] 0.0 0.00 0.00 1632 Array*>::end() [7944] +----------------------------------------------- + 0.00 0.00 3/1632 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1629/1632 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7945] 0.0 0.00 0.00 1632 Array*>::begin() [7945] +----------------------------------------------- + 0.00 0.00 1629/1629 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] +[7946] 0.0 0.00 0.00 1629 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] + 0.00 0.00 143128/143128 String::operator==(String const&) const [7931] + 0.00 0.00 1629/1632 Array*>::begin() [7945] + 0.00 0.00 1629/1632 Array*>::end() [7944] + 0.00 0.00 1485/1488 Array*>::begin() [7950] + 0.00 0.00 1485/1488 Array*>::end() [7949] + 0.00 0.00 1485/1488 Array*>::begin() [7952] + 0.00 0.00 1485/1488 Array*>::end() [7951] + 0.00 0.00 1485/1497 Array*>::begin() [7948] + 0.00 0.00 1485/1497 Array*>::end() [7947] + 0.00 0.00 1355/1358 Array*>::begin() [7957] + 0.00 0.00 1355/1358 Array*>::end() [7956] + 0.00 0.00 1355/1358 Array*>::begin() [7955] + 0.00 0.00 1355/1358 Array*>::end() [7954] + 0.00 0.00 390/399 Array*>::begin() [7983] + 0.00 0.00 390/405 Array*>::end() [7982] + 0.00 0.00 286/289 Array*>::begin() [7999] + 0.00 0.00 286/289 Array*>::end() [7998] + 0.00 0.00 24/24 String::begin() const [8101] + 0.00 0.00 16/28 Array*>::begin() [8084] + 0.00 0.00 16/28 Array*>::end() [8083] + 0.00 0.00 4/7 Array*>::begin() [8156] + 0.00 0.00 4/7 Array*>::end() [8155] + 0.00 0.00 4/7 Array*>::begin() [8158] + 0.00 0.00 4/7 Array*>::end() [8157] + 0.00 0.00 4/14 DynOS_Builtin_Actor_GetFromName(char const*) [8122] + 0.00 0.00 4/4 DynOS_Builtin_LvlGeo_GetFromName(char const*) [8193] + 0.00 0.00 4/4 DynOS_Builtin_LvlCol_GetFromName(char const*) [8192] + 0.00 0.00 4/4 DynOS_Builtin_ScriptPtr_GetFromName(char const*) [8194] + 0.00 0.00 4/4 DynOS_Builtin_Tex_GetFromName(char const*) [8191] +----------------------------------------------- + 0.00 0.00 3/1497 DynOS_Tex_Invalid(GfxData*) [107] + 0.00 0.00 3/1497 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 6/1497 DynOS_Tex_Valid(GfxData*) [99] + 0.00 0.00 1485/1497 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7947] 0.0 0.00 0.00 1497 Array*>::end() [7947] +----------------------------------------------- + 0.00 0.00 3/1497 DynOS_Tex_Invalid(GfxData*) [107] + 0.00 0.00 3/1497 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 6/1497 DynOS_Tex_Valid(GfxData*) [99] + 0.00 0.00 1485/1497 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7948] 0.0 0.00 0.00 1497 Array*>::begin() [7948] +----------------------------------------------- + 0.00 0.00 3/1488 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1485/1488 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7949] 0.0 0.00 0.00 1488 Array*>::end() [7949] +----------------------------------------------- + 0.00 0.00 3/1488 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1485/1488 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7950] 0.0 0.00 0.00 1488 Array*>::begin() [7950] +----------------------------------------------- + 0.00 0.00 3/1488 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1485/1488 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7951] 0.0 0.00 0.00 1488 Array*>::end() [7951] +----------------------------------------------- + 0.00 0.00 3/1488 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1485/1488 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7952] 0.0 0.00 0.00 1488 Array*>::begin() [7952] +----------------------------------------------- + 0.00 0.00 466/1391 std::map, std::allocator > >::count(void const* const&) const [7969] + 0.00 0.00 925/1391 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] +[7953] 0.0 0.00 0.00 1391 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() const [7953] + 0.00 0.00 1391/1857 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [7943] +----------------------------------------------- + 0.00 0.00 3/1358 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1355/1358 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7954] 0.0 0.00 0.00 1358 Array*>::end() [7954] +----------------------------------------------- + 0.00 0.00 3/1358 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1355/1358 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7955] 0.0 0.00 0.00 1358 Array*>::begin() [7955] +----------------------------------------------- + 0.00 0.00 3/1358 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1355/1358 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7956] 0.0 0.00 0.00 1358 Array*>::end() [7956] +----------------------------------------------- + 0.00 0.00 3/1358 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1355/1358 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7957] 0.0 0.00 0.00 1358 Array*>::begin() [7957] +----------------------------------------------- + 0.00 0.00 471/995 dynos_actor_override [124] + 0.00 0.00 524/995 DynOS_Actor_Override_All() [8138] +[7958] 0.0 0.00 0.00 995 DynOS_Actor_Override(void**) [7958] + 0.00 0.00 462/466 std::map, std::allocator > >::count(void const* const&) const [7969] + 0.00 0.00 3/16 std::map, std::allocator > >::operator[](void const* const&) [8117] +----------------------------------------------- + 0.00 0.00 5/937 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] + 0.00 0.00 466/937 std::map, std::allocator > >::count(void const* const&) const [7969] + 0.00 0.00 466/937 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] +[7959] 0.0 0.00 0.00 937 std::operator==(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) [7959] +----------------------------------------------- + 0.00 0.00 823/823 DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [17] +[7960] 0.0 0.00 0.00 823 DynOS_Tex_Cache(THN**, DataNode*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [7960] +----------------------------------------------- + 0.00 0.00 11/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] + 0.00 0.00 33/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] + 0.00 0.00 158/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 597/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) [33] +[7961] 0.0 0.00 0.00 799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) [7961] +----------------------------------------------- + 0.00 0.00 6/720 GfxData::GfxData() [8187] + 0.00 0.00 14/720 DataNode::DataNode() [8128] + 0.00 0.00 28/720 TexData::TexData() [8089] + 0.00 0.00 56/720 DataNode::DataNode() [8031] + 0.00 0.00 98/720 DataNode::DataNode() [8018] + 0.00 0.00 216/720 DataNode::DataNode() [8009] + 0.00 0.00 302/720 DataNode::DataNode() [7997] +[7962] 0.0 0.00 0.00 720 NoCopy::NoCopy() [7962] +----------------------------------------------- + 0.00 0.00 6/692 GfxData::GfxData() [8187] + 0.00 0.00 14/692 DataNode::DataNode() [8128] + 0.00 0.00 56/692 DataNode::DataNode() [8031] + 0.00 0.00 98/692 DataNode::DataNode() [8018] + 0.00 0.00 216/692 DataNode::DataNode() [8009] + 0.00 0.00 302/692 DataNode::DataNode() [7997] +[7963] 0.0 0.00 0.00 692 Array::Array() [7963] +----------------------------------------------- + 0.00 0.00 686/686 dynos_swap_cmd [123] +[7964] 0.0 0.00 0.00 686 DynOS_SwapCmd(void*) [7964] + 0.00 0.00 686/686 DynOS_Lvl_Override(void*) [7965] +----------------------------------------------- + 0.00 0.00 686/686 DynOS_SwapCmd(void*) [7964] +[7965] 0.0 0.00 0.00 686 DynOS_Lvl_Override(void*) [7965] + 0.00 0.00 686/686 Array::begin() [7967] + 0.00 0.00 686/686 Array::end() [7966] +----------------------------------------------- + 0.00 0.00 686/686 DynOS_Lvl_Override(void*) [7965] +[7966] 0.0 0.00 0.00 686 Array::end() [7966] +----------------------------------------------- + 0.00 0.00 686/686 DynOS_Lvl_Override(void*) [7965] +[7967] 0.0 0.00 0.00 686 Array::begin() [7967] +----------------------------------------------- + 0.00 0.00 588/588 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[7968] 0.0 0.00 0.00 588 String::operator==(char const*) const [7968] +----------------------------------------------- + 0.00 0.00 4/466 DynOS_Actor_Invalid(void const*, int) [105] + 0.00 0.00 462/466 DynOS_Actor_Override(void**) [7958] +[7969] 0.0 0.00 0.00 466 std::map, std::allocator > >::count(void const* const&) const [7969] + 0.00 0.00 466/1391 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() const [7953] + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] + 0.00 0.00 466/937 std::operator==(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) [7959] +----------------------------------------------- + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] +[7970] 0.0 0.00 0.00 466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] + 0.00 0.00 466/1857 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [7943] + 0.00 0.00 338/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] + 0.00 0.00 338/382 std::less::operator()(void const*, void const*) const [7984] + 0.00 0.00 331/331 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base const*) [7990] + 0.00 0.00 7/7 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base const*) [8160] +----------------------------------------------- + 0.00 0.00 466/466 std::map, std::allocator > >::count(void const* const&) const [7969] +[7971] 0.0 0.00 0.00 466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] + 0.00 0.00 925/1391 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() const [7953] + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() const [7972] + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() const [7973] + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] + 0.00 0.00 466/937 std::operator==(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) [7959] + 0.00 0.00 7/8 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node_base const*) [8153] + 0.00 0.00 7/382 std::less::operator()(void const*, void const*) const [7984] +----------------------------------------------- + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] +[7972] 0.0 0.00 0.00 466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() const [7972] +----------------------------------------------- + 0.00 0.00 466/466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] +[7973] 0.0 0.00 0.00 466 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() const [7973] +----------------------------------------------- + 0.00 0.00 453/453 DynOS_Opt_Update(OSContPad*) [7978] +[7974] 0.0 0.00 0.00 453 DynOS_Opt_Loop(DynosOption*, bool (*)(DynosOption*, void*), void*) [7974] +----------------------------------------------- + 0.00 0.00 453/453 dynos_update_gfx [125] +[7975] 0.0 0.00 0.00 453 DynOS_UpdateGfx() [7975] + 0.00 0.00 453/453 DynOS_Gfx_Update() [7977] +----------------------------------------------- + 0.00 0.00 453/453 dynos_update_opt [126] +[7976] 0.0 0.00 0.00 453 DynOS_UpdateOpt(void*) [7976] + 0.00 0.00 453/453 DynOS_Opt_Update(OSContPad*) [7978] + 0.00 0.00 1/1 DynOS_Warp_SetParam(int, int) [8310] +----------------------------------------------- + 0.00 0.00 453/453 DynOS_UpdateGfx() [7975] +[7977] 0.0 0.00 0.00 453 DynOS_Gfx_Update() [7977] +----------------------------------------------- + 0.00 0.00 453/453 DynOS_UpdateOpt(void*) [7976] +[7978] 0.0 0.00 0.00 453 DynOS_Opt_Update(OSContPad*) [7978] + 0.00 0.00 453/453 DynOS_Opt_Loop(DynosOption*, bool (*)(DynosOption*, void*), void*) [7974] +----------------------------------------------- + 0.00 0.00 6/450 DynOS_Pack_ActivateActor(int, std::pair&) [101] + 0.00 0.00 444/450 DynOS_Actor_Override_All() [8138] +[7979] 0.0 0.00 0.00 450 DynOS_Geo_GetGraphNode(void const*, bool) [7979] + 0.00 0.00 444/444 int Array >::FindIf const&)#1}>(DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}) const [7980] + 0.00 0.00 425/425 Array >::operator[](int) [7981] + 0.00 0.00 25/25 _RelocateGraphNodePointers(GraphNode*, unsigned long long) [8094] + 0.00 0.00 19/19 std::pair::pair(void*&&, void*&&) [8108] + 0.00 0.00 19/19 Array >::Add(std::pair const&) [8106] +----------------------------------------------- + 0.00 0.00 444/444 DynOS_Geo_GetGraphNode(void const*, bool) [7979] +[7980] 0.0 0.00 0.00 444 int Array >::FindIf const&)#1}>(DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}) const [7980] + 0.00 0.00 4905/4905 DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}::operator()(std::pair const&) const [7938] +----------------------------------------------- + 0.00 0.00 425/425 DynOS_Geo_GetGraphNode(void const*, bool) [7979] +[7981] 0.0 0.00 0.00 425 Array >::operator[](int) [7981] +----------------------------------------------- + 0.00 0.00 3/405 DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) [8234] + 0.00 0.00 6/405 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 6/405 DynOS_Pack_ActivateActor(int, std::pair&) [101] + 0.00 0.00 390/405 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7982] 0.0 0.00 0.00 405 Array*>::end() [7982] +----------------------------------------------- + 0.00 0.00 3/399 DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) [8234] + 0.00 0.00 6/399 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 390/399 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7983] 0.0 0.00 0.00 399 Array*>::begin() [7983] +----------------------------------------------- + 0.00 0.00 1/382 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] + 0.00 0.00 6/382 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 7/382 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] + 0.00 0.00 13/382 std::map, std::allocator > >::operator[](void const* const&) [8117] + 0.00 0.00 17/382 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] + 0.00 0.00 338/382 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] +[7984] 0.0 0.00 0.00 382 std::less::operator()(void const*, void const*) const [7984] +----------------------------------------------- + 0.00 0.00 373/373 std::_Rb_tree_node >::_M_valptr() const [7988] +[7985] 0.0 0.00 0.00 373 __gnu_cxx::__aligned_membuf >::_M_ptr() const [7985] + 0.00 0.00 373/373 __gnu_cxx::__aligned_membuf >::_M_addr() const [7986] +----------------------------------------------- + 0.00 0.00 373/373 __gnu_cxx::__aligned_membuf >::_M_ptr() const [7985] +[7986] 0.0 0.00 0.00 373 __gnu_cxx::__aligned_membuf >::_M_addr() const [7986] +----------------------------------------------- + 0.00 0.00 373/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] +[7987] 0.0 0.00 0.00 373 std::_Select1st >::operator()(std::pair const&) const [7987] +----------------------------------------------- + 0.00 0.00 373/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] +[7988] 0.0 0.00 0.00 373 std::_Rb_tree_node >::_M_valptr() const [7988] + 0.00 0.00 373/373 __gnu_cxx::__aligned_membuf >::_M_ptr() const [7985] +----------------------------------------------- + 0.00 0.00 4/373 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] + 0.00 0.00 6/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 8/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node_base const*) [8153] + 0.00 0.00 17/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] + 0.00 0.00 338/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] +[7989] 0.0 0.00 0.00 373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] + 0.00 0.00 373/373 std::_Rb_tree_node >::_M_valptr() const [7988] + 0.00 0.00 373/373 std::_Select1st >::operator()(std::pair const&) const [7987] +----------------------------------------------- + 0.00 0.00 331/331 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] +[7990] 0.0 0.00 0.00 331 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base const*) [7990] +----------------------------------------------- + 0.00 0.00 308/308 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[7991] 0.0 0.00 0.00 308 String::Length() const [7991] +----------------------------------------------- + 0.00 0.00 302/302 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[7992] 0.0 0.00 0.00 302 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] + 0.00 0.00 9702/15720 unsigned int ReadBytes(_IO_FILE*) [7935] + 0.00 0.00 4700/8775 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] + 0.00 0.00 302/302 DataNode* New >(unsigned long long) [7994] + 0.00 0.00 302/2287 String::Read(_IO_FILE*) [7942] + 0.00 0.00 302/302 Gfx* New(unsigned long long) [7993] + 0.00 0.00 302/302 Array*>::Add(DataNode* const&) [7995] +----------------------------------------------- + 0.00 0.00 302/302 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] +[7993] 0.0 0.00 0.00 302 Gfx* New(unsigned long long) [7993] + 0.00 0.00 4700/17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 302/302 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] +[7994] 0.0 0.00 0.00 302 DataNode* New >(unsigned long long) [7994] + 0.00 0.00 302/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 302/302 DataNode::DataNode() [7997] +----------------------------------------------- + 0.00 0.00 302/302 DynOS_Gfx_Load(_IO_FILE*, GfxData*) [7992] +[7995] 0.0 0.00 0.00 302 Array*>::Add(DataNode* const&) [7995] + 0.00 0.00 302/302 Array*>::Resize(int) [7996] +----------------------------------------------- + 0.00 0.00 302/302 Array*>::Add(DataNode* const&) [7995] +[7996] 0.0 0.00 0.00 302 Array*>::Resize(int) [7996] +----------------------------------------------- + 0.00 0.00 302/302 DataNode* New >(unsigned long long) [7994] +[7997] 0.0 0.00 0.00 302 DataNode::DataNode() [7997] + 0.00 0.00 302/720 NoCopy::NoCopy() [7962] + 0.00 0.00 302/2318 String::String() [7941] + 0.00 0.00 302/692 Array::Array() [7963] +----------------------------------------------- + 0.00 0.00 3/289 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 286/289 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7998] 0.0 0.00 0.00 289 Array*>::end() [7998] +----------------------------------------------- + 0.00 0.00 3/289 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 286/289 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[7999] 0.0 0.00 0.00 289 Array*>::begin() [7999] +----------------------------------------------- + 0.00 0.00 12/287 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] + 0.00 0.00 17/287 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] + 0.00 0.00 21/287 DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) [8320] + 0.00 0.00 42/287 DynOS_Gfx_GeneratePacks(char const*) [8297] + 0.00 0.00 195/287 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8000] 0.0 0.00 0.00 287 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) [8000] +----------------------------------------------- + 0.00 0.00 36/252 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] + 0.00 0.00 36/252 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] + 0.00 0.00 36/252 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::operator()* const&>(DataNode* const&) const [8053] + 0.00 0.00 36/252 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) [8063] + 0.00 0.00 36/252 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] + 0.00 0.00 36/252 void std::allocator_traits*> > >::construct*, DataNode* const&>(std::allocator*> >&, DataNode**, DataNode* const&) [8057] + 0.00 0.00 36/252 void __gnu_cxx::new_allocator*> >::construct*, DataNode* const&>(DataNode**, DataNode* const&) [8051] +[8001] 0.0 0.00 0.00 252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] +----------------------------------------------- + 0.00 0.00 223/223 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] +[8002] 0.0 0.00 0.00 223 DynOS_Builtin_Func_GetFromIndex(int) [8002] +----------------------------------------------- + 0.00 0.00 223/223 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] +[8003] 0.0 0.00 0.00 223 int ReadBytes(_IO_FILE*) [8003] +----------------------------------------------- + 0.00 0.00 216/216 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[8004] 0.0 0.00 0.00 216 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] + 0.00 0.00 22902/22902 short ReadBytes(_IO_FILE*) [7933] + 0.00 0.00 11451/11451 signed char ReadBytes(_IO_FILE*) [7936] + 0.00 0.00 3817/4478 unsigned char ReadBytes(_IO_FILE*) [7939] + 0.00 0.00 216/216 DataNode* New >(unsigned long long) [8006] + 0.00 0.00 216/2287 String::Read(_IO_FILE*) [7942] + 0.00 0.00 216/15720 unsigned int ReadBytes(_IO_FILE*) [7935] + 0.00 0.00 216/216 Vtx* New(unsigned long long) [8005] + 0.00 0.00 216/216 Array*>::Add(DataNode* const&) [8007] +----------------------------------------------- + 0.00 0.00 216/216 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] +[8005] 0.0 0.00 0.00 216 Vtx* New(unsigned long long) [8005] + 0.00 0.00 3817/17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 216/216 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] +[8006] 0.0 0.00 0.00 216 DataNode* New >(unsigned long long) [8006] + 0.00 0.00 216/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 216/216 DataNode::DataNode() [8009] +----------------------------------------------- + 0.00 0.00 216/216 DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8004] +[8007] 0.0 0.00 0.00 216 Array*>::Add(DataNode* const&) [8007] + 0.00 0.00 216/216 Array*>::Resize(int) [8008] +----------------------------------------------- + 0.00 0.00 216/216 Array*>::Add(DataNode* const&) [8007] +[8008] 0.0 0.00 0.00 216 Array*>::Resize(int) [8008] +----------------------------------------------- + 0.00 0.00 216/216 DataNode* New >(unsigned long long) [8006] +[8009] 0.0 0.00 0.00 216 DataNode::DataNode() [8009] + 0.00 0.00 216/720 NoCopy::NoCopy() [7962] + 0.00 0.00 216/2318 String::String() [7941] + 0.00 0.00 216/692 Array::Array() [7963] +----------------------------------------------- + 0.00 0.00 3/173 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] + 0.00 0.00 9/173 DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) [8320] + 0.00 0.00 36/173 DynOS_Gfx_GeneratePacks(char const*) [8297] + 0.00 0.00 125/173 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8010] 0.0 0.00 0.00 173 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) [8010] +----------------------------------------------- + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) [8064] + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_put_node(std::_Rb_tree_node*>*) [8061] + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_node() [8060] + 0.00 0.00 36/144 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] +[8011] 0.0 0.00 0.00 144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() [8011] +----------------------------------------------- + 0.00 0.00 140/140 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8012] 0.0 0.00 0.00 140 String::Clear() [8012] +----------------------------------------------- + 0.00 0.00 98/98 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[8013] 0.0 0.00 0.00 98 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] + 0.00 0.00 4173/15720 unsigned int ReadBytes(_IO_FILE*) [7935] + 0.00 0.00 4075/8775 DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [7937] + 0.00 0.00 98/98 DataNode* New >(unsigned long long) [8014] + 0.00 0.00 98/2287 String::Read(_IO_FILE*) [7942] + 0.00 0.00 98/98 unsigned long* New(unsigned long long) [8015] + 0.00 0.00 98/98 Array*>::Add(DataNode* const&) [8016] +----------------------------------------------- + 0.00 0.00 98/98 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] +[8014] 0.0 0.00 0.00 98 DataNode* New >(unsigned long long) [8014] + 0.00 0.00 98/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 98/98 DataNode::DataNode() [8018] +----------------------------------------------- + 0.00 0.00 98/98 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] +[8015] 0.0 0.00 0.00 98 unsigned long* New(unsigned long long) [8015] + 0.00 0.00 4075/17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 98/98 DynOS_Geo_Load(_IO_FILE*, GfxData*) [8013] +[8016] 0.0 0.00 0.00 98 Array*>::Add(DataNode* const&) [8016] + 0.00 0.00 98/98 Array*>::Resize(int) [8017] +----------------------------------------------- + 0.00 0.00 98/98 Array*>::Add(DataNode* const&) [8016] +[8017] 0.0 0.00 0.00 98 Array*>::Resize(int) [8017] +----------------------------------------------- + 0.00 0.00 98/98 DataNode* New >(unsigned long long) [8014] +[8018] 0.0 0.00 0.00 98 DataNode::DataNode() [8018] + 0.00 0.00 98/720 NoCopy::NoCopy() [7962] + 0.00 0.00 98/2318 String::String() [7941] + 0.00 0.00 98/692 Array::Array() [7963] +----------------------------------------------- + 0.00 0.00 43/93 std::pair*>, bool>::pair*>, bool, true>(std::_Rb_tree_iterator*>&&, bool&&) [8035] + 0.00 0.00 50/93 std::pair*>, std::_Rb_tree_iterator*> >::pair*>, std::_Rb_tree_iterator*>, true>(std::_Rb_tree_iterator*>&&, std::_Rb_tree_iterator*>&&) [8096] +[8019] 0.0 0.00 0.00 93 std::_Rb_tree_iterator*>&& std::forward*> >(std::remove_reference*> >::type&) [8019] +----------------------------------------------- + 0.00 0.00 3/90 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 3/90 PackData::operator=(PackData const&) [8279] + 0.00 0.00 28/90 Array::Add(String const&) [8081] + 0.00 0.00 28/90 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] + 0.00 0.00 28/90 void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) [8076] +[8020] 0.0 0.00 0.00 90 String::operator=(String const&) [8020] +----------------------------------------------- + 0.00 0.00 26/82 Array::Array(unsigned char const*, unsigned char const*) [8092] + 0.00 0.00 28/82 Array::operator=(Array const&) [8088] + 0.00 0.00 28/82 Array::Read(_IO_FILE*) [8085] +[8021] 0.0 0.00 0.00 82 Array::Resize(int) [8021] +----------------------------------------------- + 0.00 0.00 72/72 std::_Rb_tree_node*>::_M_valptr() [8024] +[8022] 0.0 0.00 0.00 72 __gnu_cxx::__aligned_membuf*>::_M_ptr() [8022] + 0.00 0.00 72/72 __gnu_cxx::__aligned_membuf*>::_M_addr() [8023] +----------------------------------------------- + 0.00 0.00 72/72 __gnu_cxx::__aligned_membuf*>::_M_ptr() [8022] +[8023] 0.0 0.00 0.00 72 __gnu_cxx::__aligned_membuf*>::_M_addr() [8023] +----------------------------------------------- + 0.00 0.00 36/72 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) [8064] + 0.00 0.00 36/72 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] +[8024] 0.0 0.00 0.00 72 std::_Rb_tree_node*>::_M_valptr() [8024] + 0.00 0.00 72/72 __gnu_cxx::__aligned_membuf*>::_M_ptr() [8022] +----------------------------------------------- + 0.00 0.00 3/71 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] + 0.00 0.00 3/71 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 65/71 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8025] 0.0 0.00 0.00 71 String::String(char const*) [8025] +----------------------------------------------- + 0.00 0.00 2/58 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] + 0.00 0.00 56/58 TexData::TexData() [8089] +[8026] 0.0 0.00 0.00 58 Array::Array() [8026] +----------------------------------------------- + 0.00 0.00 3/57 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] + 0.00 0.00 3/57 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_upper_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8290] + 0.00 0.00 4/57 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node >*) [8222] + 0.00 0.00 4/57 std::_Rb_tree_const_iterator >::_M_const_cast() const [8205] + 0.00 0.00 6/57 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::begin() [8188] + 0.00 0.00 18/57 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() [8114] + 0.00 0.00 19/57 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] +[8027] 0.0 0.00 0.00 57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] +----------------------------------------------- + 0.00 0.00 28/56 void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) [8076] + 0.00 0.00 28/56 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8028] 0.0 0.00 0.00 56 DataNode* New >(unsigned long long) [8028] + 0.00 0.00 56/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 56/56 DataNode::DataNode() [8031] +----------------------------------------------- + 0.00 0.00 28/56 void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) [8076] + 0.00 0.00 28/56 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8029] 0.0 0.00 0.00 56 Array*>::Add(DataNode* const&) [8029] + 0.00 0.00 56/56 Array*>::Resize(int) [8030] +----------------------------------------------- + 0.00 0.00 56/56 Array*>::Add(DataNode* const&) [8029] +[8030] 0.0 0.00 0.00 56 Array*>::Resize(int) [8030] +----------------------------------------------- + 0.00 0.00 56/56 DataNode* New >(unsigned long long) [8028] +[8031] 0.0 0.00 0.00 56 DataNode::DataNode() [8031] + 0.00 0.00 56/720 NoCopy::NoCopy() [7962] + 0.00 0.00 56/2318 String::String() [7941] + 0.00 0.00 56/692 Array::Array() [7963] +----------------------------------------------- + 0.00 0.00 50/50 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) [104] +[8032] 0.0 0.00 0.00 50 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::size() const [8032] +----------------------------------------------- + 0.00 0.00 2/48 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base*&) [8348] + 0.00 0.00 3/48 std::pair::pair >*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node >*&, std::_Rb_tree_node_base*&) [8285] + 0.00 0.00 7/48 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base* const&) [8159] + 0.00 0.00 36/48 std::pair::pair*>*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node*>*&, std::_Rb_tree_node_base*&) [8058] +[8033] 0.0 0.00 0.00 48 std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) [8033] +----------------------------------------------- + 0.00 0.00 46/46 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] +[8034] 0.0 0.00 0.00 46 std::operator==(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) [8034] +----------------------------------------------- + 0.00 0.00 43/43 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] +[8035] 0.0 0.00 0.00 43 std::pair*>, bool>::pair*>, bool, true>(std::_Rb_tree_iterator*>&&, bool&&) [8035] + 0.00 0.00 43/93 std::_Rb_tree_iterator*>&& std::forward*> >(std::remove_reference*> >::type&) [8019] + 0.00 0.00 43/43 bool&& std::forward(std::remove_reference::type&) [8039] +----------------------------------------------- + 0.00 0.00 43/43 std::set*, std::less*>, std::allocator*> >::insert(DataNode* const&) [97] +[8036] 0.0 0.00 0.00 43 std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) [8036] + 0.00 0.00 43/43 std::_Rb_tree_iterator*>& std::forward*>&>(std::remove_reference*>&>::type&) [8037] + 0.00 0.00 43/208077 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) [7926] + 0.00 0.00 43/43 bool& std::forward(std::remove_reference::type&) [8038] +----------------------------------------------- + 0.00 0.00 43/43 std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) [8036] +[8037] 0.0 0.00 0.00 43 std::_Rb_tree_iterator*>& std::forward*>&>(std::remove_reference*>&>::type&) [8037] +----------------------------------------------- + 0.00 0.00 43/43 std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) [8036] +[8038] 0.0 0.00 0.00 43 bool& std::forward(std::remove_reference::type&) [8038] +----------------------------------------------- + 0.00 0.00 43/43 std::pair*>, bool>::pair*>, bool, true>(std::_Rb_tree_iterator*>&&, bool&&) [8035] +[8039] 0.0 0.00 0.00 43 bool&& std::forward(std::remove_reference::type&) [8039] +----------------------------------------------- + 0.00 0.00 3/40 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 6/40 DynOS_Pack_GetCount() [8161] + 0.00 0.00 31/40 DynOS_Pack_GetFromIndex(int) [8069] +[8040] 0.0 0.00 0.00 40 Array::Count() const [8040] +----------------------------------------------- + 0.00 0.00 39/39 Array::~Array() [8043] +[8041] 0.0 0.00 0.00 39 Array::Clear() [8041] +----------------------------------------------- + 0.00 0.00 39/39 __static_initialization_and_destruction_0(int, int) [8316] +[8042] 0.0 0.00 0.00 39 Array::Array() [8042] +----------------------------------------------- + 0.00 0.00 39/39 __tcf_0 [9086] +[8043] 0.0 0.00 0.00 39 Array::~Array() [8043] + 0.00 0.00 39/39 Array::Clear() [8041] +----------------------------------------------- + 0.00 0.00 38/38 std::pair::pair(void*&&, void*&&) [8108] +[8044] 0.0 0.00 0.00 38 void*&& std::forward(std::remove_reference::type&) [8044] +----------------------------------------------- + 0.00 0.00 37/37 std::_Rb_tree_node >::_M_valptr() [8047] +[8045] 0.0 0.00 0.00 37 __gnu_cxx::__aligned_membuf >::_M_ptr() [8045] + 0.00 0.00 37/37 __gnu_cxx::__aligned_membuf >::_M_addr() [8046] +----------------------------------------------- + 0.00 0.00 37/37 __gnu_cxx::__aligned_membuf >::_M_ptr() [8045] +[8046] 0.0 0.00 0.00 37 __gnu_cxx::__aligned_membuf >::_M_addr() [8046] +----------------------------------------------- + 0.00 0.00 4/37 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) [8223] + 0.00 0.00 4/37 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] + 0.00 0.00 29/37 std::_Rb_tree_iterator >::operator*() const [8074] +[8047] 0.0 0.00 0.00 37 std::_Rb_tree_node >::_M_valptr() [8047] + 0.00 0.00 37/37 __gnu_cxx::__aligned_membuf >::_M_ptr() [8045] +----------------------------------------------- + 0.00 0.00 36/36 std::allocator_traits*> > >::deallocate(std::allocator*> >&, std::_Rb_tree_node*>*, unsigned long) [8054] +[8048] 0.0 0.00 0.00 36 __gnu_cxx::new_allocator*> >::deallocate(std::_Rb_tree_node*>*, unsigned long) [8048] +----------------------------------------------- + 0.00 0.00 36/36 void std::allocator_traits*> > >::destroy*>(std::allocator*> >&, DataNode**) [8055] +[8049] 0.0 0.00 0.00 36 void __gnu_cxx::new_allocator*> >::destroy*>(DataNode**) [8049] +----------------------------------------------- + 0.00 0.00 36/36 std::allocator_traits*> > >::allocate(std::allocator*> >&, unsigned long) [8056] +[8050] 0.0 0.00 0.00 36 __gnu_cxx::new_allocator*> >::allocate(unsigned long, void const*) [8050] + 0.00 0.00 36/36 __gnu_cxx::new_allocator*> >::max_size() const [8052] +----------------------------------------------- + 0.00 0.00 36/36 void std::allocator_traits*> > >::construct*, DataNode* const&>(std::allocator*> >&, DataNode**, DataNode* const&) [8057] +[8051] 0.0 0.00 0.00 36 void __gnu_cxx::new_allocator*> >::construct*, DataNode* const&>(DataNode**, DataNode* const&) [8051] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 36/17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 36/36 __gnu_cxx::new_allocator*> >::allocate(unsigned long, void const*) [8050] +[8052] 0.0 0.00 0.00 36 __gnu_cxx::new_allocator*> >::max_size() const [8052] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) [120] +[8053] 0.0 0.00 0.00 36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::operator()* const&>(DataNode* const&) const [8053] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 36/36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) [8063] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_put_node(std::_Rb_tree_node*>*) [8061] +[8054] 0.0 0.00 0.00 36 std::allocator_traits*> > >::deallocate(std::allocator*> >&, std::_Rb_tree_node*>*, unsigned long) [8054] + 0.00 0.00 36/36 __gnu_cxx::new_allocator*> >::deallocate(std::_Rb_tree_node*>*, unsigned long) [8048] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) [8064] +[8055] 0.0 0.00 0.00 36 void std::allocator_traits*> > >::destroy*>(std::allocator*> >&, DataNode**) [8055] + 0.00 0.00 36/36 void __gnu_cxx::new_allocator*> >::destroy*>(DataNode**) [8049] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_node() [8060] +[8056] 0.0 0.00 0.00 36 std::allocator_traits*> > >::allocate(std::allocator*> >&, unsigned long) [8056] + 0.00 0.00 36/36 __gnu_cxx::new_allocator*> >::allocate(unsigned long, void const*) [8050] +----------------------------------------------- + 0.00 0.00 36/36 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] +[8057] 0.0 0.00 0.00 36 void std::allocator_traits*> > >::construct*, DataNode* const&>(std::allocator*> >&, DataNode**, DataNode* const&) [8057] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 36/36 void __gnu_cxx::new_allocator*> >::construct*, DataNode* const&>(DataNode**, DataNode* const&) [8051] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] +[8058] 0.0 0.00 0.00 36 std::pair::pair*>*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node*>*&, std::_Rb_tree_node_base*&) [8058] + 0.00 0.00 36/36 std::_Rb_tree_node*>*& std::forward*>*&>(std::remove_reference*>*&>::type&) [8066] + 0.00 0.00 36/48 std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) [8033] +----------------------------------------------- + 0.00 0.00 36/36 std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) [98] +[8059] 0.0 0.00 0.00 36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::_Alloc_node(std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >&) [8059] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) [8063] +[8060] 0.0 0.00 0.00 36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_node() [8060] + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() [8011] + 0.00 0.00 36/36 std::allocator_traits*> > >::allocate(std::allocator*> >&, unsigned long) [8056] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) [8062] +[8061] 0.0 0.00 0.00 36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_put_node(std::_Rb_tree_node*>*) [8061] + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() [8011] + 0.00 0.00 36/36 std::allocator_traits*> > >::deallocate(std::allocator*> >&, std::_Rb_tree_node*>*, unsigned long) [8054] +----------------------------------------------- + 0.00 0.00 11/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] + 0.00 0.00 25/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>) [8097] +[8062] 0.0 0.00 0.00 36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) [8062] + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) [8064] + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_put_node(std::_Rb_tree_node*>*) [8061] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::operator()* const&>(DataNode* const&) const [8053] +[8063] 0.0 0.00 0.00 36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) [8063] + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_node() [8060] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 36/36 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) [8062] +[8064] 0.0 0.00 0.00 36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) [8064] + 0.00 0.00 36/72 std::_Rb_tree_node*>::_M_valptr() [8024] + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() [8011] + 0.00 0.00 36/36 void std::allocator_traits*> > >::destroy*>(std::allocator*> >&, DataNode**) [8055] +----------------------------------------------- + 0.00 0.00 36/36 std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) [8063] +[8065] 0.0 0.00 0.00 36 void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) [8065] + 0.00 0.00 36/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 36/252 DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) [8001] + 0.00 0.00 36/72 std::_Rb_tree_node*>::_M_valptr() [8024] + 0.00 0.00 36/36 void std::allocator_traits*> > >::construct*, DataNode* const&>(std::allocator*> >&, DataNode**, DataNode* const&) [8057] + 0.00 0.00 36/144 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() [8011] +----------------------------------------------- + 0.00 0.00 36/36 std::pair::pair*>*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node*>*&, std::_Rb_tree_node_base*&) [8058] +[8066] 0.0 0.00 0.00 36 std::_Rb_tree_node*>*& std::forward*>*&>(std::remove_reference*>*&>::type&) [8066] +----------------------------------------------- + 0.00 0.00 3/34 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] + 0.00 0.00 31/34 DynOS_Pack_GetFromIndex(int) [8069] +[8067] 0.0 0.00 0.00 34 Array::operator[](int) [8067] +----------------------------------------------- + 0.00 0.00 7/32 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] + 0.00 0.00 25/32 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] +[8068] 0.0 0.00 0.00 32 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::begin() [8068] + 0.00 0.00 32/623180 std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [7924] +----------------------------------------------- + 0.00 0.00 7/31 dynos_pack_set_enabled [96] + 0.00 0.00 9/31 dynos_pack_get_enabled [128] + 0.00 0.00 15/31 dynos_pack_get_name [127] +[8069] 0.0 0.00 0.00 31 DynOS_Pack_GetFromIndex(int) [8069] + 0.00 0.00 31/40 Array::Count() const [8040] + 0.00 0.00 31/34 Array::operator[](int) [8067] +----------------------------------------------- + 0.00 0.00 31/31 Array::~Array() [8071] +[8070] 0.0 0.00 0.00 31 Array::Clear() [8070] +----------------------------------------------- + 0.00 0.00 3/31 GfxData::~GfxData() [8277] + 0.00 0.00 28/31 DataNode::~DataNode() [8090] +[8071] 0.0 0.00 0.00 31 Array::~Array() [8071] + 0.00 0.00 31/31 Array::Clear() [8070] +----------------------------------------------- + 0.00 0.00 5/31 DynOS_Tex_Upload(DataNode*, GfxRenderingAPI*, int, int) [8190] + 0.00 0.00 26/31 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8072] 0.0 0.00 0.00 31 Array::begin() [8072] +----------------------------------------------- + 0.00 0.00 3/31 GfxData::~GfxData() [8277] + 0.00 0.00 28/31 DataNode::~DataNode() [8090] +[8073] 0.0 0.00 0.00 31 NoCopy::~NoCopy() [8073] +----------------------------------------------- + 0.00 0.00 29/29 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8074] 0.0 0.00 0.00 29 std::_Rb_tree_iterator >::operator*() const [8074] + 0.00 0.00 29/37 std::_Rb_tree_node >::_M_valptr() [8047] +----------------------------------------------- + 0.00 0.00 3/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node >*) [8222] + 0.00 0.00 3/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 3/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] + 0.00 0.00 4/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] + 0.00 0.00 16/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) [8118] +[8075] 0.0 0.00 0.00 29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() [8075] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8076] 0.0 0.00 0.00 28 void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) [8076] + 0.00 0.00 28/56 DataNode* New >(unsigned long long) [8028] + 0.00 0.00 28/90 String::operator=(String const&) [8020] + 0.00 0.00 28/56 Array*>::Add(DataNode* const&) [8029] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[8077] 0.0 0.00 0.00 28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] + 0.00 0.00 28/56 DataNode* New >(unsigned long long) [8028] + 0.00 0.00 28/28 TexData* New(unsigned long long) [8078] + 0.00 0.00 28/2287 String::Read(_IO_FILE*) [7942] + 0.00 0.00 28/28 Array::Read(_IO_FILE*) [8085] + 0.00 0.00 28/28 Array::Empty() const [8091] + 0.00 0.00 28/28 Array::operator=(Array const&) [8088] + 0.00 0.00 28/28 Array::~Array() [8087] + 0.00 0.00 28/56 Array*>::Add(DataNode* const&) [8029] + 0.00 0.00 26/26 Array::Count() const [8093] + 0.00 0.00 26/31 Array::begin() [8072] + 0.00 0.00 26/26 Array::Array(unsigned char const*, unsigned char const*) [8092] + 0.00 0.00 2/58 Array::Array() [8026] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8078] 0.0 0.00 0.00 28 TexData* New(unsigned long long) [8078] + 0.00 0.00 28/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 28/28 TexData::TexData() [8089] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Gfx_Free(GfxData*) [8229] +[8079] 0.0 0.00 0.00 28 void Delete(TexData*&) [8079] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Gfx_Free(GfxData*) [8229] +[8080] 0.0 0.00 0.00 28 void Delete >(DataNode*&) [8080] + 0.00 0.00 28/28 DataNode::~DataNode() [8090] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8081] 0.0 0.00 0.00 28 Array::Add(String const&) [8081] + 0.00 0.00 28/28 Array::Resize(int) [8082] + 0.00 0.00 28/90 String::operator=(String const&) [8020] +----------------------------------------------- + 0.00 0.00 28/28 Array::Add(String const&) [8081] +[8082] 0.0 0.00 0.00 28 Array::Resize(int) [8082] +----------------------------------------------- + 0.00 0.00 12/28 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 16/28 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8083] 0.0 0.00 0.00 28 Array*>::end() [8083] +----------------------------------------------- + 0.00 0.00 12/28 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 16/28 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8084] 0.0 0.00 0.00 28 Array*>::begin() [8084] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8085] 0.0 0.00 0.00 28 Array::Read(_IO_FILE*) [8085] + 0.00 0.00 28/82 Array::Resize(int) [8021] +----------------------------------------------- + 0.00 0.00 28/28 Array::~Array() [8087] +[8086] 0.0 0.00 0.00 28 Array::Clear() [8086] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8087] 0.0 0.00 0.00 28 Array::~Array() [8087] + 0.00 0.00 28/28 Array::Clear() [8086] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8088] 0.0 0.00 0.00 28 Array::operator=(Array const&) [8088] + 0.00 0.00 28/82 Array::Resize(int) [8021] +----------------------------------------------- + 0.00 0.00 28/28 TexData* New(unsigned long long) [8078] +[8089] 0.0 0.00 0.00 28 TexData::TexData() [8089] + 0.00 0.00 56/58 Array::Array() [8026] + 0.00 0.00 28/720 NoCopy::NoCopy() [7962] +----------------------------------------------- + 0.00 0.00 28/28 void Delete >(DataNode*&) [8080] +[8090] 0.0 0.00 0.00 28 DataNode::~DataNode() [8090] + 0.00 0.00 28/31 Array::~Array() [8071] + 0.00 0.00 28/31 NoCopy::~NoCopy() [8073] +----------------------------------------------- + 0.00 0.00 28/28 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8091] 0.0 0.00 0.00 28 Array::Empty() const [8091] +----------------------------------------------- + 0.00 0.00 26/26 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8092] 0.0 0.00 0.00 26 Array::Array(unsigned char const*, unsigned char const*) [8092] + 0.00 0.00 26/82 Array::Resize(int) [8021] +----------------------------------------------- + 0.00 0.00 26/26 DynOS_Tex_Load(_IO_FILE*, GfxData*) [8077] +[8093] 0.0 0.00 0.00 26 Array::Count() const [8093] +----------------------------------------------- + 1760 _RelocateGraphNodePointers(GraphNode*, unsigned long long) [8094] + 0.00 0.00 25/25 DynOS_Geo_GetGraphNode(void const*, bool) [7979] +[8094] 0.0 0.00 0.00 25+1760 _RelocateGraphNodePointers(GraphNode*, unsigned long long) [8094] + 1760 _RelocateGraphNodePointers(GraphNode*, unsigned long long) [8094] +----------------------------------------------- + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] +[8095] 0.0 0.00 0.00 25 std::_Rb_tree_const_iterator*>::operator++(int) [8095] +----------------------------------------------- + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) [103] +[8096] 0.0 0.00 0.00 25 std::pair*>, std::_Rb_tree_iterator*> >::pair*>, std::_Rb_tree_iterator*>, true>(std::_Rb_tree_iterator*>&&, std::_Rb_tree_iterator*>&&) [8096] + 0.00 0.00 50/93 std::_Rb_tree_iterator*>&& std::forward*> >(std::remove_reference*> >::type&) [8019] +----------------------------------------------- + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] +[8097] 0.0 0.00 0.00 25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>) [8097] + 0.00 0.00 25/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) [8062] +----------------------------------------------- + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) [104] +[8098] 0.0 0.00 0.00 25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) [8098] + 0.00 0.00 50/207988 std::operator!=(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) [7929] + 0.00 0.00 46/208077 std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) [7926] + 0.00 0.00 46/46 std::operator==(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) [8034] + 0.00 0.00 25/32 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::begin() [8068] + 0.00 0.00 25/25 std::_Rb_tree_const_iterator*>::operator++(int) [8095] + 0.00 0.00 25/25 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>) [8097] + 0.00 0.00 21/415074 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() [7925] +----------------------------------------------- + 0.00 0.00 1/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::~_Rb_tree() [8358] + 0.00 0.00 2/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() [8300] + 0.00 0.00 3/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 3/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] + 0.00 0.00 16/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) [8118] +[8099] 0.0 0.00 0.00 25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() [8099] +----------------------------------------------- + 0.00 0.00 24/24 GfxData::GfxData() [8187] +[8100] 0.0 0.00 0.00 24 Array*>::Array() [8100] +----------------------------------------------- + 0.00 0.00 24/24 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8101] 0.0 0.00 0.00 24 String::begin() const [8101] +----------------------------------------------- + 0.00 0.00 3/20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] + 0.00 0.00 3/20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 14/20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] +[8102] 0.0 0.00 0.00 20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base*) [8102] +----------------------------------------------- + 0.00 0.00 4/20 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] + 0.00 0.00 4/20 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] + 0.00 0.00 4/20 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] + 0.00 0.00 4/20 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8212] + 0.00 0.00 4/20 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] +[8103] 0.0 0.00 0.00 20 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) [8103] +----------------------------------------------- + 0.00 0.00 4/20 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] + 0.00 0.00 4/20 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] + 0.00 0.00 4/20 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] + 0.00 0.00 4/20 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8212] + 0.00 0.00 4/20 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] +[8104] 0.0 0.00 0.00 20 std::tuple<>&& std::forward >(std::remove_reference >::type&) [8104] +----------------------------------------------- + 0.00 0.00 4/20 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] + 0.00 0.00 4/20 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] + 0.00 0.00 4/20 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] + 0.00 0.00 4/20 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8212] + 0.00 0.00 4/20 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] +[8105] 0.0 0.00 0.00 20 std::tuple&& std::forward >(std::remove_reference >::type&) [8105] +----------------------------------------------- + 0.00 0.00 19/19 DynOS_Geo_GetGraphNode(void const*, bool) [7979] +[8106] 0.0 0.00 0.00 19 Array >::Add(std::pair const&) [8106] + 0.00 0.00 19/19 Array >::Resize(int) [8107] + 0.00 0.00 19/19 std::pair::operator=(std::pair const&) [8109] +----------------------------------------------- + 0.00 0.00 19/19 Array >::Add(std::pair const&) [8106] +[8107] 0.0 0.00 0.00 19 Array >::Resize(int) [8107] +----------------------------------------------- + 0.00 0.00 19/19 DynOS_Geo_GetGraphNode(void const*, bool) [7979] +[8108] 0.0 0.00 0.00 19 std::pair::pair(void*&&, void*&&) [8108] + 0.00 0.00 38/38 void*&& std::forward(std::remove_reference::type&) [8044] +----------------------------------------------- + 0.00 0.00 19/19 Array >::Add(std::pair const&) [8106] +[8109] 0.0 0.00 0.00 19 std::pair::operator=(std::pair const&) [8109] +----------------------------------------------- + 0.00 0.00 3/19 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 16/19 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) [8118] +[8110] 0.0 0.00 0.00 19 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] + 0.00 0.00 19/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] + 0.00 0.00 17/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] + 0.00 0.00 17/382 std::less::operator()(void const*, void const*) const [7984] + 0.00 0.00 14/20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base*) [8102] + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base*) [8147] +----------------------------------------------- + 0.00 0.00 3/19 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] + 0.00 0.00 16/19 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8111] 0.0 0.00 0.00 19 std::operator==(std::_Rb_tree_iterator > const&, std::_Rb_tree_iterator > const&) [8111] +----------------------------------------------- + 0.00 0.00 18/18 GfxData::GfxData() [8187] +[8112] 0.0 0.00 0.00 18 Array*>::Array() [8112] +----------------------------------------------- + 0.00 0.00 3/18 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] + 0.00 0.00 15/18 dynos_pack_get_name [127] +[8113] 0.0 0.00 0.00 18 String::begin() [8113] +----------------------------------------------- + 0.00 0.00 2/18 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] + 0.00 0.00 16/18 std::map, std::allocator > >::end() [8116] +[8114] 0.0 0.00 0.00 18 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() [8114] + 0.00 0.00 18/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] +----------------------------------------------- + 0.00 0.00 16/16 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8115] 0.0 0.00 0.00 16 std::map, std::allocator > >::lower_bound(void const* const&) [8115] + 0.00 0.00 16/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) [8118] +----------------------------------------------- + 0.00 0.00 16/16 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8116] 0.0 0.00 0.00 16 std::map, std::allocator > >::end() [8116] + 0.00 0.00 16/18 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() [8114] +----------------------------------------------- + 0.00 0.00 3/16 DynOS_Actor_Override(void**) [7958] + 0.00 0.00 6/16 DynOS_Actor_Valid(void const*, ActorGfx&) [100] + 0.00 0.00 7/16 DynOS_Actor_Invalid(void const*, int) [105] +[8117] 0.0 0.00 0.00 16 std::map, std::allocator > >::operator[](void const* const&) [8117] + 0.00 0.00 29/29 std::_Rb_tree_iterator >::operator*() const [8074] + 0.00 0.00 16/16 std::map, std::allocator > >::lower_bound(void const* const&) [8115] + 0.00 0.00 16/16 std::map, std::allocator > >::end() [8116] + 0.00 0.00 16/19 std::operator==(std::_Rb_tree_iterator > const&, std::_Rb_tree_iterator > const&) [8111] + 0.00 0.00 13/13 std::map, std::allocator > >::key_comp() const [8131] + 0.00 0.00 13/382 std::less::operator()(void const*, void const*) const [7984] + 0.00 0.00 4/4 std::tuple::tuple(void const* const&) [8217] + 0.00 0.00 4/15 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_iterator > const&) [8120] + 0.00 0.00 4/4 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] +----------------------------------------------- + 0.00 0.00 16/16 std::map, std::allocator > >::lower_bound(void const* const&) [8115] +[8118] 0.0 0.00 0.00 16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) [8118] + 0.00 0.00 16/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() [8075] + 0.00 0.00 16/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() [8099] + 0.00 0.00 16/19 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] +----------------------------------------------- + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) [8223] + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) [8219] + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_node() [8218] + 0.00 0.00 4/16 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] +[8119] 0.0 0.00 0.00 16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() [8119] +----------------------------------------------- + 0.00 0.00 4/15 std::map, std::allocator > >::operator[](void const* const&) [8117] + 0.00 0.00 5/15 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] + 0.00 0.00 6/15 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) [8292] +[8120] 0.0 0.00 0.00 15 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_iterator > const&) [8120] +----------------------------------------------- + 0.00 0.00 14/14 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[8121] 0.0 0.00 0.00 14 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] + 0.00 0.00 14/14 DataNode* New >(unsigned long long) [8124] + 0.00 0.00 14/2287 String::Read(_IO_FILE*) [7942] + 0.00 0.00 14/14 Lights1* New(unsigned long long) [8123] + 0.00 0.00 14/14 Lights1 ReadBytes(_IO_FILE*) [8125] + 0.00 0.00 14/14 Array*>::Add(DataNode* const&) [8126] +----------------------------------------------- + 0.00 0.00 4/14 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] + 0.00 0.00 4/14 DynOS_Pack_DeactivateActor(int, std::pair&) [106] + 0.00 0.00 6/14 DynOS_Pack_ActivateActor(int, std::pair&) [101] +[8122] 0.0 0.00 0.00 14 DynOS_Builtin_Actor_GetFromName(char const*) [8122] +----------------------------------------------- + 0.00 0.00 14/14 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] +[8123] 0.0 0.00 0.00 14 Lights1* New(unsigned long long) [8123] + 0.00 0.00 14/17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 14/14 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] +[8124] 0.0 0.00 0.00 14 DataNode* New >(unsigned long long) [8124] + 0.00 0.00 14/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 14/14 DataNode::DataNode() [8128] +----------------------------------------------- + 0.00 0.00 14/14 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] +[8125] 0.0 0.00 0.00 14 Lights1 ReadBytes(_IO_FILE*) [8125] +----------------------------------------------- + 0.00 0.00 14/14 DynOS_Lights_Load(_IO_FILE*, GfxData*) [8121] +[8126] 0.0 0.00 0.00 14 Array*>::Add(DataNode* const&) [8126] + 0.00 0.00 14/14 Array*>::Resize(int) [8127] +----------------------------------------------- + 0.00 0.00 14/14 Array*>::Add(DataNode* const&) [8126] +[8127] 0.0 0.00 0.00 14 Array*>::Resize(int) [8127] +----------------------------------------------- + 0.00 0.00 14/14 DataNode* New >(unsigned long long) [8124] +[8128] 0.0 0.00 0.00 14 DataNode::DataNode() [8128] + 0.00 0.00 14/720 NoCopy::NoCopy() [7962] + 0.00 0.00 14/2318 String::String() [7941] + 0.00 0.00 14/692 Array::Array() [7963] +----------------------------------------------- + 0.00 0.00 3/13 DynOS_Pack_GetActor(PackData*, char const*) [8230] + 0.00 0.00 10/13 DynOS_Pack_SetEnabled(PackData*, bool) [95] +[8129] 0.0 0.00 0.00 13 Array >::end() [8129] +----------------------------------------------- + 0.00 0.00 3/13 DynOS_Pack_GetActor(PackData*, char const*) [8230] + 0.00 0.00 10/13 DynOS_Pack_SetEnabled(PackData*, bool) [95] +[8130] 0.0 0.00 0.00 13 Array >::begin() [8130] +----------------------------------------------- + 0.00 0.00 13/13 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8131] 0.0 0.00 0.00 13 std::map, std::allocator > >::key_comp() const [8131] + 0.00 0.00 13/13 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::key_comp() const [8132] +----------------------------------------------- + 0.00 0.00 13/13 std::map, std::allocator > >::key_comp() const [8131] +[8132] 0.0 0.00 0.00 13 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::key_comp() const [8132] +----------------------------------------------- + 0.00 0.00 3/12 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] + 0.00 0.00 9/12 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8133] 0.0 0.00 0.00 12 void Print(char const*, char const*) [8133] +----------------------------------------------- + 0.00 0.00 3/12 DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) [8234] + 0.00 0.00 9/12 Array*>::~Array() [8145] +[8134] 0.0 0.00 0.00 12 Array*>::Clear() [8134] +----------------------------------------------- + 0.00 0.00 12/12 Array*>::~Array() [8136] +[8135] 0.0 0.00 0.00 12 Array*>::Clear() [8135] +----------------------------------------------- + 0.00 0.00 12/12 GfxData::~GfxData() [8277] +[8136] 0.0 0.00 0.00 12 Array*>::~Array() [8136] + 0.00 0.00 12/12 Array*>::Clear() [8135] +----------------------------------------------- + 0.00 0.00 12/12 GfxData::GfxData() [8187] +[8137] 0.0 0.00 0.00 12 Array::Array() [8137] +----------------------------------------------- + 0.00 0.00 10/10 DynOS_Pack_SetEnabled(PackData*, bool) [95] +[8138] 0.0 0.00 0.00 10 DynOS_Actor_Override_All() [8138] + 0.00 0.00 524/995 DynOS_Actor_Override(void**) [7958] + 0.00 0.00 444/450 DynOS_Geo_GetGraphNode(void const*, bool) [7979] + 0.00 0.00 4/8 std::initializer_list::begin() const [8149] + 0.00 0.00 4/4 std::initializer_list::end() const [8203] +----------------------------------------------- + 0.00 0.00 9/9 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8139] 0.0 0.00 0.00 9 DynOS_Read_Buffer(_IO_FILE*, GfxData*) [8139] + 0.00 0.00 9/9 char* New(unsigned long long) [8142] + 0.00 0.00 9/9 GetNearestIfDefPointer(char*) [8144] +----------------------------------------------- + 0.00 0.00 9/9 DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) [8320] +[8140] 0.0 0.00 0.00 9 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] + 0.00 0.00 2959/2959 String::Add(char) [7940] + 0.00 0.00 588/588 String::operator==(char const*) const [7968] + 0.00 0.00 308/308 String::Length() const [7991] + 0.00 0.00 140/140 String::Clear() [8012] + 0.00 0.00 65/71 String::String(char const*) [8025] + 0.00 0.00 28/28 void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) [8076] + 0.00 0.00 28/28 Array::Add(String const&) [8081] + 0.00 0.00 28/90 String::operator=(String const&) [8020] + 0.00 0.00 9/9 DynOS_Read_Buffer(_IO_FILE*, GfxData*) [8139] + 0.00 0.00 9/9 void Delete(char*&) [8143] + 0.00 0.00 9/12 void Print(char const*, char const*) [8133] +----------------------------------------------- + 0.00 0.00 3/9 ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) [108] + 0.00 0.00 6/9 DynOS_Gfx_GeneratePacks(char const*) [8297] +[8141] 0.0 0.00 0.00 9 DynOS_Actor_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8141] +----------------------------------------------- + 0.00 0.00 9/9 DynOS_Read_Buffer(_IO_FILE*, GfxData*) [8139] +[8142] 0.0 0.00 0.00 9 char* New(unsigned long long) [8142] + 0.00 0.00 4349/17755 operator new(unsigned long, void*) [7934] +----------------------------------------------- + 0.00 0.00 9/9 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +[8143] 0.0 0.00 0.00 9 void Delete(char*&) [8143] +----------------------------------------------- + 0.00 0.00 9/9 DynOS_Read_Buffer(_IO_FILE*, GfxData*) [8139] +[8144] 0.0 0.00 0.00 9 GetNearestIfDefPointer(char*) [8144] +----------------------------------------------- + 0.00 0.00 9/9 GfxData::~GfxData() [8277] +[8145] 0.0 0.00 0.00 9 Array*>::~Array() [8145] + 0.00 0.00 9/12 Array*>::Clear() [8134] +----------------------------------------------- + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] + 0.00 0.00 6/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) [8292] +[8146] 0.0 0.00 0.00 9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::size() const [8146] +----------------------------------------------- + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] +[8147] 0.0 0.00 0.00 9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base*) [8147] +----------------------------------------------- + 0.00 0.00 9/9 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [8162] +[8148] 0.0 0.00 0.00 9 __gnu_cxx::__enable_if::__value, bool>::__type std::operator==(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) [8148] + 0.00 0.00 3/3 std::char_traits::compare(char const*, char const*, unsigned long) [8281] +----------------------------------------------- + 0.00 0.00 4/8 DynOS_Actor_Override_All() [8138] + 0.00 0.00 4/8 std::initializer_list::end() const [8203] +[8149] 0.0 0.00 0.00 8 std::initializer_list::begin() const [8149] +----------------------------------------------- + 0.00 0.00 8/8 std::_Tuple_impl<0ul, void const* const&>::_M_head(std::_Tuple_impl<0ul, void const* const&>&) [8152] +[8150] 0.0 0.00 0.00 8 std::_Head_base<0ul, void const* const&, false>::_M_head(std::_Head_base<0ul, void const* const&, false>&) [8150] +----------------------------------------------- + 0.00 0.00 4/8 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(void const* const&) [8207] + 0.00 0.00 4/8 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) [8206] +[8151] 0.0 0.00 0.00 8 std::_Head_base<0ul, void const* const&, false>::_Head_base(void const* const&) [8151] +----------------------------------------------- + 0.00 0.00 4/8 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) [8206] + 0.00 0.00 4/8 void const* const& std::__get_helper<0ul, void const* const&>(std::_Tuple_impl<0ul, void const* const&>&) [8227] +[8152] 0.0 0.00 0.00 8 std::_Tuple_impl<0ul, void const* const&>::_M_head(std::_Tuple_impl<0ul, void const* const&>&) [8152] + 0.00 0.00 8/8 std::_Head_base<0ul, void const* const&, false>::_M_head(std::_Head_base<0ul, void const* const&, false>&) [8150] +----------------------------------------------- + 0.00 0.00 1/8 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] + 0.00 0.00 7/8 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [7971] +[8153] 0.0 0.00 0.00 8 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node_base const*) [8153] + 0.00 0.00 8/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] +----------------------------------------------- + 0.00 0.00 4/8 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) [8206] + 0.00 0.00 4/8 std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) [8214] +[8154] 0.0 0.00 0.00 8 void const* const& std::forward(std::remove_reference::type&) [8154] +----------------------------------------------- + 0.00 0.00 3/7 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 4/7 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8155] 0.0 0.00 0.00 7 Array*>::end() [8155] +----------------------------------------------- + 0.00 0.00 3/7 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 4/7 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8156] 0.0 0.00 0.00 7 Array*>::begin() [8156] +----------------------------------------------- + 0.00 0.00 3/7 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 4/7 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8157] 0.0 0.00 0.00 7 Array*>::end() [8157] +----------------------------------------------- + 0.00 0.00 3/7 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 4/7 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8158] 0.0 0.00 0.00 7 Array*>::begin() [8158] +----------------------------------------------- + 0.00 0.00 7/7 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] +[8159] 0.0 0.00 0.00 7 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base* const&) [8159] + 0.00 0.00 7/48 std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) [8033] +----------------------------------------------- + 0.00 0.00 7/7 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [7970] +[8160] 0.0 0.00 0.00 7 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base const*) [8160] +----------------------------------------------- + 0.00 0.00 6/6 dynos_pack_get_count [129] +[8161] 0.0 0.00 0.00 6 DynOS_Pack_GetCount() [8161] + 0.00 0.00 6/40 Array::Count() const [8040] +----------------------------------------------- + 0.00 0.00 3/6 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] + 0.00 0.00 3/6 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] +[8162] 0.0 0.00 0.00 6 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [8162] + 0.00 0.00 9/9 __gnu_cxx::__enable_if::__value, bool>::__type std::operator==(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) [8148] + 0.00 0.00 6/6 Array::begin() [8167] + 0.00 0.00 6/6 Array::end() [8166] +----------------------------------------------- + 0.00 0.00 3/6 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] + 0.00 0.00 3/6 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8163] 0.0 0.00 0.00 6 GfxData* New(unsigned long long) [8163] + 0.00 0.00 6/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 6/6 GfxData::GfxData() [8187] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8164] 0.0 0.00 0.00 6 GfxContext::GfxContext() [8164] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8165] 0.0 0.00 0.00 6 Array::Array() [8165] +----------------------------------------------- + 0.00 0.00 6/6 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [8162] +[8166] 0.0 0.00 0.00 6 Array::end() [8166] +----------------------------------------------- + 0.00 0.00 6/6 DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [8162] +[8167] 0.0 0.00 0.00 6 Array::begin() [8167] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8168] 0.0 0.00 0.00 6 Array*>::Array() [8168] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8169] 0.0 0.00 0.00 6 Array*>::Array() [8169] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8170] 0.0 0.00 0.00 6 Array*>::Array() [8170] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8171] 0.0 0.00 0.00 6 Array*>::Array() [8171] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8172] 0.0 0.00 0.00 6 Array*>::Array() [8172] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8173] 0.0 0.00 0.00 6 Array*>::Array() [8173] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8174] 0.0 0.00 0.00 6 Array*>::Array() [8174] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8175] 0.0 0.00 0.00 6 Array*>::Array() [8175] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8176] 0.0 0.00 0.00 6 Array*>::Array() [8176] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8177] 0.0 0.00 0.00 6 Array*>::Array() [8177] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8178] 0.0 0.00 0.00 6 Array >*>::Array() [8178] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8179] 0.0 0.00 0.00 6 Array >*>::Array() [8179] +----------------------------------------------- + 0.00 0.00 6/6 Array::~Array() [8181] +[8180] 0.0 0.00 0.00 6 Array::Clear() [8180] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::~GfxData() [8277] +[8181] 0.0 0.00 0.00 6 Array::~Array() [8181] + 0.00 0.00 6/6 Array::Clear() [8180] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8182] 0.0 0.00 0.00 6 Array >::Array() [8182] +----------------------------------------------- + 0.00 0.00 3/6 Array >::Add(std::pair const&) [8267] + 0.00 0.00 3/6 Array >::operator=(Array > const&) [8269] +[8183] 0.0 0.00 0.00 6 Array >::Resize(int) [8183] +----------------------------------------------- + 0.00 0.00 6/6 GfxData::GfxData() [8187] +[8184] 0.0 0.00 0.00 6 Array >::Array() [8184] +----------------------------------------------- + 0.00 0.00 6/6 Array >::~Array() [8186] +[8185] 0.0 0.00 0.00 6 Array >::Clear() [8185] +----------------------------------------------- + 0.00 0.00 6/6 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8186] 0.0 0.00 0.00 6 Array >::~Array() [8186] + 0.00 0.00 6/6 Array >::Clear() [8185] +----------------------------------------------- + 0.00 0.00 6/6 GfxData* New(unsigned long long) [8163] +[8187] 0.0 0.00 0.00 6 GfxData::GfxData() [8187] + 0.00 0.00 24/24 Array*>::Array() [8100] + 0.00 0.00 18/18 Array*>::Array() [8112] + 0.00 0.00 12/12 Array::Array() [8137] + 0.00 0.00 6/720 NoCopy::NoCopy() [7962] + 0.00 0.00 6/6 Array*>::Array() [8172] + 0.00 0.00 6/6 Array*>::Array() [8171] + 0.00 0.00 6/6 Array*>::Array() [8175] + 0.00 0.00 6/6 Array*>::Array() [8173] + 0.00 0.00 6/6 Array*>::Array() [8176] + 0.00 0.00 6/6 Array*>::Array() [8170] + 0.00 0.00 6/6 Array*>::Array() [8169] + 0.00 0.00 6/6 Array*>::Array() [8168] + 0.00 0.00 6/6 Array*>::Array() [8177] + 0.00 0.00 6/6 Array >*>::Array() [8178] + 0.00 0.00 6/6 Array >*>::Array() [8179] + 0.00 0.00 6/6 Array*>::Array() [8174] + 0.00 0.00 6/6 Array >::Array() [8182] + 0.00 0.00 6/6 Array >::Array() [8184] + 0.00 0.00 6/692 Array::Array() [7963] + 0.00 0.00 6/6 GfxContext::GfxContext() [8164] + 0.00 0.00 6/6 Array::Array() [8165] +----------------------------------------------- + 0.00 0.00 3/6 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] + 0.00 0.00 3/6 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] +[8188] 0.0 0.00 0.00 6 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::begin() [8188] + 0.00 0.00 6/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] +----------------------------------------------- + 0.00 0.00 6/6 std::pair >, std::_Rb_tree_iterator > >::pair >, std::_Rb_tree_iterator >, true>(std::_Rb_tree_iterator >&&, std::_Rb_tree_iterator >&&) [8286] +[8189] 0.0 0.00 0.00 6 std::_Rb_tree_iterator >&& std::forward > >(std::remove_reference > >::type&) [8189] +----------------------------------------------- + 0.00 0.00 5/5 DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) [17] +[8190] 0.0 0.00 0.00 5 DynOS_Tex_Upload(DataNode*, GfxRenderingAPI*, int, int) [8190] + 0.00 0.00 5/31 Array::begin() [8072] +----------------------------------------------- + 0.00 0.00 4/4 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8191] 0.0 0.00 0.00 4 DynOS_Builtin_Tex_GetFromName(char const*) [8191] +----------------------------------------------- + 0.00 0.00 4/4 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8192] 0.0 0.00 0.00 4 DynOS_Builtin_LvlCol_GetFromName(char const*) [8192] +----------------------------------------------- + 0.00 0.00 4/4 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8193] 0.0 0.00 0.00 4 DynOS_Builtin_LvlGeo_GetFromName(char const*) [8193] +----------------------------------------------- + 0.00 0.00 4/4 GetPointerFromData(GfxData*, String const&, unsigned int) [7946] +[8194] 0.0 0.00 0.00 4 DynOS_Builtin_ScriptPtr_GetFromName(char const*) [8194] +----------------------------------------------- + 0.00 0.00 4/4 Array >::~Array() [8268] +[8195] 0.0 0.00 0.00 4 Array >::Clear() [8195] +----------------------------------------------- + 0.00 0.00 1/4 __static_initialization_and_destruction_0(int, int) [8313] + 0.00 0.00 3/4 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] +[8196] 0.0 0.00 0.00 4 Array >::Array() [8196] +----------------------------------------------- + 0.00 0.00 4/4 std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) [8214] +[8197] 0.0 0.00 0.00 4 ActorGfx::ActorGfx() [8197] +----------------------------------------------- + 0.00 0.00 4/4 std::allocator_traits > > >::deallocate(std::allocator > >&, std::_Rb_tree_node >*, unsigned long) [8209] +[8198] 0.0 0.00 0.00 4 __gnu_cxx::new_allocator > >::deallocate(std::_Rb_tree_node >*, unsigned long) [8198] +----------------------------------------------- + 0.00 0.00 4/4 void std::allocator_traits > > >::destroy >(std::allocator > >&, std::pair*) [8210] +[8199] 0.0 0.00 0.00 4 void __gnu_cxx::new_allocator > >::destroy >(std::pair*) [8199] +----------------------------------------------- + 0.00 0.00 4/4 std::allocator_traits > > >::allocate(std::allocator > >&, unsigned long) [8211] +[8200] 0.0 0.00 0.00 4 __gnu_cxx::new_allocator > >::allocate(unsigned long, void const*) [8200] + 0.00 0.00 4/4 __gnu_cxx::new_allocator > >::max_size() const [8202] +----------------------------------------------- + 0.00 0.00 4/4 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8212] +[8201] 0.0 0.00 0.00 4 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] + 0.00 0.00 4/20 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) [8103] + 0.00 0.00 4/20 std::tuple&& std::forward >(std::remove_reference >::type&) [8105] + 0.00 0.00 4/4 std::tuple::tuple(std::tuple&&) [8216] + 0.00 0.00 4/20 std::tuple<>&& std::forward >(std::remove_reference >::type&) [8104] + 0.00 0.00 4/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 4/4 std::pair::pair(std::piecewise_construct_t, std::tuple, std::tuple<>) [8215] +----------------------------------------------- + 0.00 0.00 4/4 __gnu_cxx::new_allocator > >::allocate(unsigned long, void const*) [8200] +[8202] 0.0 0.00 0.00 4 __gnu_cxx::new_allocator > >::max_size() const [8202] +----------------------------------------------- + 0.00 0.00 4/4 DynOS_Actor_Override_All() [8138] +[8203] 0.0 0.00 0.00 4 std::initializer_list::end() const [8203] + 0.00 0.00 4/8 std::initializer_list::begin() const [8149] + 0.00 0.00 4/4 std::initializer_list::size() const [8204] +----------------------------------------------- + 0.00 0.00 4/4 std::initializer_list::end() const [8203] +[8204] 0.0 0.00 0.00 4 std::initializer_list::size() const [8204] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] +[8205] 0.0 0.00 0.00 4 std::_Rb_tree_const_iterator >::_M_const_cast() const [8205] + 0.00 0.00 4/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] +----------------------------------------------- + 0.00 0.00 4/4 std::tuple::tuple(std::tuple&&) [8216] +[8206] 0.0 0.00 0.00 4 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) [8206] + 0.00 0.00 4/8 std::_Tuple_impl<0ul, void const* const&>::_M_head(std::_Tuple_impl<0ul, void const* const&>&) [8152] + 0.00 0.00 4/8 void const* const& std::forward(std::remove_reference::type&) [8154] + 0.00 0.00 4/8 std::_Head_base<0ul, void const* const&, false>::_Head_base(void const* const&) [8151] +----------------------------------------------- + 0.00 0.00 4/4 std::tuple::tuple(void const* const&) [8217] +[8207] 0.0 0.00 0.00 4 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(void const* const&) [8207] + 0.00 0.00 4/8 std::_Head_base<0ul, void const* const&, false>::_Head_base(void const* const&) [8151] +----------------------------------------------- + 0.00 0.00 2/4 std::_Rb_tree_header::_Rb_tree_header() [8299] + 0.00 0.00 2/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() [8300] +[8208] 0.0 0.00 0.00 4 std::_Rb_tree_header::_M_reset() [8208] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) [8219] +[8209] 0.0 0.00 0.00 4 std::allocator_traits > > >::deallocate(std::allocator > >&, std::_Rb_tree_node >*, unsigned long) [8209] + 0.00 0.00 4/4 __gnu_cxx::new_allocator > >::deallocate(std::_Rb_tree_node >*, unsigned long) [8198] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) [8223] +[8210] 0.0 0.00 0.00 4 void std::allocator_traits > > >::destroy >(std::allocator > >&, std::pair*) [8210] + 0.00 0.00 4/4 void __gnu_cxx::new_allocator > >::destroy >(std::pair*) [8199] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_node() [8218] +[8211] 0.0 0.00 0.00 4 std::allocator_traits > > >::allocate(std::allocator > >&, unsigned long) [8211] + 0.00 0.00 4/4 __gnu_cxx::new_allocator > >::allocate(unsigned long, void const*) [8200] +----------------------------------------------- + 0.00 0.00 4/4 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] +[8212] 0.0 0.00 0.00 4 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8212] + 0.00 0.00 4/20 std::tuple<>&& std::forward >(std::remove_reference >::type&) [8104] + 0.00 0.00 4/20 std::tuple&& std::forward >(std::remove_reference >::type&) [8105] + 0.00 0.00 4/20 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) [8103] + 0.00 0.00 4/4 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) [113] +[8213] 0.0 0.00 0.00 4 std::_Rb_tree_iterator*>::operator--() [8213] +----------------------------------------------- + 0.00 0.00 4/4 std::pair::pair(std::piecewise_construct_t, std::tuple, std::tuple<>) [8215] +[8214] 0.0 0.00 0.00 4 std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) [8214] + 0.00 0.00 4/8 void const* const& std::forward(std::remove_reference::type&) [8154] + 0.00 0.00 4/4 std::tuple_element<0ul, std::tuple >::type& std::get<0ul, void const* const&>(std::tuple&) [8228] + 0.00 0.00 4/4 ActorGfx::ActorGfx() [8197] +----------------------------------------------- + 0.00 0.00 4/4 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] +[8215] 0.0 0.00 0.00 4 std::pair::pair(std::piecewise_construct_t, std::tuple, std::tuple<>) [8215] + 0.00 0.00 4/4 std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) [8214] +----------------------------------------------- + 0.00 0.00 4/4 void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8201] +[8216] 0.0 0.00 0.00 4 std::tuple::tuple(std::tuple&&) [8216] + 0.00 0.00 4/4 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) [8206] +----------------------------------------------- + 0.00 0.00 4/4 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8217] 0.0 0.00 0.00 4 std::tuple::tuple(void const* const&) [8217] + 0.00 0.00 4/4 std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(void const* const&) [8207] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] +[8218] 0.0 0.00 0.00 4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_node() [8218] + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() [8119] + 0.00 0.00 4/4 std::allocator_traits > > >::allocate(std::allocator > >&, unsigned long) [8211] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) [8220] +[8219] 0.0 0.00 0.00 4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) [8219] + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() [8119] + 0.00 0.00 4/4 std::allocator_traits > > >::deallocate(std::allocator > >&, std::_Rb_tree_node >*, unsigned long) [8209] +----------------------------------------------- + 0.00 0.00 1/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >) [8354] + 0.00 0.00 3/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] +[8220] 0.0 0.00 0.00 4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) [8220] + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) [8223] + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) [8219] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] +[8221] 0.0 0.00 0.00 4 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_node() [8218] + 0.00 0.00 4/20 std::tuple<>&& std::forward >(std::remove_reference >::type&) [8104] + 0.00 0.00 4/20 std::tuple&& std::forward >(std::remove_reference >::type&) [8105] + 0.00 0.00 4/20 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) [8103] + 0.00 0.00 4/4 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] +[8222] 0.0 0.00 0.00 4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node >*) [8222] + 0.00 0.00 4/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] + 0.00 0.00 3/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() [8075] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) [8220] +[8223] 0.0 0.00 0.00 4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) [8223] + 0.00 0.00 4/37 std::_Rb_tree_node >::_M_valptr() [8047] + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() [8119] + 0.00 0.00 4/4 void std::allocator_traits > > >::destroy >(std::allocator > >&, std::pair*) [8210] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] +[8224] 0.0 0.00 0.00 4 void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8224] + 0.00 0.00 4/17755 operator new(unsigned long, void*) [7934] + 0.00 0.00 4/20 std::tuple<>&& std::forward >(std::remove_reference >::type&) [8104] + 0.00 0.00 4/20 std::tuple&& std::forward >(std::remove_reference >::type&) [8105] + 0.00 0.00 4/20 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) [8103] + 0.00 0.00 4/37 std::_Rb_tree_node >::_M_valptr() [8047] + 0.00 0.00 4/16 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() [8119] + 0.00 0.00 4/4 void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8212] +----------------------------------------------- + 0.00 0.00 4/4 std::map, std::allocator > >::operator[](void const* const&) [8117] +[8225] 0.0 0.00 0.00 4 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] + 0.00 0.00 4/20 std::tuple<>&& std::forward >(std::remove_reference >::type&) [8104] + 0.00 0.00 4/20 std::tuple&& std::forward >(std::remove_reference >::type&) [8105] + 0.00 0.00 4/20 std::piecewise_construct_t const& std::forward(std::remove_reference::type&) [8103] + 0.00 0.00 4/4 std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8221] + 0.00 0.00 4/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] + 0.00 0.00 4/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node >*) [8222] +----------------------------------------------- + 0.00 0.00 4/4 std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8225] +[8226] 0.0 0.00 0.00 4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] + 0.00 0.00 4/4 std::_Rb_tree_const_iterator >::_M_const_cast() const [8205] + 0.00 0.00 4/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() [8075] + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::size() const [8146] + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_leftmost() [8287] + 0.00 0.00 1/8 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node_base const*) [8153] + 0.00 0.00 1/382 std::less::operator()(void const*, void const*) const [7984] + 0.00 0.00 1/1 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base*&) [8348] +----------------------------------------------- + 0.00 0.00 4/4 std::tuple_element<0ul, std::tuple >::type& std::get<0ul, void const* const&>(std::tuple&) [8228] +[8227] 0.0 0.00 0.00 4 void const* const& std::__get_helper<0ul, void const* const&>(std::_Tuple_impl<0ul, void const* const&>&) [8227] + 0.00 0.00 4/8 std::_Tuple_impl<0ul, void const* const&>::_M_head(std::_Tuple_impl<0ul, void const* const&>&) [8152] +----------------------------------------------- + 0.00 0.00 4/4 std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) [8214] +[8228] 0.0 0.00 0.00 4 std::tuple_element<0ul, std::tuple >::type& std::get<0ul, void const* const&>(std::tuple&) [8228] + 0.00 0.00 4/4 void const* const& std::__get_helper<0ul, void const* const&>(std::_Tuple_impl<0ul, void const* const&>&) [8227] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8229] 0.0 0.00 0.00 3 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 28/28 void Delete(TexData*&) [8079] + 0.00 0.00 28/28 void Delete >(DataNode*&) [8080] + 0.00 0.00 12/28 Array*>::begin() [8084] + 0.00 0.00 12/28 Array*>::end() [8083] + 0.00 0.00 6/399 Array*>::begin() [7983] + 0.00 0.00 6/405 Array*>::end() [7982] + 0.00 0.00 3/1632 Array*>::begin() [7945] + 0.00 0.00 3/1632 Array*>::end() [7944] + 0.00 0.00 3/1488 Array*>::begin() [7950] + 0.00 0.00 3/1488 Array*>::end() [7949] + 0.00 0.00 3/1488 Array*>::begin() [7952] + 0.00 0.00 3/1488 Array*>::end() [7951] + 0.00 0.00 3/1497 Array*>::begin() [7948] + 0.00 0.00 3/1497 Array*>::end() [7947] + 0.00 0.00 3/1358 Array*>::begin() [7957] + 0.00 0.00 3/1358 Array*>::end() [7956] + 0.00 0.00 3/289 Array*>::begin() [7999] + 0.00 0.00 3/289 Array*>::end() [7998] + 0.00 0.00 3/1358 Array*>::begin() [7955] + 0.00 0.00 3/1358 Array*>::end() [7954] + 0.00 0.00 3/3 Array*>::begin() [8253] + 0.00 0.00 3/3 Array*>::end() [8251] + 0.00 0.00 3/7 Array*>::begin() [8156] + 0.00 0.00 3/7 Array*>::end() [8155] + 0.00 0.00 3/7 Array*>::begin() [8158] + 0.00 0.00 3/7 Array*>::end() [8157] + 0.00 0.00 3/3 void Delete(GfxData*&) [8232] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [116] +[8230] 0.0 0.00 0.00 3 DynOS_Pack_GetActor(PackData*, char const*) [8230] + 0.00 0.00 3/13 Array >::begin() [8130] + 0.00 0.00 3/13 Array >::end() [8129] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Gfx_GeneratePacks(char const*) [8297] +[8231] 0.0 0.00 0.00 3 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] + 0.00 0.00 195/287 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) [8000] + 0.00 0.00 125/173 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) [8010] + 0.00 0.00 6/6 Array >::~Array() [8186] + 0.00 0.00 3/12 void Print(char const*, char const*) [8133] + 0.00 0.00 3/3 Array >::Array() [8275] + 0.00 0.00 3/6 GfxData* New(unsigned long long) [8163] + 0.00 0.00 3/3 Array >::Array(Array > const&) [8274] + 0.00 0.00 3/3 DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) [8234] + 0.00 0.00 3/3 DynOS_Gfx_Free(GfxData*) [8229] + 0.00 0.00 1/1 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*) [8319] + 0.00 0.00 1/1 DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) [8320] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Gfx_Free(GfxData*) [8229] +[8232] 0.0 0.00 0.00 3 void Delete(GfxData*&) [8232] + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +----------------------------------------------- + 0.00 0.00 3/3 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] +[8233] 0.0 0.00 0.00 3 std::__cxx11::basic_string, std::allocator > fstring<__gnu_cxx::__normal_iterator, std::allocator > >, char*>(char const*, __gnu_cxx::__normal_iterator, std::allocator > >, char*) [8233] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8234] 0.0 0.00 0.00 3 DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) [8234] + 0.00 0.00 3/399 Array*>::begin() [7983] + 0.00 0.00 3/405 Array*>::end() [7982] + 0.00 0.00 3/12 Array*>::Clear() [8134] +----------------------------------------------- + 0.00 0.00 3/3 Array::~Array() [8236] +[8235] 0.0 0.00 0.00 3 Array::Clear() [8235] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8236] 0.0 0.00 0.00 3 Array::~Array() [8236] + 0.00 0.00 3/3 Array::Clear() [8235] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] +[8237] 0.0 0.00 0.00 3 Array::Add(PackData const&) [8237] + 0.00 0.00 3/3 Array::Resize(int) [8238] + 0.00 0.00 3/3 PackData::operator=(PackData const&) [8279] +----------------------------------------------- + 0.00 0.00 3/3 Array::Add(PackData const&) [8237] +[8238] 0.0 0.00 0.00 3 Array::Resize(int) [8238] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8240] +[8239] 0.0 0.00 0.00 3 Array*>::Clear() [8239] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8240] 0.0 0.00 0.00 3 Array*>::~Array() [8240] + 0.00 0.00 3/3 Array*>::Clear() [8239] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8242] +[8241] 0.0 0.00 0.00 3 Array*>::Clear() [8241] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8242] 0.0 0.00 0.00 3 Array*>::~Array() [8242] + 0.00 0.00 3/3 Array*>::Clear() [8241] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8244] +[8243] 0.0 0.00 0.00 3 Array*>::Clear() [8243] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8244] 0.0 0.00 0.00 3 Array*>::~Array() [8244] + 0.00 0.00 3/3 Array*>::Clear() [8243] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8246] +[8245] 0.0 0.00 0.00 3 Array*>::Clear() [8245] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8246] 0.0 0.00 0.00 3 Array*>::~Array() [8246] + 0.00 0.00 3/3 Array*>::Clear() [8245] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8248] +[8247] 0.0 0.00 0.00 3 Array*>::Clear() [8247] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8248] 0.0 0.00 0.00 3 Array*>::~Array() [8248] + 0.00 0.00 3/3 Array*>::Clear() [8247] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8250] +[8249] 0.0 0.00 0.00 3 Array*>::Clear() [8249] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8250] 0.0 0.00 0.00 3 Array*>::~Array() [8250] + 0.00 0.00 3/3 Array*>::Clear() [8249] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Gfx_Free(GfxData*) [8229] +[8251] 0.0 0.00 0.00 3 Array*>::end() [8251] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8254] +[8252] 0.0 0.00 0.00 3 Array*>::Clear() [8252] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Gfx_Free(GfxData*) [8229] +[8253] 0.0 0.00 0.00 3 Array*>::begin() [8253] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8254] 0.0 0.00 0.00 3 Array*>::~Array() [8254] + 0.00 0.00 3/3 Array*>::Clear() [8252] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8256] +[8255] 0.0 0.00 0.00 3 Array*>::Clear() [8255] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8256] 0.0 0.00 0.00 3 Array*>::~Array() [8256] + 0.00 0.00 3/3 Array*>::Clear() [8255] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8258] +[8257] 0.0 0.00 0.00 3 Array*>::Clear() [8257] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8258] 0.0 0.00 0.00 3 Array*>::~Array() [8258] + 0.00 0.00 3/3 Array*>::Clear() [8257] +----------------------------------------------- + 0.00 0.00 3/3 Array*>::~Array() [8260] +[8259] 0.0 0.00 0.00 3 Array*>::Clear() [8259] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8260] 0.0 0.00 0.00 3 Array*>::~Array() [8260] + 0.00 0.00 3/3 Array*>::Clear() [8259] +----------------------------------------------- + 0.00 0.00 3/3 Array >*>::~Array() [8262] +[8261] 0.0 0.00 0.00 3 Array >*>::Clear() [8261] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8262] 0.0 0.00 0.00 3 Array >*>::~Array() [8262] + 0.00 0.00 3/3 Array >*>::Clear() [8261] +----------------------------------------------- + 0.00 0.00 3/3 Array >*>::~Array() [8264] +[8263] 0.0 0.00 0.00 3 Array >*>::Clear() [8263] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8264] 0.0 0.00 0.00 3 Array >*>::~Array() [8264] + 0.00 0.00 3/3 Array >*>::Clear() [8263] +----------------------------------------------- + 0.00 0.00 3/3 Array >::~Array() [8266] +[8265] 0.0 0.00 0.00 3 Array >::Clear() [8265] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8266] 0.0 0.00 0.00 3 Array >::~Array() [8266] + 0.00 0.00 3/3 Array >::Clear() [8265] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] +[8267] 0.0 0.00 0.00 3 Array >::Add(std::pair const&) [8267] + 0.00 0.00 3/6 Array >::Resize(int) [8183] + 0.00 0.00 3/3 std::pair::operator=(std::pair const&) [8284] +----------------------------------------------- + 0.00 0.00 3/3 PackData::~PackData() [8278] +[8268] 0.0 0.00 0.00 3 Array >::~Array() [8268] + 0.00 0.00 4/4 Array >::Clear() [8195] +----------------------------------------------- + 0.00 0.00 3/3 PackData::operator=(PackData const&) [8279] +[8269] 0.0 0.00 0.00 3 Array >::operator=(Array > const&) [8269] + 0.00 0.00 3/6 Array >::Resize(int) [8183] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] +[8270] 0.0 0.00 0.00 3 Array >::operator[](int) [8270] +----------------------------------------------- + 0.00 0.00 3/3 Array >::~Array() [8272] +[8271] 0.0 0.00 0.00 3 Array >::Clear() [8271] +----------------------------------------------- + 0.00 0.00 3/3 GfxData::~GfxData() [8277] +[8272] 0.0 0.00 0.00 3 Array >::~Array() [8272] + 0.00 0.00 3/3 Array >::Clear() [8271] +----------------------------------------------- + 0.00 0.00 3/3 Array >::Array(Array > const&) [8274] +[8273] 0.0 0.00 0.00 3 Array >::Resize(int) [8273] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8274] 0.0 0.00 0.00 3 Array >::Array(Array > const&) [8274] + 0.00 0.00 3/3 Array >::Resize(int) [8273] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8275] 0.0 0.00 0.00 3 Array >::Array() [8275] +----------------------------------------------- + 0.00 0.00 3/3 ScanPackBins(std::__cxx11::basic_string, std::allocator >) [117] +[8276] 0.0 0.00 0.00 3 String::operator[](int) [8276] +----------------------------------------------- + 0.00 0.00 3/3 void Delete(GfxData*&) [8232] +[8277] 0.0 0.00 0.00 3 GfxData::~GfxData() [8277] + 0.00 0.00 12/12 Array*>::~Array() [8136] + 0.00 0.00 9/9 Array*>::~Array() [8145] + 0.00 0.00 6/6 Array::~Array() [8181] + 0.00 0.00 3/3 Array::~Array() [8236] + 0.00 0.00 3/31 Array::~Array() [8071] + 0.00 0.00 3/3 Array >::~Array() [8272] + 0.00 0.00 3/3 Array >::~Array() [8266] + 0.00 0.00 3/3 Array*>::~Array() [8254] + 0.00 0.00 3/3 Array >*>::~Array() [8264] + 0.00 0.00 3/3 Array >*>::~Array() [8262] + 0.00 0.00 3/3 Array*>::~Array() [8260] + 0.00 0.00 3/3 Array*>::~Array() [8240] + 0.00 0.00 3/3 Array*>::~Array() [8242] + 0.00 0.00 3/3 Array*>::~Array() [8244] + 0.00 0.00 3/3 Array*>::~Array() [8258] + 0.00 0.00 3/3 Array*>::~Array() [8250] + 0.00 0.00 3/3 Array*>::~Array() [8256] + 0.00 0.00 3/3 Array*>::~Array() [8246] + 0.00 0.00 3/3 Array*>::~Array() [8248] + 0.00 0.00 3/31 NoCopy::~NoCopy() [8073] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [118] +[8278] 0.0 0.00 0.00 3 PackData::~PackData() [8278] + 0.00 0.00 3/3 Array >::~Array() [8268] +----------------------------------------------- + 0.00 0.00 3/3 Array::Add(PackData const&) [8237] +[8279] 0.0 0.00 0.00 3 PackData::operator=(PackData const&) [8279] + 0.00 0.00 3/90 String::operator=(String const&) [8020] + 0.00 0.00 3/3 Array >::operator=(Array > const&) [8269] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] +[8280] 0.0 0.00 0.00 3 Array >::Count() const [8280] +----------------------------------------------- + 0.00 0.00 3/3 __gnu_cxx::__enable_if::__value, bool>::__type std::operator==(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) [8148] +[8281] 0.0 0.00 0.00 3 std::char_traits::compare(char const*, char const*, unsigned long) [8281] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Actor_Invalid(void const*, int) [105] +[8282] 0.0 0.00 0.00 3 std::map, std::allocator > >::erase(void const* const&) [8282] + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) [8292] +----------------------------------------------- + 0.00 0.00 3/3 DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [115] +[8283] 0.0 0.00 0.00 3 std::pair::pair(char const*&, GfxData*&) [8283] + 0.00 0.00 3/3 char const*& std::forward(std::remove_reference::type&) [8295] + 0.00 0.00 3/3 GfxData*& std::forward(std::remove_reference::type&) [8294] +----------------------------------------------- + 0.00 0.00 3/3 Array >::Add(std::pair const&) [8267] +[8284] 0.0 0.00 0.00 3 std::pair::operator=(std::pair const&) [8284] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] +[8285] 0.0 0.00 0.00 3 std::pair::pair >*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node >*&, std::_Rb_tree_node_base*&) [8285] + 0.00 0.00 3/3 std::_Rb_tree_node >*& std::forward >*&>(std::remove_reference >*&>::type&) [8296] + 0.00 0.00 3/48 std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) [8033] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] +[8286] 0.0 0.00 0.00 3 std::pair >, std::_Rb_tree_iterator > >::pair >, std::_Rb_tree_iterator >, true>(std::_Rb_tree_iterator >&&, std::_Rb_tree_iterator >&&) [8286] + 0.00 0.00 6/6 std::_Rb_tree_iterator >&& std::forward > >(std::remove_reference > >::type&) [8189] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] +[8287] 0.0 0.00 0.00 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_leftmost() [8287] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) [8292] +[8288] 0.0 0.00 0.00 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 6/373 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) [7989] + 0.00 0.00 6/382 std::less::operator()(void const*, void const*) const [7984] + 0.00 0.00 3/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() [8099] + 0.00 0.00 3/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() [8075] + 0.00 0.00 3/20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base*) [8102] + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base*) [8147] + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_upper_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8290] + 0.00 0.00 3/19 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8110] + 0.00 0.00 3/3 std::pair >, std::_Rb_tree_iterator > >::pair >, std::_Rb_tree_iterator >, true>(std::_Rb_tree_iterator >&&, std::_Rb_tree_iterator >&&) [8286] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) [8292] +[8289] 0.0 0.00 0.00 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] + 0.00 0.00 5/15 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_iterator > const&) [8120] + 0.00 0.00 5/937 std::operator==(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) [7959] + 0.00 0.00 3/6 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::begin() [8188] + 0.00 0.00 2/18 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() [8114] + 0.00 0.00 2/2 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() [8300] + 0.00 0.00 2/2 std::operator!=(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) [8301] + 0.00 0.00 1/1 std::_Rb_tree_const_iterator >::operator++(int) [8345] + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >) [8354] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] +[8290] 0.0 0.00 0.00 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_upper_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) [8290] + 0.00 0.00 3/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] +----------------------------------------------- + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] +[8291] 0.0 0.00 0.00 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) [8291] + 0.00 0.00 3/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() [8099] + 0.00 0.00 3/29 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() [8075] + 0.00 0.00 3/57 std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [8027] + 0.00 0.00 3/6 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::begin() [8188] + 0.00 0.00 3/19 std::operator==(std::_Rb_tree_iterator > const&, std::_Rb_tree_iterator > const&) [8111] + 0.00 0.00 3/3 std::pair::pair >*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node >*&, std::_Rb_tree_node_base*&) [8285] +----------------------------------------------- + 0.00 0.00 3/3 std::map, std::allocator > >::erase(void const* const&) [8282] +[8292] 0.0 0.00 0.00 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) [8292] + 0.00 0.00 6/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::size() const [8146] + 0.00 0.00 6/15 std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_iterator > const&) [8120] + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) [8288] + 0.00 0.00 3/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] +----------------------------------------------- + 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] + 0.00 0.00 1/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::~_Rb_tree() [8358] + 0.00 0.00 2/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() [8300] +[8293] 0.0 0.00 0.00 3+3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] + 0.00 0.00 3/9 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base*) [8147] + 0.00 0.00 3/20 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base*) [8102] + 0.00 0.00 3/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) [8220] + 3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] +----------------------------------------------- + 0.00 0.00 3/3 std::pair::pair(char const*&, GfxData*&) [8283] +[8294] 0.0 0.00 0.00 3 GfxData*& std::forward(std::remove_reference::type&) [8294] +----------------------------------------------- + 0.00 0.00 3/3 std::pair::pair(char const*&, GfxData*&) [8283] +[8295] 0.0 0.00 0.00 3 char const*& std::forward(std::remove_reference::type&) [8295] +----------------------------------------------- + 0.00 0.00 3/3 std::pair::pair >*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node >*&, std::_Rb_tree_node_base*&) [8285] +[8296] 0.0 0.00 0.00 3 std::_Rb_tree_node >*& std::forward >*&>(std::remove_reference >*&>::type&) [8296] +----------------------------------------------- + 0.00 0.00 2/2 dynos_generate_packs [130] +[8297] 0.0 0.00 0.00 2 DynOS_Gfx_GeneratePacks(char const*) [8297] + 0.00 0.00 42/287 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) [8000] + 0.00 0.00 36/173 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) [8010] + 0.00 0.00 6/9 DynOS_Actor_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8141] + 0.00 0.00 3/3 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +----------------------------------------------- + 0.00 0.00 2/2 DynOS_Gfx_Init() [110] +[8298] 0.0 0.00 0.00 2 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char const*) [8298] +----------------------------------------------- + 0.00 0.00 1/2 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() [8355] + 0.00 0.00 1/2 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() [8349] +[8299] 0.0 0.00 0.00 2 std::_Rb_tree_header::_Rb_tree_header() [8299] + 0.00 0.00 2/4 std::_Rb_tree_header::_M_reset() [8208] +----------------------------------------------- + 0.00 0.00 2/2 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] +[8300] 0.0 0.00 0.00 2 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() [8300] + 0.00 0.00 2/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() [8099] + 0.00 0.00 2/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] + 0.00 0.00 2/4 std::_Rb_tree_header::_M_reset() [8208] +----------------------------------------------- + 0.00 0.00 2/2 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] +[8301] 0.0 0.00 0.00 2 std::operator!=(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) [8301] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8302] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z18DynOS_Col_ActivateRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc [8302] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8314] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8303] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z18DynOS_Lvl_GetArrayv [8303] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8313] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8304] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z19DynOS_Pack_GetCountv [8304] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8317] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8305] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z20DynOS_Level_GetCountv [8305] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8316] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8306] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z20DynOS_String_ConvertPKcb [8306] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8318] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8307] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z21DynOS_Actor_AddCustomRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc [8307] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8312] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8308] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z23DynOS_MovtexQC_RegisterPKcsss [8308] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8311] +----------------------------------------------- + 0.00 0.00 1/1 __libc_csu_init [112] +[8309] 0.0 0.00 0.00 1 _GLOBAL__sub_I__Z25DynOS_Tex_ConvertToRGBA32PKhyiiS0_ [8309] + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8315] +----------------------------------------------- + 0.00 0.00 1/1 DynOS_UpdateOpt(void*) [7976] +[8310] 0.0 0.00 0.00 1 DynOS_Warp_SetParam(int, int) [8310] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z23DynOS_MovtexQC_RegisterPKcsss [8308] +[8311] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8311] + 0.00 0.00 1/1 Array::Array() [8322] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z21DynOS_Actor_AddCustomRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc [8307] +[8312] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8312] + 0.00 0.00 1/1 std::map, std::allocator > >::map() [8346] + 0.00 0.00 1/1 Array >::Array() [8330] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z18DynOS_Lvl_GetArrayv [8303] +[8313] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8313] + 0.00 0.00 1/4 Array >::Array() [8196] + 0.00 0.00 1/1 Array::Array() [8324] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z18DynOS_Col_ActivateRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc [8302] +[8314] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8314] + 0.00 0.00 1/1 Array*> >::Array() [8328] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z25DynOS_Tex_ConvertToRGBA32PKhyiiS0_ [8309] +[8315] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8315] + 0.00 0.00 1/1 std::set*, std::less*>, std::allocator*> >::set() [8347] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z20DynOS_Level_GetCountv [8305] +[8316] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8316] + 0.00 0.00 39/39 Array::Array() [8042] + 0.00 0.00 1/1 Array::Array() [8334] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z19DynOS_Pack_GetCountv [8304] +[8317] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8317] + 0.00 0.00 1/1 Array::Array() [8326] +----------------------------------------------- + 0.00 0.00 1/1 _GLOBAL__sub_I__Z20DynOS_String_ConvertPKcb [8306] +[8318] 0.0 0.00 0.00 1 __static_initialization_and_destruction_0(int, int) [8318] + 0.00 0.00 1/1 Array >::Array() [8332] +----------------------------------------------- + 0.00 0.00 1/1 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8319] 0.0 0.00 0.00 1 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*) [8319] +----------------------------------------------- + 0.00 0.00 1/1 DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8231] +[8320] 0.0 0.00 0.00 1 DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) [8320] + 0.00 0.00 21/287 bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) [8000] + 0.00 0.00 9/173 std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) [8010] + 0.00 0.00 9/9 DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8140] +----------------------------------------------- + 0.00 0.00 1/1 Array::~Array() [8802] +[8321] 0.0 0.00 0.00 1 Array::Clear() [8321] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8311] +[8322] 0.0 0.00 0.00 1 Array::Array() [8322] +----------------------------------------------- + 0.00 0.00 1/1 Array::~Array() [8805] +[8323] 0.0 0.00 0.00 1 Array::Clear() [8323] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8313] +[8324] 0.0 0.00 0.00 1 Array::Array() [8324] +----------------------------------------------- + 0.00 0.00 1/1 Array::~Array() [8810] +[8325] 0.0 0.00 0.00 1 Array::Clear() [8325] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8317] +[8326] 0.0 0.00 0.00 1 Array::Array() [8326] +----------------------------------------------- + 0.00 0.00 1/1 Array*> >::~Array() [8886] +[8327] 0.0 0.00 0.00 1 Array*> >::Clear() [8327] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8314] +[8328] 0.0 0.00 0.00 1 Array*> >::Array() [8328] +----------------------------------------------- + 0.00 0.00 1/1 Array >::~Array() [8890] +[8329] 0.0 0.00 0.00 1 Array >::Clear() [8329] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8312] +[8330] 0.0 0.00 0.00 1 Array >::Array() [8330] +----------------------------------------------- + 0.00 0.00 1/1 Array >::~Array() [8897] +[8331] 0.0 0.00 0.00 1 Array >::Clear() [8331] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8318] +[8332] 0.0 0.00 0.00 1 Array >::Array() [8332] +----------------------------------------------- + 0.00 0.00 1/1 Array::~Array() [8902] +[8333] 0.0 0.00 0.00 1 Array::Clear() [8333] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8316] +[8334] 0.0 0.00 0.00 1 Array::Array() [8334] +----------------------------------------------- + 0.00 0.00 1/1 std::allocator*> >::allocator() [8339] +[8335] 0.0 0.00 0.00 1 __gnu_cxx::new_allocator*> >::new_allocator() [8335] +----------------------------------------------- + 0.00 0.00 1/1 std::allocator*> >::~allocator() [8340] +[8336] 0.0 0.00 0.00 1 __gnu_cxx::new_allocator*> >::~new_allocator() [8336] +----------------------------------------------- + 0.00 0.00 1/1 std::allocator > >::allocator() [8341] +[8337] 0.0 0.00 0.00 1 __gnu_cxx::new_allocator > >::new_allocator() [8337] +----------------------------------------------- + 0.00 0.00 1/1 std::allocator > >::~allocator() [8342] +[8338] 0.0 0.00 0.00 1 __gnu_cxx::new_allocator > >::~new_allocator() [8338] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() [8349] +[8339] 0.0 0.00 0.00 1 std::allocator*> >::allocator() [8339] + 0.00 0.00 1/1 __gnu_cxx::new_allocator*> >::new_allocator() [8335] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::~_Rb_tree_impl() [8350] +[8340] 0.0 0.00 0.00 1 std::allocator*> >::~allocator() [8340] + 0.00 0.00 1/1 __gnu_cxx::new_allocator*> >::~new_allocator() [8336] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() [8355] +[8341] 0.0 0.00 0.00 1 std::allocator > >::allocator() [8341] + 0.00 0.00 1/1 __gnu_cxx::new_allocator > >::new_allocator() [8337] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::~_Rb_tree_impl() [8356] +[8342] 0.0 0.00 0.00 1 std::allocator > >::~allocator() [8342] + 0.00 0.00 1/1 __gnu_cxx::new_allocator > >::~new_allocator() [8338] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() [8349] +[8343] 0.0 0.00 0.00 1 std::_Rb_tree_key_compare*> >::_Rb_tree_key_compare() [8343] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() [8355] +[8344] 0.0 0.00 0.00 1 std::_Rb_tree_key_compare >::_Rb_tree_key_compare() [8344] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] +[8345] 0.0 0.00 0.00 1 std::_Rb_tree_const_iterator >::operator++(int) [8345] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8312] +[8346] 0.0 0.00 0.00 1 std::map, std::allocator > >::map() [8346] + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree() [8357] +----------------------------------------------- + 0.00 0.00 1/1 __static_initialization_and_destruction_0(int, int) [8315] +[8347] 0.0 0.00 0.00 1 std::set*, std::less*>, std::allocator*> >::set() [8347] + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree() [8352] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) [8226] +[8348] 0.0 0.00 0.00 1 std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base*&) [8348] + 0.00 0.00 2/48 std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) [8033] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree() [8352] +[8349] 0.0 0.00 0.00 1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() [8349] + 0.00 0.00 1/1 std::allocator*> >::allocator() [8339] + 0.00 0.00 1/1 std::_Rb_tree_key_compare*> >::_Rb_tree_key_compare() [8343] + 0.00 0.00 1/2 std::_Rb_tree_header::_Rb_tree_header() [8299] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::~_Rb_tree() [8353] +[8350] 0.0 0.00 0.00 1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::~_Rb_tree_impl() [8350] + 0.00 0.00 1/1 std::allocator*> >::~allocator() [8340] +----------------------------------------------- + 11 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::~_Rb_tree() [8353] +[8351] 0.0 0.00 0.00 1+11 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] + 0.00 0.00 11/799 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) [7961] + 0.00 0.00 11/623827 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) [7923] + 0.00 0.00 11/36 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) [8062] + 11 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] +----------------------------------------------- + 0.00 0.00 1/1 std::set*, std::less*>, std::allocator*> >::set() [8347] +[8352] 0.0 0.00 0.00 1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree() [8352] + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() [8349] +----------------------------------------------- + 0.00 0.00 1/1 std::set*, std::less*>, std::allocator*> >::~set() [9009] +[8353] 0.0 0.00 0.00 1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::~_Rb_tree() [8353] + 0.00 0.00 1/208007 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() [7928] + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) [8351] + 0.00 0.00 1/1 std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::~_Rb_tree_impl() [8350] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) [8289] +[8354] 0.0 0.00 0.00 1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >) [8354] + 0.00 0.00 1/4 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) [8220] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree() [8357] +[8355] 0.0 0.00 0.00 1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() [8355] + 0.00 0.00 1/1 std::allocator > >::allocator() [8341] + 0.00 0.00 1/1 std::_Rb_tree_key_compare >::_Rb_tree_key_compare() [8344] + 0.00 0.00 1/2 std::_Rb_tree_header::_Rb_tree_header() [8299] +----------------------------------------------- + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::~_Rb_tree() [8358] +[8356] 0.0 0.00 0.00 1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::~_Rb_tree_impl() [8356] + 0.00 0.00 1/1 std::allocator > >::~allocator() [8342] +----------------------------------------------- + 0.00 0.00 1/1 std::map, std::allocator > >::map() [8346] +[8357] 0.0 0.00 0.00 1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree() [8357] + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() [8355] +----------------------------------------------- + 0.00 0.00 1/1 std::map, std::allocator > >::~map() [9008] +[8358] 0.0 0.00 0.00 1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::~_Rb_tree() [8358] + 0.00 0.00 1/25 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() [8099] + 0.00 0.00 1/1 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::~_Rb_tree_impl() [8356] + 0.00 0.00 1/3 std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) [8293] +----------------------------------------------- + + This table describes the call tree of the program, and was sorted by + the total amount of time spent in each function and its children. + + Each entry in this table consists of several lines. The line with the + index number at the left hand margin lists the current function. + The lines above it list the functions that called this function, + and the lines below it list the functions this one called. + This line lists: + index A unique number given to each element of the table. + Index numbers are sorted numerically. + The index number is printed next to every function name so + it is easier to look up where the function is in the table. + + % time This is the percentage of the `total' time that was spent + in this function and its children. Note that due to + different viewpoints, functions excluded by options, etc, + these numbers will NOT add up to 100%. + + self This is the total amount of time spent in this function. + + children This is the total amount of time propagated into this + function by its children. + + called This is the number of times the function was called. + If the function called itself recursively, the number + only includes non-recursive calls, and is followed by + a `+' and the number of recursive calls. + + name The name of the current function. The index number is + printed after it. If the function is a member of a + cycle, the cycle number is printed between the + function's name and the index number. + + + For the function's parents, the fields have the following meanings: + + self This is the amount of time that was propagated directly + from the function into this parent. + + children This is the amount of time that was propagated from + the function's children into this parent. + + called This is the number of times this parent called the + function `/' the total number of times the function + was called. Recursive calls to the function are not + included in the number after the `/'. + + name This is the name of the parent. The parent's index + number is printed after it. If the parent is a + member of a cycle, the cycle number is printed between + the name and the index number. + + If the parents of the function cannot be determined, the word + `' is printed in the `name' field, and all the other + fields are blank. + + For the function's children, the fields have the following meanings: + + self This is the amount of time that was propagated directly + from the child into the function. + + children This is the amount of time that was propagated from the + child's children to the function. + + called This is the number of times the function called + this child `/' the total number of times the child + was called. Recursive calls by the child are not + listed in the number after the `/'. + + name This is the name of the child. The child's index + number is printed after it. If the child is a + member of a cycle, the cycle number is printed + between the name and the index number. + + If there are any cycles (circles) in the call graph, there is an + entry for the cycle-as-a-whole. This entry shows who called the + cycle (as parents) and the members of the cycle (as children.) + The `+' recursive calls entry shows the number of function calls that + were internal to the cycle, and the calls entry for each member shows, + for that member, how many times it was called from other members of + the cycle. + +Copyright (C) 2012-2020 Free Software Foundation, Inc. + +Copying and distribution of this file, with or without modification, +are permitted in any medium without royalty provided the copyright +notice and this notice are preserved. + +Index by function name + + [8302] _GLOBAL__sub_I__Z18DynOS_Col_ActivateRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc (dynos_mgr_col.cpp) [8016] Array*>::Add(DataNode* const&) [8109] std::pair::operator=(std::pair const&) + [8303] _GLOBAL__sub_I__Z18DynOS_Lvl_GetArrayv (dynos_mgr_lvl.cpp) [7982] Array*>::end() [8096] std::pair*>, std::_Rb_tree_iterator*> >::pair*>, std::_Rb_tree_iterator*>, true>(std::_Rb_tree_iterator*>&&, std::_Rb_tree_iterator*>&&) + [8304] _GLOBAL__sub_I__Z19DynOS_Pack_GetCountv (dynos_mgr_pack.cpp) [8134] Array*>::Clear() [8035] std::pair*>, bool>::pair*>, bool, true>(std::_Rb_tree_iterator*>&&, bool&&) + [8305] _GLOBAL__sub_I__Z20DynOS_Level_GetCountv (dynos_level.cpp) [7983] Array*>::begin() [8286] std::pair >, std::_Rb_tree_iterator > >::pair >, std::_Rb_tree_iterator >, true>(std::_Rb_tree_iterator >&&, std::_Rb_tree_iterator >&&) + [8306] _GLOBAL__sub_I__Z20DynOS_String_ConvertPKcb (dynos_misc.cpp) [8017] Array*>::Resize(int) [8036] std::pair*>, bool>::pair*>&, bool&, true>(std::_Rb_tree_iterator*>&, bool&) + [8307] _GLOBAL__sub_I__Z21DynOS_Actor_AddCustomRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPKc (dynos_mgr_actor.cpp) [8112] Array*>::Array() [8216] std::tuple::tuple(std::tuple&&) + [8308] _GLOBAL__sub_I__Z23DynOS_MovtexQC_RegisterPKcsss (dynos_mgr_movtexqc.cpp) [8145] Array*>::~Array() [8217] std::tuple::tuple(void const* const&) + [8309] _GLOBAL__sub_I__Z25DynOS_Tex_ConvertToRGBA32PKhyiiS0_ (dynos_mgr_tex.cpp) [8083] Array*>::end() [120] std::_Rb_tree_iterator*> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, DataNode* const&, std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node&) + [109] DynOS_Init() [8135] Array*>::Clear() [8059] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::_Alloc_node(std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >&) + [8076] void AppendNewNode(GfxData*, Array*>&, String const&, String*&, Array*&) (dynos_bin_read.cpp) [8084] Array*>::begin() [8060] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_node() + [7964] DynOS_SwapCmd(void*) [8100] Array*>::Array() [8061] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_put_node(std::_Rb_tree_node*>*) + [8013] DynOS_Geo_Load(_IO_FILE*, GfxData*) [8136] Array*>::~Array() [103] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::equal_range(DataNode* const&) + [8229] DynOS_Gfx_Free(GfxData*) [8261] Array >*>::Clear() [8062] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_drop_node(std::_Rb_tree_node*>*) + [110] DynOS_Gfx_Init() [8178] Array >*>::Array() [8097] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>) + [7992] DynOS_Gfx_Load(_IO_FILE*, GfxData*) [8262] Array >*>::~Array() [8098] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase_aux(std::_Rb_tree_const_iterator*>, std::_Rb_tree_const_iterator*>) + [111] DynOS_Opt_Init() [8263] Array >*>::Clear() [8349] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::_Rb_tree_impl() + [7974] DynOS_Opt_Loop(DynosOption*, bool (*)(DynosOption*, void*), void*) [8179] Array >*>::Array() [8350] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree_impl*>, true>::~_Rb_tree_impl() + [118] DynOS_Pack_Add(std::__cxx11::basic_string, std::allocator > const&) [8264] Array >*>::~Array() [8063] std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_create_node* const&>(DataNode* const&) + [8077] DynOS_Tex_Load(_IO_FILE*, GfxData*) [8180] Array::Clear() [33] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_lower_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) + [8004] DynOS_Vtx_Load(_IO_FILE*, GfxData*) [8137] Array::Array() [121] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_upper_bound(std::_Rb_tree_node*>*, std::_Rb_tree_node_base*, DataNode* const&) + [99] DynOS_Tex_Valid(GfxData*) [8181] Array::~Array() [8064] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_destroy_node(std::_Rb_tree_node*>*) + [88] DynOS_UpdateCmd(void*) [8265] Array >::Clear() [98] std::pair*>, bool> std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_insert_unique* const&>(DataNode* const&) + [7975] DynOS_UpdateGfx() [8182] Array >::Array() [8065] void std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_construct_node* const&>(std::_Rb_tree_node*>*, DataNode* const&) + [7976] DynOS_UpdateOpt(void*) [8266] Array >::~Array() [8011] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_Node_allocator() + [7977] DynOS_Gfx_Update() [8267] Array >::Add(std::pair const&) [113] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_get_insert_unique_pos(DataNode* const&) + [7978] DynOS_Opt_Update(OSContPad*) [8129] Array >::end() [7925] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() + [16] DynOS_Tex_Import(void**, void*, int, void*, void**, void*, unsigned int*, unsigned int) [8195] Array >::Clear() [32] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::find(DataNode* const&) + [100] DynOS_Actor_Valid(void const*, ActorGfx&) [8130] Array >::begin() [8068] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::begin() + [8121] DynOS_Lights_Load(_IO_FILE*, GfxData*) [8183] Array >::Resize(int) [104] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::erase(DataNode* const&) + [8139] DynOS_Read_Buffer(_IO_FILE*, GfxData*) [8196] Array >::Array() [7927] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_end() + [8140] DynOS_Read_Source(GfxData*, std::__cxx11::basic_string, std::allocator > const&) [8268] Array >::~Array() [84] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node*> const*) + [107] DynOS_Tex_Invalid(GfxData*) [8269] Array >::operator=(Array > const&) [94] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_key(std::_Rb_tree_node_base const*) + [89] DynOS_Warp_Update(void*, bool) [8270] Array >::operator[](int) [7923] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_left(std::_Rb_tree_node_base*) + [7965] DynOS_Lvl_Override(void*) [8327] Array*> >::Clear() [7928] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_begin() + [7937] DynOS_Pointer_Load(_IO_FILE*, GfxData*, unsigned int) [8328] Array*> >::Array() [8351] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_M_erase(std::_Rb_tree_node*>*) + [105] DynOS_Actor_Invalid(void const*, int) [8329] Array >::Clear() [7961] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_S_right(std::_Rb_tree_node_base*) + [115] DynOS_Pack_AddActor(PackData*, char const*, GfxData*) [8330] Array >::Array() [8352] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Rb_tree() + [8230] DynOS_Pack_GetActor(PackData*, char const*) [8271] Array >::Clear() [8353] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::~_Rb_tree() + [8161] DynOS_Pack_GetCount() [8184] Array >::Array() [8218] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_node() + [8310] DynOS_Warp_SetParam(int, int) [8272] Array >::~Array() [8287] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_leftmost() + [7958] DynOS_Actor_Override(void**) [8106] Array >::Add(std::pair const&) [8219] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_put_node(std::_Rb_tree_node >*) + [95] DynOS_Pack_SetEnabled(PackData*, bool) [8331] Array >::Clear() [8288] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::equal_range(void const* const&) + [7979] DynOS_Geo_GetGraphNode(void const*, bool) [8107] Array >::Resize(int) [8118] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::lower_bound(void const* const&) + [8231] DynOS_Lvl_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8332] Array >::Array() [8220] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_drop_node(std::_Rb_tree_node >*) + [8162] DynOS_Pack_GetFromPath(std::__cxx11::basic_string, std::allocator > const&) [7981] Array >::operator[](int) [8354] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >) + [8297] DynOS_Gfx_GeneratePacks(char const*) [8185] Array >::Clear() [8289] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase_aux(std::_Rb_tree_const_iterator >, std::_Rb_tree_const_iterator >) + [8069] DynOS_Pack_GetFromIndex(int) [8273] Array >::Resize(int) [8355] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::_Rb_tree_impl() + [8141] DynOS_Actor_GeneratePack(std::__cxx11::basic_string, std::allocator > const&) [8274] Array >::Array(Array > const&) [8356] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree_impl, true>::~_Rb_tree_impl() + [8138] DynOS_Actor_Override_All() [8275] Array >::Array() [8221] std::_Rb_tree_node >* std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_create_node, std::tuple<> >(std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + [7932] DynOS_Anim_Swap(void*) [8186] Array >::~Array() [8222] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node >*) + [116] DynOS_Actor_LoadFromBinary(std::__cxx11::basic_string, std::allocator > const&, char const*, std::__cxx11::basic_string, std::allocator > const&) [8085] Array::Read(_IO_FILE*) [8110] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) + [8191] DynOS_Builtin_Tex_GetFromName(char const*) [8086] Array::Clear() [8290] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_upper_bound(std::_Rb_tree_node >*, std::_Rb_tree_node_base*, void const* const&) + [8122] DynOS_Builtin_Actor_GetFromName(char const*) [8072] Array::begin() [8223] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_destroy_node(std::_Rb_tree_node >*) + [8002] DynOS_Builtin_Func_GetFromIndex(int) [8021] Array::Resize(int) [8224] void std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_construct_node, std::tuple<> >(std::_Rb_tree_node >*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + [8192] DynOS_Builtin_LvlCol_GetFromName(char const*) [8092] Array::Array(unsigned char const*, unsigned char const*) [8119] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_Node_allocator() + [8193] DynOS_Builtin_LvlGeo_GetFromName(char const*) [8026] Array::Array() [8225] std::_Rb_tree_iterator > std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_emplace_hint_unique, std::tuple<> >(std::_Rb_tree_const_iterator >, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) + [8194] DynOS_Builtin_ScriptPtr_GetFromName(char const*) [8087] Array::~Array() [8291] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_unique_pos(void const* const&) + [7993] Gfx* New(unsigned long long) [8088] Array::operator=(Array const&) [8226] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_get_insert_hint_unique_pos(std::_Rb_tree_const_iterator >, void const* const&) + [8005] Vtx* New(unsigned long long) [8333] Array::Clear() [8114] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() + [8163] GfxData* New(unsigned long long) [8334] Array::Array() [8188] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::begin() + [8123] Lights1* New(unsigned long long) [7962] NoCopy::NoCopy() [8300] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::clear() + [8078] TexData* New(unsigned long long) [8073] NoCopy::~NoCopy() [8292] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::erase(void const* const&) + [7994] DataNode* New >(unsigned long long) [7940] String::Add(char) [8075] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() + [8006] DataNode* New >(unsigned long long) [7942] String::Read(_IO_FILE*) [7989] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node > const*) + [8124] DataNode* New >(unsigned long long) [8012] String::Clear() [8153] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_key(std::_Rb_tree_node_base const*) + [8028] DataNode* New >(unsigned long long) [8113] String::begin() [8160] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base const*) + [8014] DataNode* New >(unsigned long long) [8025] String::String(char const*) [8102] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_left(std::_Rb_tree_node_base*) + [8142] char* New(unsigned long long) [7941] String::String() [8099] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() + [8015] unsigned long* New(unsigned long long) [8020] String::operator=(String const&) [8293] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_erase(std::_Rb_tree_node >*) + [8311] __static_initialization_and_destruction_0(int, int) (dynos_mgr_movtexqc.cpp) [8276] String::operator[](int) [7990] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base const*) + [8312] __static_initialization_and_destruction_0(int, int) (dynos_mgr_actor.cpp) [8187] GfxData::GfxData() [8147] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_S_right(std::_Rb_tree_node_base*) + [8313] __static_initialization_and_destruction_0(int, int) (dynos_mgr_lvl.cpp) [8277] GfxData::~GfxData() [8357] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_Rb_tree() + [8314] __static_initialization_and_destruction_0(int, int) (dynos_mgr_col.cpp) [8089] TexData::TexData() [8358] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::~_Rb_tree() + [8315] __static_initialization_and_destruction_0(int, int) (dynos_mgr_tex.cpp) [8197] ActorGfx::ActorGfx() [8227] void const* const& std::__get_helper<0ul, void const* const&>(std::_Tuple_impl<0ul, void const* const&>&) + [8316] __static_initialization_and_destruction_0(int, int) (dynos_level.cpp) [7997] DataNode::DataNode() [8228] std::tuple_element<0ul, std::tuple >::type& std::get<0ul, void const* const&>(std::tuple&) + [8317] __static_initialization_and_destruction_0(int, int) (dynos_mgr_pack.cpp) [8009] DataNode::DataNode() [8044] void*&& std::forward(std::remove_reference::type&) + [8318] __static_initialization_and_destruction_0(int, int) (dynos_misc.cpp) [8128] DataNode::DataNode() [8001] DataNode* const& std::forward* const&>(std::remove_reference* const&>::type&) + [8133] void Print(char const*, char const*) [8031] DataNode::DataNode() [8154] void const* const& std::forward(std::remove_reference::type&) + [8232] void Delete(GfxData*&) [8090] DataNode::~DataNode() [8103] std::piecewise_construct_t const& std::forward(std::remove_reference::type&) + [8079] void Delete(TexData*&) [8018] DataNode::DataNode() [8294] GfxData*& std::forward(std::remove_reference::type&) + [8080] void Delete >(DataNode*&) [8278] PackData::~PackData() [8295] char const*& std::forward(std::remove_reference::type&) + [8143] void Delete(char*&) [8279] PackData::operator=(PackData const&) [8066] std::_Rb_tree_node*>*& std::forward*>*&>(std::remove_reference*>*&>::type&) + [8233] std::__cxx11::basic_string, std::allocator > fstring<__gnu_cxx::__normal_iterator, std::allocator > >, char*>(char const*, __gnu_cxx::__normal_iterator, std::allocator > >, char*) [8048] __gnu_cxx::new_allocator*> >::deallocate(std::_Rb_tree_node*>*, unsigned long) [8296] std::_Rb_tree_node >*& std::forward >*&>(std::remove_reference >*&>::type&) + [8319] std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*) [8049] void __gnu_cxx::new_allocator*> >::destroy*>(DataNode**) [8033] std::_Rb_tree_node_base*& std::forward(std::remove_reference::type&) + [8010] std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char*) [8050] __gnu_cxx::new_allocator*> >::allocate(unsigned long, void const*) [8037] std::_Rb_tree_iterator*>& std::forward*>&>(std::remove_reference*>&>::type&) + [8298] std::__cxx11::basic_string, std::allocator > fstring(char const*, char const*, char const*) [8051] void __gnu_cxx::new_allocator*> >::construct*, DataNode* const&>(DataNode**, DataNode* const&) [8038] bool& std::forward(std::remove_reference::type&) + [8125] Lights1 ReadBytes(_IO_FILE*) [8335] __gnu_cxx::new_allocator*> >::new_allocator() [8019] std::_Rb_tree_iterator*>&& std::forward*> >(std::remove_reference*> >::type&) + [7936] signed char ReadBytes(_IO_FILE*) [8336] __gnu_cxx::new_allocator*> >::~new_allocator() [8189] std::_Rb_tree_iterator >&& std::forward > >(std::remove_reference > >::type&) + [7939] unsigned char ReadBytes(_IO_FILE*) [8198] __gnu_cxx::new_allocator > >::deallocate(std::_Rb_tree_node >*, unsigned long) [8104] std::tuple<>&& std::forward >(std::remove_reference >::type&) + [8003] int ReadBytes(_IO_FILE*) [8199] void __gnu_cxx::new_allocator > >::destroy >(std::pair*) [8105] std::tuple&& std::forward >(std::remove_reference >::type&) + [7935] unsigned int ReadBytes(_IO_FILE*) [8200] __gnu_cxx::new_allocator > >::allocate(unsigned long, void const*) [8039] bool&& std::forward(std::remove_reference::type&) + [7933] short ReadBytes(_IO_FILE*) [8201] void __gnu_cxx::new_allocator > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [8148] __gnu_cxx::__enable_if::__value, bool>::__type std::operator==(std::__cxx11::basic_string, std::allocator > const&, std::__cxx11::basic_string, std::allocator > const&) + [117] ScanPackBins(std::__cxx11::basic_string, std::allocator >) (dynos_gfx_init.cpp) [8337] __gnu_cxx::new_allocator > >::new_allocator() [8000] bool std::operator==, std::allocator >(std::__cxx11::basic_string, std::allocator > const&, char const*) + [7960] DynOS_Tex_Cache(THN**, DataNode*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) (dynos_mgr_tex.cpp) [8338] __gnu_cxx::new_allocator > >::~new_allocator() [7930] std::operator==(std::_Rb_tree_iterator*> const&, std::_Rb_tree_iterator*> const&) + [108] ScanPacksFolder(std::__cxx11::basic_string, std::allocator >) (dynos_gfx_init.cpp) [8022] __gnu_cxx::__aligned_membuf*>::_M_ptr() [8111] std::operator==(std::_Rb_tree_iterator > const&, std::_Rb_tree_iterator > const&) + [8190] DynOS_Tex_Upload(DataNode*, GfxRenderingAPI*, int, int) (dynos_mgr_tex.cpp) [8023] __gnu_cxx::__aligned_membuf*>::_M_addr() [8034] std::operator==(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) + [7946] GetPointerFromData(GfxData*, String const&, unsigned int) (dynos_bin_pointer.cpp) [8045] __gnu_cxx::__aligned_membuf >::_M_ptr() [7959] std::operator==(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) + [17] DynOS_Tex_Import_Typed(THN**, void*, int, GfxRenderingAPI*, THN**, THN*, unsigned int*, unsigned int) (dynos_mgr_tex.cpp) [8046] __gnu_cxx::__aligned_membuf >::_M_addr() [7929] std::operator!=(std::_Rb_tree_const_iterator*> const&, std::_Rb_tree_const_iterator*> const&) + [18] DynOS_Tex_RetrieveNode(void*) (dynos_mgr_tex.cpp) [8040] Array::Count() const [8301] std::operator!=(std::_Rb_tree_const_iterator > const&, std::_Rb_tree_const_iterator > const&) + [8144] GetNearestIfDefPointer(char*) (dynos_bin_read.cpp) [8280] Array >::Count() const [7938] DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}::operator()(std::pair const&) const (dynos_misc.cpp) + [101] DynOS_Pack_ActivateActor(int, std::pair&) (dynos_mgr_pack.cpp) [7980] int Array >::FindIf const&)#1}>(DynOS_Geo_GetGraphNode(void const*, bool)::{lambda(std::pair const&)#1}) const (dynos.cpp.h) [7934] operator new(unsigned long, void*) + [106] DynOS_Pack_DeactivateActor(int, std::pair&) (dynos_mgr_pack.cpp) [8093] Array::Count() const [8] aADPCMdecImpl + [8094] _RelocateGraphNodePointers(GraphNode*, unsigned long long) (dynos_misc.cpp) [8091] Array::Empty() const [3] aEnvMixerImpl + [8234] DynOS_Lvl_GeneratePack_Internal(std::__cxx11::basic_string, std::allocator > const&, Array >, GfxData*) (dynos_bin_lvl.cpp) [8101] String::begin() const [35] aInterleaveImpl + [8320] DynOS_Lvl_GeneratePack_Recursive(std::__cxx11::basic_string, std::allocator > const&, GfxData*) (dynos_bin_lvl.cpp) [7991] String::Length() const [36] aMixImpl + [8164] GfxContext::GfxContext() [7968] String::operator==(char const*) const [19] aResampleImpl + [8235] Array::Clear() [7931] String::operator==(String const&) const [37] aSetBufferImpl + [8165] Array::Array() [8052] __gnu_cxx::new_allocator*> >::max_size() const [38] absf + [8236] Array::~Array() [8202] __gnu_cxx::new_allocator > >::max_size() const [39] adsr_update + [8321] Array::Clear() [7921] __gnu_cxx::__aligned_membuf*>::_M_ptr() const [40] anim_process (rendering_graph_node.c) + [8322] Array::Array() [7922] __gnu_cxx::__aligned_membuf*>::_M_addr() const [41] bhv_cannon_barrel_loop + [7966] Array::end() [7985] __gnu_cxx::__aligned_membuf >::_M_ptr() const [6] body (md5.c) + [8323] Array::Clear() [7986] __gnu_cxx::__aligned_membuf >::_M_addr() const [42] calculate_normal_dir (gfx_pc.c) + [7967] Array::begin() [7987] std::_Select1st >::operator()(std::pair const&) const [12] clamp16 (mixer.c) + [8324] Array::Array() [82] std::_Rb_tree_node*>::_M_valptr() const [9] clamp32 (mixer.c) + [8081] Array::Add(String const&) [7988] std::_Rb_tree_node >::_M_valptr() const [43] clear_object_collision + [8070] Array::Clear() [8203] std::initializer_list::end() const [7] clear_spatial_partition (surface_load.c) + [8082] Array::Resize(int) [8204] std::initializer_list::size() const [10] color_comb_component (gfx_pc.c) + [7963] Array::Array() [8149] std::initializer_list::begin() const [44] copy_mario_state_to_object + [8071] Array::~Array() [8074] std::_Rb_tree_iterator >::operator*() const [45] cur_obj_compute_vel_xz + [8237] Array::Add(PackData const&) [8205] std::_Rb_tree_const_iterator >::_M_const_cast() const [46] cur_obj_move_using_vel_and_gravity + [8166] Array::end() [7969] std::map, std::allocator > >::count(void const* const&) const [47] cur_obj_resolve_wall_collisions + [8325] Array::Clear() [8131] std::map, std::allocator > >::key_comp() const [48] djui_base_add_padding (djui_base.c) + [8167] Array::begin() [85] std::set*, std::less*>, std::allocator*> >::end() const [49] djui_base_render + [8238] Array::Resize(int) [83] std::less*>::operator()(DataNode*, DataNode*) const [50] djui_font_normal_render_char (djui_font.c) + [8326] Array::Array() [7984] std::less::operator()(void const*, void const*) const [51] djui_font_title_render_char (djui_font.c) + [8067] Array::operator[](int) [8053] std::_Rb_tree_node*>* std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::_Alloc_node::operator()* const&>(DataNode* const&) const [20] djui_gfx_dp_execute_clipping (gfx_pc.c) + [8041] Array::Clear() [86] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::end() const [52] djui_text_render (djui_text.c) + [8042] Array::Array() [8032] std::_Rb_tree*, DataNode*, std::_Identity*>, std::less*>, std::allocator*> >::size() const [53] djui_text_render_line_parse_escape (djui_text.c) + [8043] Array::~Array() [7970] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_lower_bound(std::_Rb_tree_node > const*, std::_Rb_tree_node_base const*, void const* const&) const [124] dynos_actor_override + [8155] Array*>::end() [7953] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::end() const [130] dynos_generate_packs + [8239] Array*>::Clear() [7971] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::find(void const* const&) const [122] dynos_gfx_swap_animations + [8156] Array*>::begin() [8146] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::size() const [129] dynos_pack_get_count + [8168] Array*>::Array() [7972] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_end() const [128] dynos_pack_get_enabled + [8240] Array*>::~Array() [7973] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::_M_begin() const [127] dynos_pack_get_name + [7995] Array*>::Add(DataNode* const&) [8132] std::_Rb_tree, std::_Select1st >, std::less, std::allocator > >::key_comp() const [96] dynos_pack_set_enabled + [7954] Array*>::end() [7920] std::_Identity*>::operator()(DataNode* const&) const [123] dynos_swap_cmd + [8241] Array*>::Clear() [8339] std::allocator*> >::allocator() [14] dynos_tex_import + [7955] Array*>::begin() [8340] std::allocator*> >::~allocator() [34] dynos_update_cmd + [7996] Array*>::Resize(int) [8341] std::allocator > >::allocator() [125] dynos_update_gfx + [8169] Array*>::Array() [8342] std::allocator > >::~allocator() [126] dynos_update_opt + [8242] Array*>::~Array() [8150] std::_Head_base<0ul, void const* const&, false>::_M_head(std::_Head_base<0ul, void const* const&, false>&) [21] find_floor_from_list (surface_collision.c) + [8007] Array*>::Add(DataNode* const&) [8151] std::_Head_base<0ul, void const* const&, false>::_Head_base(void const* const&) [54] find_surface_on_ray_list + [7998] Array*>::end() [8152] std::_Tuple_impl<0ul, void const* const&>::_M_head(std::_Tuple_impl<0ul, void const* const&>&) [55] fish_spawner_act_respawn (fish.inc.c) + [8243] Array*>::Clear() [8206] std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(std::_Tuple_impl<0ul, void const* const&>&&) [22] geo_append_display_list2 (rendering_graph_node.c) + [7999] Array*>::begin() [8207] std::_Tuple_impl<0ul, void const* const&>::_Tuple_impl(void const* const&) [56] geo_get_mario_state (mario_misc.c) + [8008] Array*>::Resize(int) [8281] std::char_traits::compare(char const*, char const*, unsigned long) [4] geo_process_node_and_siblings + [8170] Array*>::Array() [8024] std::_Rb_tree_node*>::_M_valptr() [90] get_quad_collection_from_id + [8244] Array*>::~Array() [8047] std::_Rb_tree_node >::_M_valptr() [23] gfx_adjust_x_for_aspect_ratio (gfx_pc.c) + [7949] Array*>::end() [8208] std::_Rb_tree_header::_M_reset() [57] gfx_dp_load_block (gfx_pc.c) + [8245] Array*>::Clear() [8299] std::_Rb_tree_header::_Rb_tree_header() [13] gfx_matrix_mul (gfx_pc.c) + [7950] Array*>::begin() [8054] std::allocator_traits*> > >::deallocate(std::allocator*> >&, std::_Rb_tree_node*>*, unsigned long) [58] gfx_normalize_vector (gfx_pc.c) + [8171] Array*>::Array() [8055] void std::allocator_traits*> > >::destroy*>(std::allocator*> >&, DataNode**) [11] gfx_opengl_set_texture_uniforms (gfx_opengl.c) + [8246] Array*>::~Array() [8056] std::allocator_traits*> > >::allocate(std::allocator*> >&, unsigned long) [59] gfx_opengl_shader_get_info (gfx_opengl.c) + [8126] Array*>::Add(DataNode* const&) [8057] void std::allocator_traits*> > >::construct*, DataNode* const&>(std::allocator*> >&, DataNode**, DataNode* const&) [24] gfx_opengl_unload_shader (gfx_opengl.c) + [7944] Array*>::end() [8209] std::allocator_traits > > >::deallocate(std::allocator > >&, std::_Rb_tree_node >*, unsigned long) [5] gfx_run_dl (gfx_pc.c) + [8247] Array*>::Clear() [8210] void std::allocator_traits > > >::destroy >(std::allocator > >&, std::pair*) [60] gfx_sp_geometry_mode (gfx_pc.c) + [7945] Array*>::begin() [8211] std::allocator_traits > > >::allocate(std::allocator > >&, unsigned long) [61] gfx_sp_movemem (gfx_pc.c) + [8127] Array*>::Resize(int) [8212] void std::allocator_traits > > >::construct, std::piecewise_construct_t const&, std::tuple, std::tuple<> >(std::allocator > >&, std::pair*, std::piecewise_construct_t const&, std::tuple&&, std::tuple<>&&) [25] gfx_sp_set_other_mode (gfx_pc.c) + [8172] Array*>::Array() [7924] std::_Rb_tree_iterator*>::_Rb_tree_iterator(std::_Rb_tree_node_base*) [1] gfx_sp_tri1 (gfx_pc.c) + [8248] Array*>::~Array() [8213] std::_Rb_tree_iterator*>::operator--() [2] gfx_sp_vertex (gfx_pc.c) + [8029] Array*>::Add(DataNode* const&) [8027] std::_Rb_tree_iterator >::_Rb_tree_iterator(std::_Rb_tree_node_base*) [26] gfx_texture_cache_lookup (gfx_pc.c) + [7947] Array*>::end() [8343] std::_Rb_tree_key_compare*> >::_Rb_tree_key_compare() [62] guMtxIdentF + [8249] Array*>::Clear() [8344] std::_Rb_tree_key_compare >::_Rb_tree_key_compare() [63] interpolate_angles (rendering_graph_node.c) + [7948] Array*>::begin() [87] std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [27] interpolate_vectors + [8030] Array*>::Resize(int) [7926] std::_Rb_tree_const_iterator*>::_Rb_tree_const_iterator(std::_Rb_tree_iterator*> const&) [64] is_player_active + [8173] Array*>::Array() [8095] std::_Rb_tree_const_iterator*>::operator++(int) [66] make_vertex + [8250] Array*>::~Array() [8120] std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_iterator > const&) [91] movtex_gen_quads_id + [8251] Array*>::end() [7943] std::_Rb_tree_const_iterator >::_Rb_tree_const_iterator(std::_Rb_tree_node_base const*) [67] movtex_make_quad_vertex + [8252] Array*>::Clear() [8345] std::_Rb_tree_const_iterator >::operator++(int) [68] mtxf_copy + [8253] Array*>::begin() [8115] std::map, std::allocator > >::lower_bound(void const* const&) [69] mtxf_mul + [8174] Array*>::Array() [8116] std::map, std::allocator > >::end() [28] mtxf_rotate_xyz_and_translate + [8254] Array*>::~Array() [8282] std::map, std::allocator > >::erase(void const* const&) [70] mtxf_scale_vec3f + [7951] Array*>::end() [8346] std::map, std::allocator > >::map() [29] mtxf_to_mtx + [8255] Array*>::Clear() [8117] std::map, std::allocator > >::operator[](void const* const&) [71] nearest_mario_state_to_object + [7952] Array*>::begin() [31] std::set*, std::less*>, std::allocator*> >::find(DataNode* const&) [72] osEepromLongWrite + [8175] Array*>::Array() [102] std::set*, std::less*>, std::allocator*> >::erase(DataNode* const&) [73] play_sound_if_cam_switched_to_lakitu_or_mario + [8256] Array*>::~Array() [97] std::set*, std::less*>, std::allocator*> >::insert(DataNode* const&) [74] process_notes + [7956] Array*>::end() [8347] std::set*, std::less*>, std::allocator*> >::set() [75] ray_surface_intersect + [8257] Array*>::Clear() [8214] std::pair::pair(std::tuple&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) [76] round_float + [7957] Array*>::begin() [8215] std::pair::pair(std::piecewise_construct_t, std::tuple, std::tuple<>) [30] sequence_channel_process_sound (effects.c) + [8176] Array*>::Array() [8283] std::pair::pair(char const*&, GfxData*&) [77] sequence_player_process_sequence + [8258] Array*>::~Array() [8284] std::pair::operator=(std::pair const&) [78] sequence_player_process_sound + [8157] Array*>::end() [8058] std::pair::pair*>*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node*>*&, std::_Rb_tree_node_base*&) [79] update_objects_in_list + [8259] Array*>::Clear() [8285] std::pair::pair >*&, std::_Rb_tree_node_base*&, true>(std::_Rb_tree_node >*&, std::_Rb_tree_node_base*&) [80] vec3f_copy + [8158] Array*>::begin() [8348] std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base*&) [92] vec3f_length + [8177] Array*>::Array() [8159] std::pair::pair(std::_Rb_tree_node_base*&, std::_Rb_tree_node_base* const&) [93] vec3f_normalize + [8260] Array*>::~Array() [8108] std::pair::pair(void*&&, void*&&) [81] vec3s_copy diff --git a/include/macros.h b/include/macros.h index 1368d4d1..7a384b0a 100644 --- a/include/macros.h +++ b/include/macros.h @@ -79,4 +79,13 @@ # define LE_TO_HOST32(x) (x) #endif +// Optimize +#ifdef __clang__ +#define OPTIMIZE_O3 +#elif __GNUC__ +#define OPTIMIZE_O3 __attribute__((optimize("O3"))) +#else +#define OPTIMIZE_O3 +#endif + #endif // MACROS_H diff --git a/src/game/object_helpers.c b/src/game/object_helpers.c index 85995182..6f7183c5 100644 --- a/src/game/object_helpers.c +++ b/src/game/object_helpers.c @@ -1290,6 +1290,7 @@ void cur_obj_set_model(s32 modelID) { void obj_set_model(struct Object* obj, s32 modelID) { obj->header.gfx.sharedChild = gLoadedGraphNodes[modelID]; + dynos_actor_override((void*)&obj->header.gfx.sharedChild); } void mario_set_flag(s32 flag) { diff --git a/src/pc/configfile.c b/src/pc/configfile.c index 9acafc90..42ad39ea 100644 --- a/src/pc/configfile.c +++ b/src/pc/configfile.c @@ -265,22 +265,22 @@ static void dynos_pack_read(char** tokens, int numTokens) { } bool enabled = !(strcmp(tokens[numTokens-1], "true")); - int packCount = dynos_packs_get_count(); + int packCount = dynos_pack_get_count(); for (int i = 0; i < packCount; i++) { - const char* pack = dynos_packs_get(i); + const char* pack = dynos_pack_get_name(i); if (!strcmp(fullPackName, pack)) { - dynos_packs_set_enabled(i, enabled); + dynos_pack_set_enabled(i, enabled); break; } } } static void dynos_pack_write(FILE* file) { - int packCount = dynos_packs_get_count(); + int packCount = dynos_pack_get_count(); for (int i = 0; i < packCount; i++) { - bool enabled = dynos_packs_get_enabled(i); - const char* pack = dynos_packs_get(i); + bool enabled = dynos_pack_get_enabled(i); + const char* pack = dynos_pack_get_name(i); fprintf(file, "%s %s %s\n", "dynos-pack:", pack, enabled ? "true" : "false"); } } diff --git a/src/pc/djui/djui_panel_dynos.c b/src/pc/djui/djui_panel_dynos.c index 76750d21..63e5a51b 100644 --- a/src/pc/djui/djui_panel_dynos.c +++ b/src/pc/djui/djui_panel_dynos.c @@ -4,11 +4,11 @@ #include "data/dynos.c.h" static void djui_panel_dynos_apply(struct DjuiBase* caller) { - dynos_packs_set_enabled(caller->tag, caller->bTag); + dynos_pack_set_enabled(caller->tag, caller->bTag); } void djui_panel_dynos_create(struct DjuiBase* caller) { - int packCount = dynos_packs_get_count(); + int packCount = dynos_pack_get_count(); f32 bodyHeight = (416) + 64 * 1 + 16 * 1; struct DjuiBase* defaultBase = NULL; @@ -19,8 +19,8 @@ void djui_panel_dynos_create(struct DjuiBase* caller) { struct DjuiPaginated* paginated = djui_paginated_create(&body->base, 8); struct DjuiBase* layoutBase = &paginated->layout->base; for (int i = 0; i < packCount; i++) { - bool tmp = dynos_packs_get_enabled(i); - const char* pack = dynos_packs_get(i); + bool tmp = dynos_pack_get_enabled(i); + const char* pack = dynos_pack_get_name(i); struct DjuiCheckbox* checkbox1 = djui_checkbox_create(layoutBase, pack, &tmp); checkbox1->base.tag = i; diff --git a/src/pc/gfx/gfx_pc.c b/src/pc/gfx/gfx_pc.c index 905d6e24..6d745b49 100644 --- a/src/pc/gfx/gfx_pc.c +++ b/src/pc/gfx/gfx_pc.c @@ -692,7 +692,7 @@ static void calculate_normal_dir(const Light_t *light, float coeffs[3]) { gfx_normalize_vector(coeffs); } -static void gfx_matrix_mul(float res[4][4], const float a[4][4], const float b[4][4]) { +static void OPTIMIZE_O3 gfx_matrix_mul(float res[4][4], const float a[4][4], const float b[4][4]) { float tmp[4][4]; for (int32_t i = 0; i < 4; i++) { for (int j = 0; j < 4; j++) { @@ -757,7 +757,7 @@ static float gfx_adjust_x_for_aspect_ratio(float x) { return x * (4.0f / 3.0f) / ((float)gfx_current_dimensions.width / (float)gfx_current_dimensions.height); } -static void gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx *vertices) { +static void OPTIMIZE_O3 gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx *vertices) { for (size_t i = 0; i < n_vertices; i++, dest_index++) { const Vtx_t *v = &vertices[i].v; const Vtx_tn *vn = &vertices[i].n; @@ -862,7 +862,7 @@ static void gfx_sp_vertex(size_t n_vertices, size_t dest_index, const Vtx *verti } } -static void gfx_sp_tri1(uint8_t vtx1_idx, uint8_t vtx2_idx, uint8_t vtx3_idx) { +static void OPTIMIZE_O3 gfx_sp_tri1(uint8_t vtx1_idx, uint8_t vtx2_idx, uint8_t vtx3_idx) { struct LoadedVertex *v1 = &rsp.loaded_vertices[vtx1_idx]; struct LoadedVertex *v2 = &rsp.loaded_vertices[vtx2_idx]; struct LoadedVertex *v3 = &rsp.loaded_vertices[vtx3_idx]; @@ -1525,7 +1525,7 @@ static inline void *seg_addr(uintptr_t w1) { #define C0(pos, width) ((cmd->words.w0 >> (pos)) & ((1U << width) - 1)) #define C1(pos, width) ((cmd->words.w1 >> (pos)) & ((1U << width) - 1)) -static void gfx_run_dl(Gfx* cmd) { +static void OPTIMIZE_O3 gfx_run_dl(Gfx* cmd) { for (;;) { uint32_t opcode = cmd->words.w0 >> 24; diff --git a/src/pc/mixer.c b/src/pc/mixer.c index 282aef9f..059f335b 100644 --- a/src/pc/mixer.c +++ b/src/pc/mixer.c @@ -2,6 +2,7 @@ #include #include #include +#include "macros.h" #ifdef __SSE4_1__ #include @@ -87,7 +88,7 @@ static int16_t resample_table[64][4] = { {0xffd8, 0x0e5f, 0x6696, 0x0b39}, {0xffdf, 0x0d46, 0x66ad, 0x0c39} }; -static inline int16_t clamp16(int32_t v) { +static inline int16_t OPTIMIZE_O3 clamp16(int32_t v) { if (v < -0x8000) { return -0x8000; } else if (v > 0x7fff) { @@ -206,7 +207,7 @@ void aSetLoopImpl(ADPCM_STATE *adpcm_loop_state) { rspa.adpcm_loop_state = adpcm_loop_state; } -void aADPCMdecImpl(uint8_t flags, ADPCM_STATE state) { +void OPTIMIZE_O3 aADPCMdecImpl(uint8_t flags, ADPCM_STATE state) { #if HAS_SSE41 const __m128i tblrev = _mm_setr_epi8(12, 13, 10, 11, 8, 9, 6, 7, 4, 5, 2, 3, 0, 1, -1, -1); const __m128i pos0 = _mm_set_epi8(3, -1, 3, -1, 2, -1, 2, -1, 1, -1, 1, -1, 0, -1, 0, -1); @@ -374,7 +375,7 @@ void aADPCMdecImpl(uint8_t flags, ADPCM_STATE state) { memcpy(state, out - 16, 16 * sizeof(int16_t)); } -void aResampleImpl(uint8_t flags, uint16_t pitch, RESAMPLE_STATE state) { +void OPTIMIZE_O3 aResampleImpl(uint8_t flags, uint16_t pitch, RESAMPLE_STATE state) { int16_t tmp[16]; int16_t *in_initial = rspa.buf.as_s16 + rspa.in / sizeof(int16_t); int16_t *in = in_initial; @@ -527,7 +528,7 @@ void aResampleImpl(uint8_t flags, uint16_t pitch, RESAMPLE_STATE state) { } -void aEnvMixerImpl(uint8_t flags, ENVMIX_STATE state) { +void OPTIMIZE_O3 aEnvMixerImpl(uint8_t flags, ENVMIX_STATE state) { int16_t *in = rspa.buf.as_s16 + rspa.in / sizeof(int16_t); int16_t *dry[2] = {rspa.buf.as_s16 + rspa.out / sizeof(int16_t), rspa.buf.as_s16 + rspa.dry_right / sizeof(int16_t)}; int16_t *wet[2] = {rspa.buf.as_s16 + rspa.wet_left / sizeof(int16_t), rspa.buf.as_s16 + rspa.wet_right / sizeof(int16_t)}; diff --git a/src/pc/mods/mod_cache.c b/src/pc/mods/mod_cache.c index 26671d85..d604d59b 100644 --- a/src/pc/mods/mod_cache.c +++ b/src/pc/mods/mod_cache.c @@ -188,10 +188,6 @@ void mod_cache_add(struct Mod* mod, struct ModFile* file) { LOG_ERROR("Could not add to cache, mod or file is null"); return; } - if (mod->basePath == NULL || file->relativePath == NULL) { - LOG_ERROR("Could not add to cache, basepath or relativepath is null"); - return; - } // if we already have a cached path, don't do anything if (file->cachedPath != NULL) {