[Scummvm-git-logs] scummvm master -> 47226d69f91a1c661bc28350705f6101fb40144b
elasota
noreply at scummvm.org
Sat Jul 9 04:35:22 UTC 2022
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
47226d69f9 MTROPOLIS: Don't do expensive message debugging stuff unless the string will actually be printed
Commit: 47226d69f91a1c661bc28350705f6101fb40144b
https://github.com/scummvm/scummvm/commit/47226d69f91a1c661bc28350705f6101fb40144b
Author: elasota (ejlasota at gmail.com)
Date: 2022-07-09T00:35:04-04:00
Commit Message:
MTROPOLIS: Don't do expensive message debugging stuff unless the string will actually be printed
Changed paths:
engines/mtropolis/runtime.cpp
diff --git a/engines/mtropolis/runtime.cpp b/engines/mtropolis/runtime.cpp
index 7e18f8688b0..58f0282930f 100644
--- a/engines/mtropolis/runtime.cpp
+++ b/engines/mtropolis/runtime.cpp
@@ -4503,277 +4503,280 @@ void Runtime::loadScene(const Common::SharedPtr<Structural>& scene) {
void Runtime::sendMessageOnVThread(const Common::SharedPtr<MessageDispatch> &dispatch) {
#ifndef DISABLE_TEXT_CONSOLE
- const char *nameStr = "";
- int srcID = 0;
- const char *destStr = "";
- int destID = 0;
- Common::SharedPtr<RuntimeObject> src = dispatch->getMsg()->getSource().lock();
-
- if (src) {
- srcID = src->getStaticGUID();
- if (src->isStructural())
- nameStr = static_cast<Structural *>(src.get())->getName().c_str();
- else if (src->isModifier())
- nameStr = static_cast<Modifier *>(src.get())->getName().c_str();
- }
-
- RuntimeObject *dest = dispatch->getRootPropagator();
- if (dest) {
- destID = dest->getStaticGUID();
- if (dest->isStructural())
- destStr = static_cast<Structural *>(dest)->getName().c_str();
- else if (dest->isModifier())
- destStr = static_cast<Modifier *>(dest)->getName().c_str();
-
- }
-
- const Event evt = dispatch->getMsg()->getEvent();
- bool cascade = dispatch->isCascade();
- bool relay = dispatch->isRelay();
-
- Common::String msgDebugString;
- msgDebugString = Common::String::format("(%i,%i)", evt.eventType, evt.eventInfo);
- if (evt.eventType == EventIDs::kAuthorMessage && _project) {
- msgDebugString += " '";
- msgDebugString += _project->findAuthorMessageName(evt.eventInfo);
- msgDebugString += "'";
- } else {
- const char *extType = nullptr;
- switch (evt.eventType) {
- case EventIDs::kElementEnableEdit:
- extType = "Element Enable Edit";
- break;
- case EventIDs::kElementDisableEdit:
- extType = "Element Disable Edit";
- break;
- case EventIDs::kElementSelect:
- extType = "Element Select";
- break;
- case EventIDs::kElementDeselect:
- extType = "Element Deselect";
- break;
- case EventIDs::kElementToggleSelect:
- extType = "Element Toggle Select";
- break;
- case EventIDs::kElementUpdatedCalculated:
- extType = "Element Updated Calculated";
- break;
- case EventIDs::kElementShow:
- extType = "Element Show";
- break;
- case EventIDs::kElementHide:
- extType = "Element Hide";
- break;
- case EventIDs::kElementScrollUp:
- extType = "Element Scroll Up";
- break;
- case EventIDs::kElementScrollDown:
- extType = "Element Scroll Down";
- break;
- case EventIDs::kElementScrollRight:
- extType = "Element Scroll Right";
- break;
- case EventIDs::kElementScrollLeft:
- extType = "Element Scroll Left";
- break;
+ const int msgDebugLevel = 3;
+
+ if (gDebugLevel >= msgDebugLevel) {
+ const char *nameStr = "";
+ int srcID = 0;
+ const char *destStr = "";
+ int destID = 0;
+ Common::SharedPtr<RuntimeObject> src = dispatch->getMsg()->getSource().lock();
+
+ if (src) {
+ srcID = src->getStaticGUID();
+ if (src->isStructural())
+ nameStr = static_cast<Structural *>(src.get())->getName().c_str();
+ else if (src->isModifier())
+ nameStr = static_cast<Modifier *>(src.get())->getName().c_str();
+ }
- case EventIDs::kMotionStarted:
- extType = "Motion Ended";
- break;
- case EventIDs::kMotionEnded:
- extType = "Motion Started";
- break;
+ RuntimeObject *dest = dispatch->getRootPropagator();
+ if (dest) {
+ destID = dest->getStaticGUID();
+ if (dest->isStructural())
+ destStr = static_cast<Structural *>(dest)->getName().c_str();
+ else if (dest->isModifier())
+ destStr = static_cast<Modifier *>(dest)->getName().c_str();
+ }
- case EventIDs::kTransitionStarted:
- extType = "Transition Started";
- break;
- case EventIDs::kTransitionEnded:
- extType = "Transition Ended";
- break;
+ const Event evt = dispatch->getMsg()->getEvent();
+ bool cascade = dispatch->isCascade();
+ bool relay = dispatch->isRelay();
- case EventIDs::kMouseDown:
- extType = "Mouse Down";
- break;
- case EventIDs::kMouseUp:
- extType = "Mouse Up";
- break;
- case EventIDs::kMouseOver:
- extType = "Mouse Over";
- break;
- case EventIDs::kMouseOutside:
- extType = "Mouse Outside";
- break;
- case EventIDs::kMouseTrackedInside:
- extType = "Mouse Tracked Inside";
- break;
- case EventIDs::kMouseTrackedOutside:
- extType = "Mouse Tracked Outside";
- break;
- case EventIDs::kMouseTracking:
- extType = "Mouse Tracking";
- break;
- case EventIDs::kMouseUpInside:
- extType = "Mouse Up Inside";
- break;
- case EventIDs::kMouseUpOutside:
- extType = "Mouse Up Outside";
- break;
+ Common::String msgDebugString;
+ msgDebugString = Common::String::format("(%i,%i)", evt.eventType, evt.eventInfo);
+ if (evt.eventType == EventIDs::kAuthorMessage && _project) {
+ msgDebugString += " '";
+ msgDebugString += _project->findAuthorMessageName(evt.eventInfo);
+ msgDebugString += "'";
+ } else {
+ const char *extType = nullptr;
+ switch (evt.eventType) {
+ case EventIDs::kElementEnableEdit:
+ extType = "Element Enable Edit";
+ break;
+ case EventIDs::kElementDisableEdit:
+ extType = "Element Disable Edit";
+ break;
+ case EventIDs::kElementSelect:
+ extType = "Element Select";
+ break;
+ case EventIDs::kElementDeselect:
+ extType = "Element Deselect";
+ break;
+ case EventIDs::kElementToggleSelect:
+ extType = "Element Toggle Select";
+ break;
+ case EventIDs::kElementUpdatedCalculated:
+ extType = "Element Updated Calculated";
+ break;
+ case EventIDs::kElementShow:
+ extType = "Element Show";
+ break;
+ case EventIDs::kElementHide:
+ extType = "Element Hide";
+ break;
+ case EventIDs::kElementScrollUp:
+ extType = "Element Scroll Up";
+ break;
+ case EventIDs::kElementScrollDown:
+ extType = "Element Scroll Down";
+ break;
+ case EventIDs::kElementScrollRight:
+ extType = "Element Scroll Right";
+ break;
+ case EventIDs::kElementScrollLeft:
+ extType = "Element Scroll Left";
+ break;
- case EventIDs::kSceneStarted:
- extType = "Scene Started";
- break;
- case EventIDs::kSceneEnded:
- extType = "Scene Ended";
- break;
- case EventIDs::kSceneDeactivated:
- extType = "Scene Deactivate";
- break;
- case EventIDs::kSceneReactivated:
- extType = "Scene Reactivated";
- break;
- case EventIDs::kSceneTransitionEnded:
- extType = "Scene Transition Ended";
- break;
+ case EventIDs::kMotionStarted:
+ extType = "Motion Ended";
+ break;
+ case EventIDs::kMotionEnded:
+ extType = "Motion Started";
+ break;
- case EventIDs::kSharedSceneReturnedToScene:
- extType = "Scene Returned To Scene";
- break;
- case EventIDs::kSharedSceneSceneChanged:
- extType = "Scene Scene Changed";
- break;
- case EventIDs::kSharedSceneNoNextScene:
- extType = "Shared Scene No Next Scene";
- break;
- case EventIDs::kSharedSceneNoPrevScene:
- extType = "Shared Scene No Prev Scene";
- break;
+ case EventIDs::kTransitionStarted:
+ extType = "Transition Started";
+ break;
+ case EventIDs::kTransitionEnded:
+ extType = "Transition Ended";
+ break;
- case EventIDs::kParentEnabled:
- extType = "Parent Enabled";
- break;
- case EventIDs::kParentDisabled:
- extType = "Parent Disabled";
- break;
- case EventIDs::kParentChanged:
- extType = "Parent Changed";
- break;
+ case EventIDs::kMouseDown:
+ extType = "Mouse Down";
+ break;
+ case EventIDs::kMouseUp:
+ extType = "Mouse Up";
+ break;
+ case EventIDs::kMouseOver:
+ extType = "Mouse Over";
+ break;
+ case EventIDs::kMouseOutside:
+ extType = "Mouse Outside";
+ break;
+ case EventIDs::kMouseTrackedInside:
+ extType = "Mouse Tracked Inside";
+ break;
+ case EventIDs::kMouseTrackedOutside:
+ extType = "Mouse Tracked Outside";
+ break;
+ case EventIDs::kMouseTracking:
+ extType = "Mouse Tracking";
+ break;
+ case EventIDs::kMouseUpInside:
+ extType = "Mouse Up Inside";
+ break;
+ case EventIDs::kMouseUpOutside:
+ extType = "Mouse Up Outside";
+ break;
- case EventIDs::kPreloadMedia:
- extType = "Preload Media";
- break;
- case EventIDs::kFlushMedia:
- extType = "Flush Media";
- break;
- case EventIDs::kPrerollMedia:
- extType = "Preroll Media";
- break;
+ case EventIDs::kSceneStarted:
+ extType = "Scene Started";
+ break;
+ case EventIDs::kSceneEnded:
+ extType = "Scene Ended";
+ break;
+ case EventIDs::kSceneDeactivated:
+ extType = "Scene Deactivate";
+ break;
+ case EventIDs::kSceneReactivated:
+ extType = "Scene Reactivated";
+ break;
+ case EventIDs::kSceneTransitionEnded:
+ extType = "Scene Transition Ended";
+ break;
- case EventIDs::kCloseProject:
- extType = "Close Project";
- break;
+ case EventIDs::kSharedSceneReturnedToScene:
+ extType = "Scene Returned To Scene";
+ break;
+ case EventIDs::kSharedSceneSceneChanged:
+ extType = "Scene Scene Changed";
+ break;
+ case EventIDs::kSharedSceneNoNextScene:
+ extType = "Shared Scene No Next Scene";
+ break;
+ case EventIDs::kSharedSceneNoPrevScene:
+ extType = "Shared Scene No Prev Scene";
+ break;
- case EventIDs::kUserTimeout:
- extType = "User Timeout";
- break;
- case EventIDs::kProjectStarted:
- extType = "Project Started";
- break;
- case EventIDs::kProjectEnded:
- extType = "Project Ended";
- break;
- case EventIDs::kFlushAllMedia:
- extType = "Flush All Media";
- break;
+ case EventIDs::kParentEnabled:
+ extType = "Parent Enabled";
+ break;
+ case EventIDs::kParentDisabled:
+ extType = "Parent Disabled";
+ break;
+ case EventIDs::kParentChanged:
+ extType = "Parent Changed";
+ break;
- case EventIDs::kAttribGet:
- extType = "Attrib Get";
- break;
- case EventIDs::kAttribSet:
- extType = "Attrib Set";
- break;
+ case EventIDs::kPreloadMedia:
+ extType = "Preload Media";
+ break;
+ case EventIDs::kFlushMedia:
+ extType = "Flush Media";
+ break;
+ case EventIDs::kPrerollMedia:
+ extType = "Preroll Media";
+ break;
- case EventIDs::kClone:
- extType = "Clone";
- break;
- case EventIDs::kKill:
- extType = "Kill";
- break;
+ case EventIDs::kCloseProject:
+ extType = "Close Project";
+ break;
- case EventIDs::kPlay:
- extType = "Play";
- break;
- case EventIDs::kStop:
- extType = "Stop";
- break;
- case EventIDs::kPause:
- extType = "Pause";
- break;
- case EventIDs::kUnpause:
- extType = "Unpause";
- break;
- case EventIDs::kTogglePause:
- extType = "Toggle Pause";
- break;
- case EventIDs::kAtFirstCel:
- extType = "At First Cel";
- break;
- case EventIDs::kAtLastCel:
- extType = "At Last Cell";
- break;
- default:
- break;
- }
+ case EventIDs::kUserTimeout:
+ extType = "User Timeout";
+ break;
+ case EventIDs::kProjectStarted:
+ extType = "Project Started";
+ break;
+ case EventIDs::kProjectEnded:
+ extType = "Project Ended";
+ break;
+ case EventIDs::kFlushAllMedia:
+ extType = "Flush All Media";
+ break;
- if (extType) {
- msgDebugString += " '";
- msgDebugString += extType;
- msgDebugString += "'";
+ case EventIDs::kAttribGet:
+ extType = "Attrib Get";
+ break;
+ case EventIDs::kAttribSet:
+ extType = "Attrib Set";
+ break;
+
+ case EventIDs::kClone:
+ extType = "Clone";
+ break;
+ case EventIDs::kKill:
+ extType = "Kill";
+ break;
+
+ case EventIDs::kPlay:
+ extType = "Play";
+ break;
+ case EventIDs::kStop:
+ extType = "Stop";
+ break;
+ case EventIDs::kPause:
+ extType = "Pause";
+ break;
+ case EventIDs::kUnpause:
+ extType = "Unpause";
+ break;
+ case EventIDs::kTogglePause:
+ extType = "Toggle Pause";
+ break;
+ case EventIDs::kAtFirstCel:
+ extType = "At First Cel";
+ break;
+ case EventIDs::kAtLastCel:
+ extType = "At Last Cell";
+ break;
+ default:
+ break;
+ }
+
+ if (extType) {
+ msgDebugString += " '";
+ msgDebugString += extType;
+ msgDebugString += "'";
+ }
}
- }
- Common::String valueStr;
- const DynamicValue &payload = dispatch->getMsg()->getValue();
+ Common::String valueStr;
+ const DynamicValue &payload = dispatch->getMsg()->getValue();
- if (payload.getType() != DynamicValueTypes::kNull) {
- switch (payload.getType()) {
- case DynamicValueTypes::kBoolean:
- valueStr = (payload.getBool() ? "true" : "false");
- break;
- case DynamicValueTypes::kInteger:
- valueStr = Common::String::format("%i", payload.getInt());
- break;
- case DynamicValueTypes::kFloat:
- valueStr = Common::String::format("%g", payload.getFloat());
- break;
- case DynamicValueTypes::kPoint:
- valueStr = Common::String::format("(%i,%i)", payload.getPoint().x, payload.getPoint().y);
- break;
- case DynamicValueTypes::kIntegerRange:
- valueStr = Common::String::format("(%i thru %i)", payload.getIntRange().min, payload.getIntRange().max);
- break;
- case DynamicValueTypes::kVector:
- valueStr = Common::String::format("(%g deg %g mag)", payload.getVector().angleDegrees, payload.getVector().magnitude);
- break;
- case DynamicValueTypes::kString:
- valueStr = "'" + payload.getString() + "'";
- break;
- case DynamicValueTypes::kList:
- valueStr = "List";
- break;
- case DynamicValueTypes::kObject:
- valueStr = "Object";
- if (RuntimeObject *obj = payload.getObject().object.lock().get())
- valueStr += Common::String::format(" %x", obj->getStaticGUID());
- break;
- default:
- valueStr = "<BAD TYPE> (this is a bug!)";
- break;
+ if (payload.getType() != DynamicValueTypes::kNull) {
+ switch (payload.getType()) {
+ case DynamicValueTypes::kBoolean:
+ valueStr = (payload.getBool() ? "true" : "false");
+ break;
+ case DynamicValueTypes::kInteger:
+ valueStr = Common::String::format("%i", payload.getInt());
+ break;
+ case DynamicValueTypes::kFloat:
+ valueStr = Common::String::format("%g", payload.getFloat());
+ break;
+ case DynamicValueTypes::kPoint:
+ valueStr = Common::String::format("(%i,%i)", payload.getPoint().x, payload.getPoint().y);
+ break;
+ case DynamicValueTypes::kIntegerRange:
+ valueStr = Common::String::format("(%i thru %i)", payload.getIntRange().min, payload.getIntRange().max);
+ break;
+ case DynamicValueTypes::kVector:
+ valueStr = Common::String::format("(%g deg %g mag)", payload.getVector().angleDegrees, payload.getVector().magnitude);
+ break;
+ case DynamicValueTypes::kString:
+ valueStr = "'" + payload.getString() + "'";
+ break;
+ case DynamicValueTypes::kList:
+ valueStr = "List";
+ break;
+ case DynamicValueTypes::kObject:
+ valueStr = "Object";
+ if (RuntimeObject *obj = payload.getObject().object.lock().get())
+ valueStr += Common::String::format(" %x", obj->getStaticGUID());
+ break;
+ default:
+ valueStr = "<BAD TYPE> (this is a bug!)";
+ break;
+ }
+
+ valueStr = " with value " + valueStr;
}
- valueStr = " with value " + valueStr;
+ debug(msgDebugLevel, "Object %x '%s' posted message %s to %x '%s'%s mod: %s ele: %s", srcID, nameStr, msgDebugString.c_str(), destID, destStr, valueStr.c_str(), relay ? "all" : "first", cascade ? "all" : "targetOnly");
}
-
- debug(3, "Object %x '%s' posted message %s to %x '%s'%s mod: %s ele: %s", srcID, nameStr, msgDebugString.c_str(), destID, destStr, valueStr.c_str(), relay ? "all" : "first", cascade ? "all" : "targetOnly");
#endif
DispatchMethodTaskData *taskData = _vthread->pushTask("Runtime::dispatchMessageTask", this, &Runtime::dispatchMessageTask);
More information about the Scummvm-git-logs
mailing list