From f7f7c7c3672a343c3eea2cc53ec46f5b98dff0cc Mon Sep 17 00:00:00 2001 From: Chuck Fry Date: Tue, 21 Feb 2023 20:56:21 -0800 Subject: [PATCH 01/13] src/exec/PlexilExec.cc, src/exec/NodeImpl.cc: Implement first PlanDebug messages --- src/exec/NodeImpl.cc | 11 +++++++ src/exec/PlexilExec.cc | 75 +++++++++++++++++++++++++++++++++++------- 2 files changed, 74 insertions(+), 12 deletions(-) diff --git a/src/exec/NodeImpl.cc b/src/exec/NodeImpl.cc index 8ce6e367..33db255a 100644 --- a/src/exec/NodeImpl.cc +++ b/src/exec/NodeImpl.cc @@ -783,6 +783,10 @@ namespace PLEXIL if (m_nextState == m_state) return; + debugMsg("PlanDebug:transition", + ' ' << getNodeId() << " (" << static_cast(this) + << ") from " << nodeStateName(m_state) + << " to " << nodeStateName(m_nextState)); debugMsg("Node:transition", " Transitioning " << m_nodeId << ' ' << this << " from " << nodeStateName(m_state) << " to " << nodeStateName(m_nextState) @@ -1531,6 +1535,9 @@ namespace PLEXIL void NodeImpl::setNodeOutcome(NodeOutcome o) { + condDebugMsg(o != NO_OUTCOME && o != m_outcome, + "PlanDebug:outcome", + " " << getNodeId() << " (" << static_cast(this) << ") outcome " << outcomeName(o)); m_outcome = o; } @@ -1541,6 +1548,10 @@ namespace PLEXIL void NodeImpl::setNodeFailureType(FailureType f) { + condDebugMsg(f != NO_FAILURE && f != m_failureType, + "PlanDebug:failure", + " " << getNodeId() << " (" << static_cast(this) << ") failure type " + << failureTypeName(f)); m_failureType = f; } diff --git a/src/exec/PlexilExec.cc b/src/exec/PlexilExec.cc index c2777d8f..c99ac39f 100644 --- a/src/exec/PlexilExec.cc +++ b/src/exec/PlexilExec.cc @@ -41,6 +41,7 @@ #include "Variable.hh" #include // std::remove_if() +#include // std::setprecision() namespace PLEXIL { @@ -257,10 +258,16 @@ namespace PLEXIL #ifndef NO_DEBUG_MESSAGE_SUPPORT // Only used in debugMsg calls - unsigned int stepCount = 0; unsigned int cycleNum = StateCache::instance().getCycleCount(); + unsigned int stepCount = 0; + unsigned int microStepCount = 0; #endif + debugMsg("PlanDebug:macroStep", + " == Start macro step " << cycleNum << " @ " + << std::setprecision(15) << startTime << ", " + << m_candidateQueue.size() << " candidates, " + << m_pendingQueue.size() << " pending =="); debugMsg("PlexilExec:step", " ==>Start cycle " << cycleNum); // A Node is initially inserted on the pending queue when it is eligible to @@ -269,10 +276,15 @@ namespace PLEXIL // - its conditions have changed and it is no longer eligible to execute; // - it has acquired the resources and is transitioning to EXECUTING. // - // At each step, each node in the pending queue is checked. + // At each micro step, each node in the pending queue is checked. // BEGIN QUIESCENCE LOOP do { + debugMsg("PlanDebug:microStep", + " = Start micro step " << cycleNum << ':' << stepCount + << ", " << m_candidateQueue.size() << " candidates, " + << m_pendingQueue.size() << " pending ="); + debugStmt("PlexilExec:step", { getDebugOutputStream() << "[PlexilExec:step][" @@ -294,15 +306,20 @@ namespace PLEXIL if (canTransition) { debugMsg("PlexilExec:step", " Node " << candidate->getNodeId() << ' ' << candidate - << " can transition from " - << nodeStateName(candidate->getState()) + << " can transition from " << nodeStateName(candidate->getState()) << " to " << nodeStateName(candidate->getNextState())); if (!resourceCheckRequired(candidate)) { // The node is eligible to transition now + debugMsg("PlanDebug:check", + " " << candidate->getNodeId() << " (" << candidate + << ") may transition now"); addStateChangeNode(candidate); } else { // Possibility of conflict - set it aside to evaluate as a batch + debugMsg("PlanDebug:check", + " " << candidate->getNodeId() << " (" << candidate + << ") needs resource check"); addPendingNode(candidate); } } @@ -319,19 +336,22 @@ namespace PLEXIL resolveResourceConflicts(); } - if (m_stateChangeQueue.empty()) + if (m_stateChangeQueue.empty()) { + debugMsg("PlanDebug:microStep", + " = End micro step " << cycleNum << ':' << stepCount << " ="); break; // nothing to do, exit quiescence loop + } +#ifndef NO_DEBUG_MESSAGE_SUPPORT debugStmt("PlexilExec:step", { getDebugOutputStream() << "[PlexilExec:step][" << cycleNum << ":" << stepCount << "]"; printStateChangeQueue(); }); - -#ifndef NO_DEBUG_MESSAGE_SUPPORT - // Only used in debug messages - unsigned int microStepCount = 0; + debugMsg("PlanDebug:microStep", + " " << m_stateChangeQueue.size() << " nodes transitioning"); + microStepCount = 0; #endif // Reserve space for the transitions to be published @@ -347,7 +367,7 @@ namespace PLEXIL "[" << cycleNum << ":" << stepCount << ":" << microStepCount << "] Transitioning " << nodeTypeString(node->getType()) << " node " << node->getNodeId() << ' ' << node - << " from " << nodeStateName(node->getState()) + << " from " << nodeStateName(oldState) << " to " << nodeStateName(node->getNextState())); node->transition(this, startTime); if (m_listener) @@ -369,27 +389,40 @@ namespace PLEXIL m_transitionsToPublish.clear(); // Perform any assignments that resulted from these transitions - if (!m_assignmentsToExecute.empty() - || !m_assignmentsToRetract.empty()) + if (!m_assignmentsToExecute.empty() || !m_assignmentsToRetract.empty()) { + debugMsg("PlanDebug:microStep", + " Performing " << m_assignmentsToExecute.size() << " and retracting " + << m_assignmentsToRetract.size() << " assignments"); performAssignments(); + } // done with this batch #ifndef NO_DEBUG_MESSAGE_SUPPORT + debugMsg("PlanDebug:microStep", " = End micro step " << cycleNum << ':' << stepCount << " ="); ++stepCount; #endif } while (m_commandsToExecute.empty() && m_commandsToAbort.empty() + && m_updatesToExecute.empty() && !m_candidateQueue.empty()); // END QUIESCENCE LOOP // Perform side effects StateCache::instance().incrementCycleCount(); + condDebugMsg(!m_commandsToExecute.empty() || !m_commandsToAbort.empty(), + "PlanDebug:macroStep", + " Executing " << m_commandsToExecute.size() + << " and aborting " << m_commandsToAbort.size() << " commands"); + condDebugMsg(!m_updatesToExecute.empty(), + "PlanDebug:macroStep", + " Sending " << m_updatesToExecute.size() << " updates"); executeOutboundQueue(); if (m_listener) m_listener->stepComplete(cycleNum); debugMsg("PlexilExec:step", " ==>End cycle " << cycleNum); + debugMsg("PlanDebug:macroStep", " == End macro step " << cycleNum << " =="); for (NodePtr const &node: m_plan) debugMsg("PlexilExec:printPlan", std::endl << *const_cast(node.get())); @@ -404,6 +437,8 @@ namespace PLEXIL //! \note Node's queue status must be QUEUE_NONE. virtual void addCandidateNode(Node *node) override { + debugMsg("PlanDebug:candidates", + ' ' << node->getNodeId() << " (" << node << ") enqueued"); m_candidateQueue.push(node); } @@ -494,11 +529,15 @@ namespace PLEXIL // and node may not be eligible to execute any more if (!node->getDestState()) { // No longer transitioning at all - remove from pending queue + debugMsg("PlanDebug:check", + " " << node->getNodeId() << "(" << node << ") not transitioning"); removePendingNode(node); } else if (node->getNextState() != EXECUTING_STATE) { // Now transitioning to some other state // Remove from pending queue and add to state change queue + debugMsg("PlanDebug:check", + " " << node->getNodeId() << "(" << node << ") no longer transitioning to EXECUTING"); removePendingNode(node); addStateChangeNode(node); } @@ -512,12 +551,16 @@ namespace PLEXIL // but node may not be eligible to execute any more if (!node->getDestState()) { // No longer transitioning at all - remove from pending queue + debugMsg("PlanDebug:check", + " " << node->getNodeId() << "(" << node << ") not transitioning") removePendingNode(node); return false; } else if (node->getNextState() != EXECUTING_STATE) { // Transitioning to some other state // Remove from pending queue and add to state change queue + debugMsg("PlanDebug:check", + " " << node->getNodeId() << "(" << node << ") no longer transitioning to EXECUTING") removePendingNode(node); addStateChangeNode(node); return false; @@ -528,6 +571,8 @@ namespace PLEXIL case QUEUE_PENDING_TRY: // Resource(s) were released, give it a look + debugMsg("PlanDebug:check", + " " << node->getNodeId() << "(" << node << ") may be unblocked") return true; case QUEUE_PENDING: @@ -548,6 +593,7 @@ namespace PLEXIL void resolveResourceConflicts() { Node *priorityHead = m_pendingQueue.front(); + debugMsg("PlanDebug:check", ' ' << m_pendingQueue.size() << " nodes pending resource check"); std::vector priorityNodes; while (priorityHead) { // Gather nodes at same priority @@ -570,6 +616,7 @@ namespace PLEXIL debugMsg("PlexilExec:step", ' ' << priorityNodes.size() << " nodes eligible to acquire resources"); + debugMsg("PlanDebug:check", ' ' << priorityNodes.size() << " nodes @ priority " << thisPriority); // Let each node try to acquire its resources. // Transition the ones that succeed. @@ -578,11 +625,15 @@ namespace PLEXIL // Node can transition now debugMsg("PlexilExec:resolveResourceConflicts", ' ' << n->getNodeId() << " succeeded"); + debugMsg("PlanDebug:check", + ' ' << n->getNodeId() << "(" << n << ") can transition"); removePendingNode(n); addStateChangeNode(n); } else { // Can't get resources, so mark that node has been checked + debugMsg("PlanDebug:check", + ' ' << n->getNodeId() << "(" << n << ") is blocked"); n->setQueueStatus(QUEUE_PENDING); } } From 9580a1bc7c4fa78566bf63c2e2e3a91434a6184d Mon Sep 17 00:00:00 2001 From: Chuck Fry Date: Tue, 21 Feb 2023 20:57:17 -0800 Subject: [PATCH 02/13] src/app-framework/InterfaceManager.cc: Added a debugMsg() call to processQueue() method --- src/app-framework/InterfaceManager.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/app-framework/InterfaceManager.cc b/src/app-framework/InterfaceManager.cc index b50aa1d2..73a5f464 100644 --- a/src/app-framework/InterfaceManager.cc +++ b/src/app-framework/InterfaceManager.cc @@ -455,8 +455,10 @@ namespace PLEXIL bool InterfaceManager::processQueue() { assertTrue_1(m_inputQueue); - if (m_inputQueue->isEmpty()) + if (m_inputQueue->isEmpty()) { + debugMsg("InterfaceManager:processQueue", " Empty queue, returning false"); return false; + } bool needsStep = false; QueueEntry *entry; @@ -584,7 +586,7 @@ namespace PLEXIL } debugMsg("InterfaceManager:processQueue", - " Queue empty, returning " << (needsStep ? "true" : "false")); + " finished, returning " << (needsStep ? "true" : "false")); return needsStep; } From b3b4e0082b5bce3fbc492b89fb132390734353a7 Mon Sep 17 00:00:00 2001 From: Chuck Fry Date: Tue, 21 Feb 2023 20:59:09 -0800 Subject: [PATCH 03/13] src/app-framework/ExecApplication.cc: Minor optimization: reorganize step(), runExec() methods to avoid pointless calls to PlexilExec::step() --- src/app-framework/ExecApplication.cc | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/src/app-framework/ExecApplication.cc b/src/app-framework/ExecApplication.cc index d35c18c7..349070a1 100644 --- a/src/app-framework/ExecApplication.cc +++ b/src/app-framework/ExecApplication.cc @@ -454,12 +454,15 @@ namespace PLEXIL #endif debugMsg("ExecApplication:step", " Processing queue"); m_manager->processQueue(); - debugMsg("ExecApplication:step", " Stepping exec"); - m_exec->step(StateCache::queryTime()); - // Take care of any plans which have finished - m_exec->deleteFinishedPlans(); - allFinished = m_exec->allPlansFinished(); - needsStep = m_exec->needsStep(); + double now = StateCache::queryTime(); // side effect: notifies anything waiting on time + if (m_exec->needsStep()) { + debugMsg("ExecApplication:step", " Stepping exec"); + m_exec->step(now); + // Take care of any plans which have finished + m_exec->deleteFinishedPlans(); + allFinished = m_exec->allPlansFinished(); + needsStep = m_exec->needsStep(); + } } #ifdef PLEXIL_WITH_THREADS if (m_planLoaded && allFinished) { @@ -492,10 +495,12 @@ namespace PLEXIL debugMsg("ExecApplication:runExec", " Processing queue"); m_manager->processQueue(); do { - do { + double now = StateCache::queryTime(); // side effect: notifies anything waiting on time + while (m_exec->needsStep()) { debugMsg("ExecApplication:runExec", " Stepping exec"); - m_exec->step(StateCache::queryTime()); - } while (m_exec->needsStep()); + m_exec->step(now); + now = StateCache::queryTime(); + }; debugMsg("ExecApplication:runExec", " Processing queue"); } while (m_manager->processQueue()); From b65a1f84c9b6c96ff6d89b1c61b899787e36119d Mon Sep 17 00:00:00 2001 From: Chuck Fry Date: Wed, 22 Feb 2023 14:52:19 -0800 Subject: [PATCH 04/13] Reservable class: Make member variables private, replace with read-only accessors. Mutex::print(): Only caller of the new accessors. --- src/exec/Mutex.cc | 9 +++--- src/expr/Reservable.cc | 65 +++++++++++++++++------------------------- src/expr/Reservable.hh | 37 ++++++++++++------------ 3 files changed, 50 insertions(+), 61 deletions(-) diff --git a/src/exec/Mutex.cc b/src/exec/Mutex.cc index e0b780f7..76697edb 100644 --- a/src/exec/Mutex.cc +++ b/src/exec/Mutex.cc @@ -52,14 +52,15 @@ namespace PLEXIL { std::string indentStr(indent, ' '); stream << indentStr << "Mutex " << m_name; - if (m_holder) { - stream << ", held by " << m_holder->getNodeId() << ' ' << m_holder; + NodeConnector const *holder = getHolder(); + if (holder) { + stream << ", held by " << holder->getNodeId() << ' ' << holder; } else { stream << " (available)"; } - if (!m_waiters.empty()) { - stream << ", " << m_waiters.size() << " node(s) waiting"; + if (!getWaiters().empty()) { + stream << ", " << getWaiters().size() << " node(s) waiting"; } stream << '\n'; } diff --git a/src/expr/Reservable.cc b/src/expr/Reservable.cc index a89dcff4..ff924047 100644 --- a/src/expr/Reservable.cc +++ b/src/expr/Reservable.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2021, Universities Space Research Association (USRA). +// Copyright (c) 2006-2023, Universities Space Research Association (USRA). // All rights reserved. // // Redistribution and use in source and binary forms, with or without @@ -34,37 +34,26 @@ namespace PLEXIL { - //! Default constructor - Reservable::Reservable() - : m_waiters(), - m_holder(nullptr) + NodeConnector const *Reservable::getHolder() const { + return m_holder; } - //! Report which node owns this mutex. - //! @return Pointer to the node; may be null. - NodeConnector const *Reservable::getHolder() const + Reservable::WaitQueue const &Reservable::getWaiters() const { - return m_holder; + return m_waiters; } - //! Attempt to acquire the object. On failure, add the node to the - //! object's waiting list. - //! @param node The node wishing to acquire this object. - //! @return true if the object was successfully acquired; - //! false if not. bool Reservable::acquire(NodeConnector *node) { if (m_holder) { debugMsg("Reservable:acquire", ' ' << this << " by node " << node->getNodeId() << ' ' << node << " failed"); - addWaitingNode(node); + reserve(node); return false; } m_holder = node; - // If it's on the waiting list, remove it now. - removeWaitingNode(node); debugMsg("Reservable:acquire", ' ' << this << " by node " << m_holder->getNodeId() << ' ' << m_holder @@ -72,52 +61,50 @@ namespace PLEXIL return true; } - //! If held by this node, release the object and notify other - //! waiting nodes that the object is available. - //! @param node The node which (we hope) previously acquired the object. - void Reservable::release(NodeConnector *node) + bool Reservable::release(NodeConnector *node) { if (!m_holder) { debugMsg("Reservable:release", ' ' << this << " releasing object which was not held"); + return false; } - else if (m_holder != node) { - debugMsg("Reservable:release", + if (m_holder != node) { + debugMsg("Reservable:release", ' ' << this << " invalid attempt by node " << node->getNodeId() << ' ' << node << ", which was not the holder"); + return false; } - else { - debugMsg("Reservable:release", - ' ' << this << " by node " << node->getNodeId() << ' ' << node); - m_holder = nullptr; - for (NodeConnector *n : m_waiters) - n->notifyResourceAvailable(); - } + debugMsg("Reservable:release", + ' ' << this << " by node " << node->getNodeId() << ' ' << node); + m_holder = nullptr; + for (NodeConnector *n : m_waiters) + n->notifyResourceAvailable(); + return true; } - //! Add a node to the list of nodes waiting on the variable. - //! @param node Pointer to the node. - void Reservable::addWaitingNode(NodeConnector *node) + bool Reservable::reserve(NodeConnector *node) { if (std::find(m_waiters.begin(), m_waiters.end(), node) == m_waiters.end()) { - debugMsg("Reservable:addWaitingNode", + debugMsg("Reservable:reserve", ' ' << this << " node " << node->getNodeId() << ' ' << node); m_waiters.push_back(node); + return true; } + return false; } - //! Remove a node from the list of nodes waiting on the variable. - //! @param node Pointer to the node. - void Reservable::removeWaitingNode(NodeConnector *node) + bool Reservable::cancelReservation(NodeConnector *node) { WaitQueue::iterator it = std::find(m_waiters.begin(), m_waiters.end(), node); if (it != m_waiters.end()) { - debugMsg("Reservable:removeWaitingNode", - ' ' << this << " removing node " + debugMsg("Reservable:cancelReservation", + ' ' << this << " node " << node->getNodeId() << ' ' << node); m_waiters.erase(it); + return true; } + return false; } } // namespace PLEXIL diff --git a/src/expr/Reservable.hh b/src/expr/Reservable.hh index 9c0fb92b..95923148 100644 --- a/src/expr/Reservable.hh +++ b/src/expr/Reservable.hh @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2021, Universities Space Research Association (USRA). +// Copyright (c) 2006-2023, Universities Space Research Association (USRA). // All rights reserved. // // Redistribution and use in source and binary forms, with or without @@ -45,45 +45,46 @@ namespace PLEXIL { public: + using WaitQueue = std::vector; + + //! Default constructor. + Reservable() = default; + //! Virtual destructor. virtual ~Reservable() = default; - //! Report which node currently holds this object. - //! @return Pointer to the node; may be null. - NodeConnector const *getHolder() const; - //! Attempt to acquire the object. On failure, add the node to the //! object's waiting list. //! @param The node wishing to acquire this object. //! @return true if the object was successfully acquired; //! false if not. - //! @note On successful acquisition, if the node is on the waiting - //! list, it will be removed from the list. bool acquire(NodeConnector *node); //! If held by this node, release the object and notify other //! waiting nodes that the object is available. //! @param node The node which (we hope) previously acquired the object. - void release(NodeConnector *node); + //! @return true if the node was the holder, false if not. + bool release(NodeConnector *node); //! Add a node to the list of nodes waiting on the variable. //! @param node Pointer to the node. - void addWaitingNode(NodeConnector *node); + //! @return true if the node was added, false if it was already waiting. + bool reserve(NodeConnector *node); //! Remove a node from the list of nodes waiting on the variable. //! @param node Pointer to the node. - void removeWaitingNode(NodeConnector *node); - - protected: + //! @return true if the node was removed, false if not found. + bool cancelReservation(NodeConnector *node); - //! Default constructor, accessible only to derived classes. - Reservable(); + //! Report which node currently holds this object. + //! @return Pointer to the node; may be null. + NodeConnector const *getHolder() const; - // - // State shared with derived classes - // + //! Get the wait queue. + //! @return Const reference to the wait queue. + WaitQueue const &getWaiters() const; - using WaitQueue = std::vector; + private: //! Nodes waiting to reserve this object. WaitQueue m_waiters; From 5d276e897f43a0cb478795fbbec856abd1adb213 Mon Sep 17 00:00:00 2001 From: Chuck Fry Date: Wed, 22 Feb 2023 15:43:28 -0800 Subject: [PATCH 05/13] Overhaul conflict resolution for node variables and mutexes. Add PlanDebug messages to better explain what is happening. --- src/exec/AssignmentNode.cc | 80 ++++++++++------ src/exec/AssignmentNode.hh | 47 +++++---- src/exec/Node.hh | 42 ++++---- src/exec/NodeImpl.cc | 190 +++++++++++++++++++++++-------------- src/exec/NodeImpl.hh | 87 +++++++++++++---- src/exec/PlexilExec.cc | 102 +++++++++++--------- 6 files changed, 342 insertions(+), 206 deletions(-) diff --git a/src/exec/AssignmentNode.cc b/src/exec/AssignmentNode.cc index 4a0ed281..4e47f5f8 100644 --- a/src/exec/AssignmentNode.cc +++ b/src/exec/AssignmentNode.cc @@ -1,4 +1,4 @@ -/* Copyright (c) 2006-2021, Universities Space Research Association (USRA). +/* Copyright (c) 2006-2023, Universities Space Research Association (USRA). * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -111,16 +111,58 @@ namespace PLEXIL m_assignment->setExpression(TRUE_EXP(), false); } - Assignable *AssignmentNode::getAssignmentVariable() const + bool AssignmentNode::specializedRequiresResources() const { - return m_assignment->getDest(); + return true; + } + + bool AssignmentNode::specializedCanAcquireResources() const + { + Variable *var = m_assignment->getDest()->getBaseVariable(); + if (var->getHolder()) { + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") is blocked on variable " << var->getName()); + return false; + } + return true; + } + + void AssignmentNode::specializedAcquireResources() + { + Variable *var = m_assignment->getDest()->getBaseVariable(); + assertTrueMsg(var->acquire(this), + __FUNCTION__ << ": unexpected failure to acquire variable " << var->getName()); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") acquires variable " << var->getName()); + } + + void AssignmentNode::specializedReleaseResources() + { + Variable *var = m_assignment->getDest()->getBaseVariable(); + var->release(this); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") releases variable " << var->getName()); + } + + void AssignmentNode::specializedReserveResources() + { + Variable *var = m_assignment->getDest()->getBaseVariable(); + var->reserve(this); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") is waiting on variable " << var->getName()); } - // Wrapper around NodeImpl method - void AssignmentNode::releaseResourceReservations() + void AssignmentNode::specializedCancelResourceReservations() { - getAssignmentVariable()->getBaseVariable()->removeWaitingNode(this); - NodeImpl::releaseResourceReservations(); + Variable *baseVar = m_assignment->getDest()->getBaseVariable(); + baseVar->cancelReservation(this); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << " is no longer waiting on variable " << baseVar->getName()); } // @@ -309,7 +351,7 @@ namespace PLEXIL Expression *cond = getAbortCompleteCondition(); #ifdef PARANOID_ABOUT_CONDITION_ACTIVATION checkError(cond->isActive(), - "Abort complete for " << getNodeId() << ' ' << this << " is inactive."); + "Abort complete for " << m_nodeId << ' ' << this << " is inactive."); #endif bool temp; if (!cond->getValue(temp) || !temp) { @@ -372,16 +414,7 @@ namespace PLEXIL // Conditions active: AncestorEnd, AncestorExit, AncestorInvariant, Repeat // Legal successor states: FINISHED, WAITING - // This is a wrapper around the common method - - void AssignmentNode::transitionToIterationEnded() - { - if (m_state != WAITING_STATE) { - // Release the assignment variable for other users. - getAssignmentVariable()->getBaseVariable()->release(this); - } - NodeImpl::transitionToIterationEnded(); - } + // Common method suffices // // FINISHED @@ -392,16 +425,7 @@ namespace PLEXIL // Conditions active: // Legal successor states: INACTIVE - // This is a wrapper method. - - void AssignmentNode::transitionToFinished() - { - if (m_state == FAILING_STATE) { - // Release the assignment variable for other users. - getAssignmentVariable()->getBaseVariable()->release(this); - } - NodeImpl::transitionToFinished(); - } + // Common method suffices void AssignmentNode::specializedDeactivateExecutable(PlexilExec * /* exec */) { diff --git a/src/exec/AssignmentNode.hh b/src/exec/AssignmentNode.hh index 0428ddd5..0c2ff109 100644 --- a/src/exec/AssignmentNode.hh +++ b/src/exec/AssignmentNode.hh @@ -67,21 +67,6 @@ namespace PLEXIL return NodeType_Assignment; } - //! \brief Get the node's assignment variable. - //! \return Pointer to the variable, as an Assignable. - virtual Assignable *getAssignmentVariable() const override; - - //! \brief Does this node need to acquire resources before it can execute? - //! \return true if resources must be acquired, false otherwise. - virtual bool acquiresResources() const override - { - return true; // a variable is a resource which must be acquired - } - - //! \brief Remove the node from the pending queues of any resources - //! it was trying to acquire. - virtual void releaseResourceReservations() override; - //! \brief Get a pointer to the Assignment object. //! \return Pointer to the Assignment. //! \note Only used by the plan parser and its unit tests. @@ -101,6 +86,32 @@ namespace PLEXIL // Specific behaviors for AssignmentNode // + // + // NodeImpl resource API + // + + //! \brief Does this node require any resources specific to the node type? + //! \return true if resources need to be acquired, false if not. + virtual bool specializedRequiresResources() const override; + + //! \brief Can this node acquire all resources specific to the node type? + //! \return true if all can be acquired, false if not. + virtual bool specializedCanAcquireResources() const override; + + //! \brief Acquire all resources specific to the node type. + virtual void specializedAcquireResources() override; + + //! \brief Release all resources specific to the node type. + virtual void specializedReleaseResources() override; + + //! \brief Put this node on the wait list of resources specific to + //! its node type. + virtual void specializedReserveResources() override; + + //! \brief Remove this node from the wait lists of resources + //! specific to its node type. + virtual void specializedCancelResourceReservations() override; + //! \brief Perform the execution operations appropriate to the node type. virtual void specializedHandleExecution(PlexilExec *exec) override; @@ -127,12 +138,6 @@ namespace PLEXIL //! \brief Transition into FAILING state. virtual void transitionToFailing(PlexilExec *exec) override; - //! \brief Transition to ITERATION_ENDED state. - virtual void transitionToIterationEnded() override; - - //! \brief Transition to FINISHED state. - virtual void transitionToFinished() override; - private: // Copy, move constructor, assignment operators deliberately not implemented. diff --git a/src/exec/Node.hh b/src/exec/Node.hh index dc8ba1c1..e344b4a1 100644 --- a/src/exec/Node.hh +++ b/src/exec/Node.hh @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2022, Universities Space Research Association (USRA). +// Copyright (c) 2006-2023, Universities Space Research Association (USRA). // All rights reserved. // // Redistribution and use in source and binary forms, with or without @@ -181,26 +181,28 @@ namespace PLEXIL { // Resource conflict resolution logic // - //! \brief Does this node need to acquire resources before it can execute? + //! Does this node need to acquire resources before it can execute? //! \return true if resources must be acquired, false otherwise. - virtual bool acquiresResources() const = 0; - - //! \brief Get an Assignment node's assigned variable. - //! \return Pointer to an Assignable. If node is not an - //! AssignmentNode, will be null. - virtual Assignable *getAssignmentVariable() const = 0; - - //! \brief Attempt to reserve the resources needed by the node. - //! If the attempt fails, add the node to the resources' - //! wait lists. - //! \return true if reservation was successful, false if not. - //! \see Reservable - virtual bool tryResourceAcquisition() = 0; - - //! \brief Remove the node from the pending queues of any - //! resources it was trying to acquire. - //! \see Reservable - virtual void releaseResourceReservations() = 0; + virtual bool requiresResources() const = 0; + + //! Can the node acquire all necessary resources? + //! \return true if all are available, false otherwise. + virtual bool canAcquireResources() const = 0; + + //! Acquire the resources needed by the node. + //! \note Should not be called if canAcquireResources() has + //! returned false. + virtual void acquireResources() = 0; + + //! Release all resources previously acquired by the node. + virtual void releaseResources() = 0; + + //! Add the node to the wait lists of all required resources. + virtual void reserveResources() = 0; + + //! Remove the node from the wait lists of any resources it was + //! trying to acquire. + virtual void cancelResourceReservations() = 0; // // Printed representation diff --git a/src/exec/NodeImpl.cc b/src/exec/NodeImpl.cc index 33db255a..394036b9 100644 --- a/src/exec/NodeImpl.cc +++ b/src/exec/NodeImpl.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2022, Universities Space Research Association (USRA). +// Copyright (c) 2006-2023, Universities Space Research Association (USRA). // All rights reserved. // // Redistribution and use in source and binary forms, with or without @@ -420,7 +420,7 @@ namespace PLEXIL // Delete timepoints, if any delete m_timepoints.release(); - + // Delete mutex vectors delete m_usingMutexes.release(); delete m_localMutexes.release(); @@ -603,11 +603,7 @@ namespace PLEXIL return; case QUEUE_CHECK: // already a candidate, silently ignore - return; - case QUEUE_PENDING_CHECK: // already a candidate, silently ignore - return; - case QUEUE_TRANSITION_CHECK: // already a candidate, silently ignore return; @@ -624,27 +620,25 @@ namespace PLEXIL } } - - //! Does this node need to acquire resources before it can execute? - //! @return true if resources must be acquired, false otherwise. - //! @note AssignmentNode overrides this method. - bool NodeImpl::acquiresResources() const + // Public member function. + bool NodeImpl::requiresResources() const { - return (m_usingMutexes && !m_usingMutexes->empty()); + return (m_usingMutexes && !m_usingMutexes->empty()) + || this->specializedRequiresResources(); } - //! Reserve the resource(s) - //! If resource(s) busy, place node on resource(s)'s pending queues. + // Default method. + bool NodeImpl::specializedRequiresResources() const + { + return false; + } - // FIXME: Refactor to delegate assignment variable acquisition to - // AssignmentNode class. - bool NodeImpl::tryResourceAcquisition() + // Public member function. + bool NodeImpl::canAcquireResources() const { - bool success = true; if (m_usingMutexes) { for (Mutex *m : *m_usingMutexes) { - success = m->acquire(this); - if (!success) { + if (m->getHolder()) { // Check for recursive acquisition on failure Node const *holder = dynamic_cast(m->getHolder()); Node const *ancestor = this->getParent(); @@ -655,52 +649,100 @@ namespace PLEXIL << " already held by ancestor " << ancestor->getNodeId()); ancestor = ancestor->getParent(); } - break; // on failure + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") is blocked on mutex " << m->getName()) + return false; } } } + return this->specializedCanAcquireResources(); + } + + // Default method + bool NodeImpl::specializedCanAcquireResources() const + { + return true; + } - // Assignment variable next - if (this->getType() == NodeType_Assignment) { - Variable *var = this->getAssignmentVariable()->getBaseVariable(); - if (success) { - // Try to acquire the variable - success = var->acquire(this); + // Public member function. + void NodeImpl::acquireResources() + { + if (m_usingMutexes) { + for (Mutex *m : *m_usingMutexes) { + assertTrueMsg(m->acquire(this), + __FUNCTION__ << ": unexpected failure to acquire " << m->getName()); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") acquires mutex " << m->getName()); } - else { - // Acquiring other resources failed, so just queue up - var->addWaitingNode(this); + } + this->specializedAcquireResources(); + } + + // Default method + void NodeImpl::specializedAcquireResources() + { + } + + // Public member function. + void NodeImpl::releaseResources() + { + this->specializedReleaseResources(); + if (m_usingMutexes) { + for (Mutex *m : *m_usingMutexes) { + m->release(this); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") releases mutex " << m->getName()); } } - - debugMsg("Node:tryResourceAcquisition", - ' ' << m_nodeId << ' ' << this - << (success ? " succeeded" : " failed")); - - if (!success) { - // If we couldn't get all the resources, release the resources we got - if (m_usingMutexes) { - for (Mutex *m : *m_usingMutexes) { - if (this == dynamic_cast(m->getHolder())) - m->release(this); - m->addWaitingNode(this); // no harm if already there - } + } + + // Default method + void NodeImpl::specializedReleaseResources() + { + } + + // Public member function. + void NodeImpl::reserveResources() + { + if (m_usingMutexes) { + for (Mutex *m : *m_usingMutexes) { + m->reserve(this); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") is waiting on mutex " << m->getName()); } } - return success; + this->specializedReserveResources(); } - //! Remove the node from the pending queues of any resources - //! it was trying to acquire. - //! @note AssignmentNode wraps this method. - void NodeImpl::releaseResourceReservations() + // Default method + void NodeImpl::specializedReserveResources() { + } + + // Public member function. + void NodeImpl::cancelResourceReservations() + { + this->specializedCancelResourceReservations(); if (m_usingMutexes) { - for (Mutex *m : *m_usingMutexes) - m->removeWaitingNode(this); + for (Mutex *m : *m_usingMutexes) { + m->cancelReservation(this); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") is no longer waiting on mutex " << m->getName()); + } } } + // Default method. + void NodeImpl::specializedCancelResourceReservations() + { + } + + // Public member function. void NodeImpl::notifyResourceAvailable() { switch (m_queueStatus) { @@ -713,6 +755,9 @@ namespace PLEXIL m_queueStatus = QUEUE_PENDING_TRY; debugMsg("Node:notifyResourceAvailable", ' ' << m_nodeId << ' ' << this << " will retry resource acquisition"); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") enqueued for resource recheck") return; case QUEUE_PENDING_CHECK: @@ -720,6 +765,9 @@ namespace PLEXIL debugMsg("Node:notifyResourceAvailable", ' ' << m_nodeId << ' ' << this << " will retry resource acquisition after checking conditions"); + debugMsg("PlanDebug:conflicts", + " " << m_nodeId << " (" << static_cast(this) + << ") enqueued for condition and resource recheck") return; default: @@ -784,7 +832,7 @@ namespace PLEXIL return; debugMsg("PlanDebug:transition", - ' ' << getNodeId() << " (" << static_cast(this) + ' ' << m_nodeId << " (" << static_cast(this) << ") from " << nodeStateName(m_state) << " to " << nodeStateName(m_nextState)); debugMsg("Node:transition", " Transitioning " << m_nodeId << ' ' << this @@ -1246,10 +1294,9 @@ namespace PLEXIL // Common method void NodeImpl::transitionToIterationEnded() { - // Release any mutexes held by this node - if (m_usingMutexes && m_state != WAITING_STATE) { - for (Mutex *m : *m_usingMutexes) - m->release(this); + // Release any resources held by this node + if (m_state != WAITING_STATE) { + releaseResources(); } activateRepeatCondition(); } @@ -1361,15 +1408,20 @@ namespace PLEXIL // Conditions active: // Legal successor states: INACTIVE - // Default method - // Wrapped by AssignmentNode + // Common method void NodeImpl::transitionToFinished() { - // If transitioning from FAILING,, Release any mutexes held by this node - if (m_usingMutexes && m_state == WAITING_STATE) { - for (Mutex *m : *m_usingMutexes) - m->release(this); - } + switch (m_state) + { + case EXECUTING_STATE: + case FAILING_STATE: + case FINISHING_STATE: + releaseResources(); + break; + + default: + break; + } } // Common method @@ -1396,9 +1448,9 @@ namespace PLEXIL } // - // FINISHING (legal for ListNode and LibraryCallNode only) + // FINISHING (legal for Command, ListNode, and LibraryCallNode only) // - // Description and methods here apply to all other node types. + // Description and methods here apply to Empty, Assignment, and Update nodes. // // Legal predecessor states: n/a // Conditions active: n/a @@ -1425,15 +1477,15 @@ namespace PLEXIL } // - // FAILING (legal for Command, Update, ListNode, and LibraryCallNode only) + // FAILING (legal for Assignment, Command, Update, ListNode, and LibraryCallNode) // - // Description and methods here apply to Empty and Assignment nodes. + // Description and methods here apply only to Empty nodes. // // Legal predecessor states: n/a // Conditions active: n/a // Legal successor states: n/a - // Default method + // Empty node method void NodeImpl::transitionToFailing(PlexilExec * /* exec */) { errorMsg("No transition to FAILING state defined for this node"); @@ -1537,7 +1589,7 @@ namespace PLEXIL { condDebugMsg(o != NO_OUTCOME && o != m_outcome, "PlanDebug:outcome", - " " << getNodeId() << " (" << static_cast(this) << ") outcome " << outcomeName(o)); + " " << m_nodeId << " (" << static_cast(this) << ") outcome " << outcomeName(o)); m_outcome = o; } @@ -1550,7 +1602,7 @@ namespace PLEXIL { condDebugMsg(f != NO_FAILURE && f != m_failureType, "PlanDebug:failure", - " " << getNodeId() << " (" << static_cast(this) << ") failure type " + " " << m_nodeId << " (" << static_cast(this) << ") failure type " << failureTypeName(f)); m_failureType = f; } diff --git a/src/exec/NodeImpl.hh b/src/exec/NodeImpl.hh index f1d11472..2b4fcc4f 100644 --- a/src/exec/NodeImpl.hh +++ b/src/exec/NodeImpl.hh @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2022, Universities Space Research Association (USRA). +// Copyright (c) 2006-2023, Universities Space Research Association (USRA). // All rights reserved. // // Redistribution and use in source and binary forms, with or without @@ -305,27 +305,25 @@ namespace PLEXIL // //! Does this node need to acquire resources before it can execute? - //! @return true if resources must be acquired, false otherwise. - virtual bool acquiresResources() const override; + //! \return true if resources must be acquired, false otherwise. + virtual bool requiresResources() const override; - //! \brief Get an Assignment node's assigned variable. - //! \return Pointer to an Assignable. If node is not an - //! AssignmentNode, will be null. - //! \note This default method always returns null. - virtual Assignable *getAssignmentVariable() const override - { - return nullptr; - } + //! Can the node acquire all necessary resources? + //! \return true if all are available, false otherwise. + virtual bool canAcquireResources() const override; + + //! Acquire the resources needed by the node. + virtual void acquireResources() override; + + //! Release all resources previously acquired by the node. + virtual void releaseResources() override; - //! \brief Attempt to reserve the resources needed by the node. - //! If the attempt fails, add the node to the resources' - //! wait lists. - //! \return true if reservation was successful, false if not. - virtual bool tryResourceAcquisition() override; + //! Add the node to the wait lists of all required resources. + virtual void reserveResources() override; - //! \brief Remove the node from the pending queues of any - //! resources it was trying to acquire. - virtual void releaseResourceReservations() override; + //! Remove the node from the wait lists of any resources it was + //! trying to acquire. + virtual void cancelResourceReservations() override; // // Printed representation @@ -686,6 +684,38 @@ namespace PLEXIL //! \brief Perform any specialized activation actions required by the node type. virtual void specializedActivate(); + // + // NodeImpl resource API + // + + //! \brief Does this node require any resources specific to the node type? + //! \return true if resources need to be acquired, false if not. + //! \note The default method returns false. + virtual bool specializedRequiresResources() const; + + //! \brief Can the node acquire specialized required resources? + //! \return true if all are available, false if not. + //! \note The default method returns true. + virtual bool specializedCanAcquireResources() const; + + //! \brief Acquire all resources specific to the node type. + //! \note The default method does nothing. + virtual void specializedAcquireResources(); + + //! \brief Release all resources specific to the node type. + //! \note The default method does nothing. + virtual void specializedReleaseResources(); + + //! \brief Put this node on the wait lists of resources specific to + //! its node type. + //! \note The default method does nothing. + virtual void specializedReserveResources(); + + //! \brief Remove this node from the wait lists of resources + //! specific to its node type. + //! \note The default method does nothing. + virtual void specializedCancelResourceReservations(); + //! \brief Perform execution as required by the node type. //! \param exec Pointer to the PlexilExec. virtual void specializedHandleExecution(PlexilExec *exec); @@ -785,13 +815,13 @@ namespace PLEXIL virtual void transitionToFinishing(); //! \brief Transition into the FINISHED state. - virtual void transitionToFinished(); + void transitionToFinished(); //! \brief Transition into the FAILING state. virtual void transitionToFailing(PlexilExec *exec); //! \brief Transition into the ITERATION_ENDED state. - virtual void transitionToIterationEnded(); + void transitionToIterationEnded(); // // Destructor helper member functions @@ -873,6 +903,21 @@ namespace PLEXIL //! \see NodeImpl::specializedCreateConditionWrappers void createConditionWrappers(); + // + // Internal resource API + // + + //! \brief Can the node acquire all mutexes it uses? + //! \return true if all are available, false if not. + bool canAcquireMutexes() const; + + //! \brief Acquire all the mutexes used by the node. + //! \note Should only be attempted if canAcquireMutexes() returns true. + void acquireMutexes(); + + //! \brief Reserve all the mutexes used by the node. + void reserveMutexes(); + //! \brief Set the node's outcome. //! \param o The new NodeOutcome value. void setNodeOutcome(NodeOutcome o); diff --git a/src/exec/PlexilExec.cc b/src/exec/PlexilExec.cc index c99ac39f..995e45e8 100644 --- a/src/exec/PlexilExec.cc +++ b/src/exec/PlexilExec.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2006-2022, Universities Space Research Association (USRA). +// Copyright (c) 2006-2023, Universities Space Research Association (USRA). // All rights reserved. // // Redistribution and use in source and binary forms, with or without @@ -319,7 +319,7 @@ namespace PLEXIL // Possibility of conflict - set it aside to evaluate as a batch debugMsg("PlanDebug:check", " " << candidate->getNodeId() << " (" << candidate - << ") needs resource check"); + << ") needs conflict check"); addPendingNode(candidate); } } @@ -434,7 +434,7 @@ namespace PLEXIL //! \brief Consider a node for potential state transition. //! \param node Pointer to the node. - //! \note Node's queue status must be QUEUE_NONE. + //! \note Called only by NodeImpl::notify(). virtual void addCandidateNode(Node *node) override { debugMsg("PlanDebug:candidates", @@ -509,11 +509,9 @@ namespace PLEXIL //! \brief Does executing this node require resources which may be in conflict? //! \return true if resources are required, false if not. - bool resourceCheckRequired(Node *node) + bool resourceCheckRequired(Node const *node) { - if (node->getNextState() != EXECUTING_STATE) - return false; - return node->acquiresResources(); + return (node->getNextState() == EXECUTING_STATE) && node->requiresResources(); } //! \brief Check whether a node on the pending queue should attempt to acquire resources. @@ -525,19 +523,19 @@ namespace PLEXIL switch (node->getQueueStatus()) { case QUEUE_PENDING_CHECK: - // Resource(s) not released, so not eligible, + // Resource) not released, so not eligible, // and node may not be eligible to execute any more if (!node->getDestState()) { // No longer transitioning at all - remove from pending queue - debugMsg("PlanDebug:check", - " " << node->getNodeId() << "(" << node << ") not transitioning"); + debugMsg("PlanDebug:conflicts", + " " << node->getNodeId() << " (" << node << ") not transitioning"); removePendingNode(node); } else if (node->getNextState() != EXECUTING_STATE) { // Now transitioning to some other state // Remove from pending queue and add to state change queue - debugMsg("PlanDebug:check", - " " << node->getNodeId() << "(" << node << ") no longer transitioning to EXECUTING"); + debugMsg("PlanDebug:conflicts", + " " << node->getNodeId() << " (" << node << ") no longer transitioning to EXECUTING"); removePendingNode(node); addStateChangeNode(node); } @@ -551,16 +549,16 @@ namespace PLEXIL // but node may not be eligible to execute any more if (!node->getDestState()) { // No longer transitioning at all - remove from pending queue - debugMsg("PlanDebug:check", - " " << node->getNodeId() << "(" << node << ") not transitioning") + debugMsg("PlanDebug:conflicts", + " " << node->getNodeId() << " (" << node << ") not transitioning") removePendingNode(node); return false; } else if (node->getNextState() != EXECUTING_STATE) { // Transitioning to some other state // Remove from pending queue and add to state change queue - debugMsg("PlanDebug:check", - " " << node->getNodeId() << "(" << node << ") no longer transitioning to EXECUTING") + debugMsg("PlanDebug:conflicts", + " " << node->getNodeId() << " (" << node << ") no longer transitioning to EXECUTING") removePendingNode(node); addStateChangeNode(node); return false; @@ -571,8 +569,8 @@ namespace PLEXIL case QUEUE_PENDING_TRY: // Resource(s) were released, give it a look - debugMsg("PlanDebug:check", - " " << node->getNodeId() << "(" << node << ") may be unblocked") + debugMsg("PlanDebug:conflicts", + " " << node->getNodeId() << " (" << node << ") eligible for resource check") return true; case QUEUE_PENDING: @@ -593,53 +591,62 @@ namespace PLEXIL void resolveResourceConflicts() { Node *priorityHead = m_pendingQueue.front(); - debugMsg("PlanDebug:check", ' ' << m_pendingQueue.size() << " nodes pending resource check"); + debugMsg("PlanDebug:conflicts", + " " << m_pendingQueue.size() << " nodes pending on resource check"); std::vector priorityNodes; while (priorityHead) { // Gather nodes at same priority int32_t thisPriority = priorityHead->getPriority(); - debugMsg("PlexilExec:step", " processing resource reservations at priority " << thisPriority); Node *temp = priorityHead; do { - if (resourceCheckEligible(temp)) - // Resource(s) were released, give it a look + if (resourceCheckEligible(temp)) { priorityNodes.push_back(temp); + } temp = temp->next(); } while (temp && temp->getPriority() == thisPriority); - // temp is at end of queue, - // or pointing to node with higher (numerical) priority + // temp is null (at end of queue), + // or pointing to node with worse (higher numerical) priority priorityHead = temp; // for next iteration debugMsg("PlexilExec:step", ' ' << priorityNodes.size() << " nodes eligible to acquire resources"); - debugMsg("PlanDebug:check", ' ' << priorityNodes.size() << " nodes @ priority " << thisPriority); - - // Let each node try to acquire its resources. - // Transition the ones that succeed. - for (Node *n : priorityNodes) { - if (n->tryResourceAcquisition()) { - // Node can transition now - debugMsg("PlexilExec:resolveResourceConflicts", - ' ' << n->getNodeId() << " succeeded"); - debugMsg("PlanDebug:check", - ' ' << n->getNodeId() << "(" << n << ") can transition"); - removePendingNode(n); - addStateChangeNode(n); - } - else { - // Can't get resources, so mark that node has been checked - debugMsg("PlanDebug:check", - ' ' << n->getNodeId() << "(" << n << ") is blocked"); - n->setQueueStatus(QUEUE_PENDING); - } + + if (priorityNodes.empty()) { + debugMsg("PlanDebug:conflicts", " no pending nodes to check at priority " << thisPriority); } + else { + debugMsg("PlanDebug:conflicts", + " checking " << priorityNodes.size() << " pending nodes at priority " << thisPriority); + + // Let each node try to acquire its resources. + // Transition the ones that succeed. + for (Node *n : priorityNodes) { + if (n->canAcquireResources()) { + // Node can transition now + debugMsg("PlexilExec:resolveResourceConflicts", + ' ' << n->getNodeId() << " succeeded"); + debugMsg("PlanDebug:check", + " " << n->getNodeId() << " (" << n << ") may transition now"); + removePendingNode(n); + n->acquireResources(); + addStateChangeNode(n); + } + else { + // Can't get resources, so mark that node has been checked + debugMsg("PlanDebug:check", + " " << n->getNodeId() << " (" << n + << ") is blocked on a resource conflict"); + n->setQueueStatus(QUEUE_PENDING); + } + } - // Done with this batch - priorityNodes.clear(); + // Done with this batch + priorityNodes.clear(); + } } } @@ -794,6 +801,7 @@ namespace PLEXIL " adding " << node->getNodeId() << ' ' << node << " to pending queue"); node->setQueueStatus(QUEUE_PENDING_TRY); + node->reserveResources(); m_pendingQueue.insert(node); } @@ -804,8 +812,8 @@ namespace PLEXIL void removePendingNode(Node *node) { m_pendingQueue.remove(node); + node->cancelResourceReservations(); node->setQueueStatus(QUEUE_NONE); - node->releaseResourceReservations(); } //! \brief Get the first node in the finished root node queue, if any. From 64cc3aa9e39a02dc3e586e6fa378df2f2764a60c Mon Sep 17 00:00:00 2001 From: Chuck Fry Date: Mon, 21 Jul 2025 14:46:12 -0700 Subject: [PATCH 06/13] FIXUP: fix a couple of compiler warnings --- src/interfaces/LuvListener/LuvFormat.cc | 1 - src/xml-parser/ArrayLiteralFactory.cc | 2 -- 2 files changed, 3 deletions(-) diff --git a/src/interfaces/LuvListener/LuvFormat.cc b/src/interfaces/LuvListener/LuvFormat.cc index fe60b6ed..760dca20 100644 --- a/src/interfaces/LuvListener/LuvFormat.cc +++ b/src/interfaces/LuvListener/LuvFormat.cc @@ -50,7 +50,6 @@ namespace PLEXIL { // XML tags static constexpr const char PLAN_INFO_TAG[] = "PlanInfo"; - static constexpr const char PLEXIL_PLAN_TAG[] = "PlexilPlan"; static constexpr const char PLEXIL_LIBRARY_TAG[] = "PlexilLibrary"; static constexpr const char VIEWER_BLOCKS_TAG[] = "ViewerBlocks"; diff --git a/src/xml-parser/ArrayLiteralFactory.cc b/src/xml-parser/ArrayLiteralFactory.cc index aee190fe..9fd90ddd 100644 --- a/src/xml-parser/ArrayLiteralFactory.cc +++ b/src/xml-parser/ArrayLiteralFactory.cc @@ -128,11 +128,9 @@ namespace PLEXIL values.reserve(std::distance(expr.begin(), expr.end())); pugi::xml_node thisElement = expr.first_child(); - size_t i = 0; while (thisElement) { values.push_back(std::string(thisElement.child_value())); thisElement = thisElement.next_sibling(); - ++i; } return new Constant >(ArrayImpl(values)); } From 8bc5c79dd3021df492f0c3eb59f18760440ff669 Mon Sep 17 00:00:00 2001 From: Mike Dalal Date: Mon, 16 Mar 2026 18:29:31 -0700 Subject: [PATCH 07/13] Revamped documentation of debug flags, removed obsolete scripts --- doc/AllDebugFlags.cfg | 374 ++++++ doc/CompleteDebugFlags.cfg | 283 ----- doc/DebugFlagComments.txt | 270 ----- doc/DebugFlagDefinitions.txt | 2083 --------------------------------- doc/DebugFlags.txt | 21 + doc/README | 73 +- doc/docHtmlPull | 162 --- doc/parse | 32 - doc/process | 121 -- scripts/README | 6 +- scripts/debugFlagCollector.py | 279 ----- 11 files changed, 401 insertions(+), 3303 deletions(-) create mode 100644 doc/AllDebugFlags.cfg delete mode 100644 doc/CompleteDebugFlags.cfg delete mode 100644 doc/DebugFlagComments.txt delete mode 100644 doc/DebugFlagDefinitions.txt create mode 100644 doc/DebugFlags.txt delete mode 100755 doc/docHtmlPull delete mode 100644 doc/parse delete mode 100644 doc/process delete mode 100755 scripts/debugFlagCollector.py diff --git a/doc/AllDebugFlags.cfg b/doc/AllDebugFlags.cfg new file mode 100644 index 00000000..434c706f --- /dev/null +++ b/doc/AllDebugFlags.cfg @@ -0,0 +1,374 @@ +# This file contains (ostensibly) all supported PLEXIL debug flags, as +# returned by the following command run from $PLEXIL_HOME: +# +# git grep 'debugMsg\|condDebugMsg\|debugStmt\|condDebugStmt' -- '*.cc' | \ +# sed 's/.*debug[A-Za-z]*("\([^"]*\)".*/\1/' | sort -u > flags.txt +# +# followed by hand-editing lines in flags.txt containing 'condDebug', +# which are generally multi-line instances, and making a few other +# cleanups. The PLEXIL team will strive to keep this file up to date! + +# Every flag has been commented out with the '#' character. You can +# use this file by referencing it and/or copying it to your working +# directory and uncommenting the desired debug flags. By default, +# PLEXIL looks for a file named Debug.cfg in the current working +# directory. + +#AdapterConfiguration:clearThresholds +#AdapterConfiguration:constructInterfaces +#AdapterConfiguration:getCommandHandler +#AdapterConfiguration:getLookupHandler +#AdapterConfiguration:initialize +#AdapterConfiguration:lookupNow +#AdapterConfiguration:registerCommandHandler +#AdapterConfiguration:registerLookupHandler +#AdapterConfiguration:setDefaultCommandHandler +#AdapterConfiguration:setThresholds +#AdapterConfiguration:start +#AdapterConfiguration:stop +#AdapterConfiguration:updatePlanner +#AdapterConfiguration:verboseConstructInterfaces +#AdapterFactory:createInstance +#AdapterFactory:registerFactory +#AllFinished +#AllWaitingOrFinished +#AssignmentNode:~AssignmentNode +#CachedValue:mismatch +#CachedValue:update +#checkExpression +#checkNode +#checkPlan +#CheckpointAdapter +#CheckpointAdapter:fetch +#CheckpointSystem +#CommandHandler:defaultAbortCommand +#CommandHandler:defaultExecuteCommand +#CommandNode:~CommandNode +#CommandNode:cleanUpNodeBody +#CommandResponseManager:getResponses +#constructLibraryCall +#constructPlan +#constructPlexilPairMsg +#constructPlexilValueMsg +#createExpression +#DispatchTimebase +#DispatchTimebase::start +#DispatchTimebase:setTimer +#DispatchTimebase:start +#DispatchTimebase:stop +#DynamicLoader:findSymbol +#DynamicLoader:initModule +#DynamicLoader:loadLibrary +#DynamicLoader:loadModule +#DynamicLoader:tryLoadFile +#ExecApplication:addLibrary +#ExecApplication:addPlan +#ExecApplication:initialize +#ExecApplication:loadLibrary +#ExecApplication:markProcessed +#ExecApplication:notify +#ExecApplication:notifyAndWait +#ExecApplication:run +#ExecApplication:runExec +#ExecApplication:startInterfaces +#ExecApplication:step +#ExecApplication:stop +#ExecApplication:wait +#ExecApplication:waitForPlanFinished +#ExecApplication:waitForShutdown +#ExecApplication:worker +#ExecListenerFactory:createInstance +#ExecListenerFactory:registerFactory +#ExecListenerFilterFactory:createInstance +#ExecListenerFilterFactory:registerFactory +#ExecListenerHub:addListener +#ExecListenerHub:constructListener +#ExecListenerHub:initialize +#ExecListenerHub:start +#finalizeAliases +#finalizeLibraryCall +#finalizeNode +#findArrayDeclaration +#findContainingNodeElement +#findVariableDeclaration +#getPlexilMsgValue +#getTime +#Goals:determineGoalLevel +#initializeMainSignalHandling +#initializeWorkerSignalHandling +#InterfaceFactory:createInstance +#InterfaceManager:handleAddLibrary +#InterfaceManager:handleAddPlan +#InterfaceManager:handleCommandAbortAck +#InterfaceManager:handleCommandAck +#InterfaceManager:handleCommandReturn +#InterfaceManager:handleUpdateAck +#InterfaceManager:handleValueChange +#InterfaceManager:markQueue +#InterfaceManager:notify +#InterfaceManager:processQueue +#IpcAdapter:executeCommand +#IpcAdapter:getParameter +#IpcAdapter:handleCommandSequence +#IpcAdapter:handleLookupNow +#IpcAdapter:handleLookupNowMessages +#IpcAdapter:handleReturnValuesSequence +#IpcAdapter:handleTelemetryValuesSequence +#IpcAdapter:initialize +#IpcAdapter:IpcAdapter +#IpcAdapter:lookupNow +#IpcAdapter:parseExternalLookups +#IpcAdapter:receiveCommand +#IpcAdapter:receiveMessageCommand +#IpcAdapter:receiveMessages +#IpcAdapter:sendPlannerUpdate +#IpcAdapter:start +#IpcAdapter:stop +#IpcCommRelay:initialize +#IpcCommRelay:lookupNow +#IpcCommRelay:sendResponse +#IpcFacade +#IpcFacade:cacheMessageLeader +#IpcFacade:cacheMessageTrailer +#IpcFacade:definePlexilIPCMessageTypes +#IpcFacade:deliverMessage +#IpcFacade:generateUID +#IpcFacade:handleMessage +#IpcFacade:initialize +#IpcFacade:myIpcDispatch +#IpcFacade:publishCommand +#IpcFacade:publishTelemetry +#IpcFacade:publishUpdate +#IpcFacade:sendParameters +#IpcFacade:start +#IpcFacade:stop +#IpcFacade:subscribe +#IpcFacade:subscribeAll +#IpcFacade:subscribeDataCentral +#IpcFacade:unsubscribe +#IpcFacade:unsubscribeAll +#IpcRobotAdapter:initialize +#IpcRobotAdapter:lookupNow +#IpcRobotAdapter:processCommand +#IpcRobotAdapter:stop +#isMutexInScope +#ItimerTimebase +#ItimerTimebase:setTimer +#ItimerTimebase:start +#ItimerTimebase:stop +#JNIHelper +#JNIHelper:getClassClass +#JNIHelper:getClassName +#JNIHelper:isArrayClass +#JNIUtils:getArgcArgv +#LauncherAdapter:exitPlan +#LauncherAdapter:initialize +#LauncherAdapter:startPlan +#LauncherListener:notify +#LibraryCallNode:cleanUpNodeBody +#LineInStream:getLine +#LineInStream:open +#linkAndInitializeInterface +#linkInVar +#ListNode:~ListNode +#ListNode:cleanUpChildConditions +#ListNode:cleanUpConditions +#ListNode:cleanUpNodeBody +#loadXmlFile +#Lookup:handleActivate +#Lookup:handleChange +#Lookup:register +#Lookup:unregister +#LookupHandler:defaultClearThresholds +#LookupHandler:defaultLookupNow +#LookupHandler:defaultSetThresholds +#LookupImpl:handleChangeInternal +#LookupOnChange:getThresholds +#LookupOnChange:handleActivate +#LookupOnChange:handleChange +#LookupOnChange:handleDeactivate +#LookupOnChange:update +#LookupOnChange:valueChanged +#LuvListener +#LuvListener:implementNotifyAddPlan +#LuvListener:implementNotifyNodeTransition +#LuvListener:sendMessage +#LuvListener:start +#LuvListener:waitForAck +#MachSemaphore +#MachSemaphore:post +#MachSemaphore:wait +#main1 +#main1a +#main2 +#main2a +#makeTimebase +#MessageQueueMap:addMessage +#MessageQueueMap:addRecipient +#MessageQueueMap:ensureQueue +#MessageQueueMap:setAllowDuplicateMessages +#MessageQueueMap:updateQueue +#Mutex:ensureGlobalMutex +#Node:abort +#Node:cleanUpConditions +#Node:cleanUpConds +#Node:cleanUpVars +#Node:clock +#Node:execute +#Node:failure +#Node:findLocalVariable +#Node:findMutex +#Node:findVariable +#Node:getDestState +#Node:notifyChanged +#Node:notifyResourceAvailable +#Node:outcome +#Node:reset +#Node:transition +#NodeFactory +#NodeImpl:~NodeImpl +#NodeImpl:NodeImpl +#Notifier:addListener +#Notifier:removeListener +#parseNode +#parsePlan +#parseValue +#PlanDebug:candidates +#PlanDebug:check +#PlanDebug:conflicts +#PlanDebug:failure +#PlanDebug:macroStep +#PlanDebug:microStep +#PlanDebug:outcome +#PlanDebug:transition +#PlexilExec:addPlan +#PlexilExec:allPlansFinished +#PlexilExec:deleteFinishedPlans +#PlexilExec:performAssignments +#PlexilExec:printPlan +#PlexilExec:resolveResourceConflicts +#PlexilExec:step +#PlexilSimResponseFactory:parseCommandReturn +#PlexilSimResponseFactory:parseTelemetryReturn +#PlexilSimulator +#popSymbolTable +#PosixTimebase +#PosixTimebase:setTimer +#PosixTimebase:start +#PosixTimebase:stop +#pushSymbolTable +#receiveMessages +#Reservable:acquire +#Reservable:cancelReservation +#Reservable:release +#Reservable:reserve +#ResourceArbiter:arbitrateCommands +#ResourceArbiter:determineAllChildResources +#ResourceArbiter:determineChildResources +#ResourceArbiter:optimalResourceArbitration +#ResourceArbiter:partitionCommands +#ResourceArbiter:printAcceptedCommands +#ResourceArbiter:printAllocatedResources +#ResourceArbiter:printSortedCommands +#ResourceArbiter:readResourceHierarchy +#ResourceArbiter:readResourceHierarchyFile +#ResourceArbiter:releaseResourcesForCommand +#RoboSimResponseFactory:parseCommandReturn +#RoboSimResponseFactory:parseTelemetryReturn +#RoboSimSimulator +#Robot:moveRobot +#Robot:processCommand +#Robot:queryRobotState +#SampleAdapter +#SampleAdapter:getAt +#SampleAdapter:getColor +#SampleAdapter:getDefault +#SampleAdapter:getSize +#SampleAdapter:getSpeed +#SampleAdapter:getStateName +#SampleAdapter:propagateValueChange +#SimpleSaveManager +#SimpleSaveManager:lock +#Simulator:~Simulator +#Simulator:constructNextResponse +#Simulator:handleWakeUp +#Simulator:scheduleMessage +#Simulator:scheduleNextResponse +#Simulator:scheduleResponseForCommand +#Simulator:simulatorTopLevel +#Simulator:start +#Simulator:stop +#SimulatorScriptReader +#SimulatorScriptReader:ensureResponseMessageManager +#SimulatorScriptReader:parseCommandDeclaration +#SimulatorScriptReader:parseLookupDeclaration +#SimulatorScriptReader:readScript +#StateCacheEntry:registerLookup +#StateCacheEntry:unregisterLookup +#StateCacheEntry:update +#StateCacheEntry:updateThresholds +#StringAdapter +#Test:testOutput +#Test:verboseTestOutput +#ThreadSemaphore:~ThreadSemaphore +#ThreadSemaphore:ThreadSemaphore +#ThreadSemaphore:wait +#ThresholdCache:setThresholds +#ThresholdCache:toleranceChanged +#Time +#TimeAdapter:start +#TimeAdapter:stop +#TimeAdapter:timeout +#TimebaseFactory +#TimebaseFactory::makeTimebase +#TimebaseFactory:getBest +#TimeLookupHandler:lookupNow +#TimeLookupHandler:setThresholds +#TimingService:defaultInitializeSignalHandling +#TimingService:getTimer +#TimingService:initializeSignalHandling +#TimingService:restoreSignalHandling +#TimingService:setTimer +#TimingService:stopTimer +#TimingService:wait +#UdpAdapter +#UdpAdapter:abortCommand +#UdpAdapter:buildUdpBuffer +#UdpAdapter:executeDefaultCommand +#UdpAdapter:executeGetParameterCommand +#UdpAdapter:executeReceiveCommandCommand +#UdpAdapter:executeReceiveUdpCommand +#UdpAdapter:executeSendMessageCommand +#UdpAdapter:executeSendUdpMessageCommand +#UdpAdapter:formatMessageName +#UdpAdapter:handleUdpMessage +#UdpAdapter:initialize +#UdpAdapter:sendUdpMessage +#UdpAdapter:start() +#UdpAdapter:startUdpMessageReceiver +#UdpAdapter:stop +#UdpEventLoop:addListener +#UdpEventLoop:closeListener +#UdpEventLoop:eventLoop +#UdpEventLoop:handleFDReady +#UdpEventLoop:openAndBindUdpSocket +#UdpEventLoop:openListener +#UdpEventLoop:removeListener +#UdpEventLoop:start +#UdpEventLoop:stop +#UnitTest:actionExecutingTransition +#UnitTest:bindingExecutingTransition +#UnitTest:finishedTransition +#UnitTest:inactiveDestTest +#UnitTest:inactiveTransTest +#UnitTest:iterationEndedTransition +#UnitTest:listExecutingTransition +#UnitTest:listFailingTrans +#UnitTest:listFinishingDest +#UnitTest:listFinishingTrans +#UnitTest:waitingDestTest +#UnitTest:waitingTransition +#UniversalExec +#Update:fixValues +#UpdateNode:~UpdateNode +#UpdateNode:cleanUpNodeBody diff --git a/doc/CompleteDebugFlags.cfg b/doc/CompleteDebugFlags.cfg deleted file mode 100644 index 35848d03..00000000 --- a/doc/CompleteDebugFlags.cfg +++ /dev/null @@ -1,283 +0,0 @@ -# This file contains (ostensibly) all debug output tags used as of 05/06/15. -# Every tag has been commented out with the '#' character. -# You can use this file by referencing it and/or copying it to your working -# directory and uncommenting the desired debug tags. - -#:AdapterConfiguration:constructInterfaces -#:AdapterConfiguration:defaultRegisterAdapter -#:AdapterConfiguration:getCommandInterface -#:AdapterConfiguration:getLookupInterface -#:AdapterConfiguration:getPlannerUpdateInterface -#:AdapterConfiguration:initialize -#:AdapterConfiguration:registerCommandInterface -#:AdapterConfiguration:registerLookupInterface -#:AdapterConfiguration:registerPlannerUpdateInterface -#:AdapterConfiguration:reset -#:AdapterConfiguration:setDefaultCommandInterface -#:AdapterConfiguration:setDefaultInterface -#:AdapterConfiguration:setDefaultLookupInterface -#:AdapterConfiguration:shutdown -#:AdapterConfiguration:start -#:AdapterConfiguration:stop -#:AdapterConfiguration:verboseConstructInterfaces -#:AdapterFactory::createInstance -#:AdapterFactory:createInstance -#:AdapterFactory:registerFactory -#:AllFinished -#:AllWaitingOrFinished -#:AssignmentNode:cleanUpNodeBody -#:CommandNode:cleanUpNodeBody -#:CommandNode:~CommandNode -#:DynamicLoader:loadModule -#:DynamicLoader:verboseLoadModule -#:ExecApplication:addLibrary -#:ExecApplication:addPlan -#:ExecApplication:initializeMainSignalHandling -#:ExecApplication:initialize -#:ExecApplication:initializeWorkerSignalHandling -#:ExecApplication:loadLibrary -#:ExecApplication:notifyAndWait -#:ExecApplication:notify -#:ExecApplication:reset -#:ExecApplication:restoreMainSignalHandling -#:ExecApplication:restoreWorkerSignalHandling -#:ExecApplication:runExec -#:ExecApplication:runInternal -#:ExecApplication:run -#:ExecApplication:setApplicationState -#:ExecApplication:shutdown -#:ExecApplication:startInterfaces -#:ExecApplication:step -#:ExecApplication:stepUntilQuiescent -#:ExecApplication:stop -#:ExecApplication:terminate -#:ExecApplication:wait -#:ExecListener:implementNotifyAddLibrary -#:ExecListener:implementNotifyAddPlan -#:ExecListener:implementNotifyAssignment -#:ExecListener:implementNotifyNodeTransition -#:ExecListener:implementNotifyNodeTransitions -#:ExecListener:notifyOfTransitions -#:ExecListenerFactory:createInstance -#:ExecListenerFactory:registerFactory -#:ExecListenerFilterFactory:createInstance -#:ExecListenerFilterFactory:registerFactory -#:ExecListenerHub:initialize -#:ExpressionFactory:registerFactory -#:ExternalInterface:dummy -#:ExternalInterface:udp -#:GanttViewer:printErrors -#:GanttViewer:printProgress -#:InterfaceAdapter:setThresholds -#:InterfaceManager:handleAddLibrary -#:InterfaceManager:handleAddPlan -#:InterfaceManager:handleCommandAbortAck -#:InterfaceManager:handleCommandAck -#:InterfaceManager:handleCommandReturn -#:InterfaceManager:handleUpdateAck -#:InterfaceManager:handleValueChange -#:InterfaceManager:lookupNow -#:InterfaceManager:markQueue -#:InterfaceManager:notify -#:InterfaceManager:processQueue -#:InterfaceManager:queryTime -#:InterfaceManager:reset -#:InterfaceManager:setThresholds -#:InterfaceManager:shutdown -#:InterfaceManager:subscribe -#:InterfaceManager:unsubscribe -#:InterfaceManager:updatePlanner -#:IpcAdapter::enqueueMessageSequence -#:IpcAdapter:IpcAdapter -#:IpcAdapter:executeCommand -#:IpcAdapter:handleCommandSequence -#:IpcAdapter:handleIpcMessage -#:IpcAdapter:handleLookupNow -#:IpcAdapter:handleReturnValuesSequence -#:IpcAdapter:handleTelemetryValuesSequence -#:IpcAdapter:initialize -#:IpcAdapter:invokeAbort -#:IpcAdapter:lookupNow -#:IpcAdapter:parseExternalLookups -#:IpcAdapter:shutdown -#:IpcAdapter:start -#:IpcAdapter:stop -#:IpcAdapter:subscribe -#:IpcAdapter:unsubscribe -#:IpcCommRelay:lookupNow -#:IpcCommRelay:sendResponse -#:IpcFacade::cacheMessageTrailer -#:IpcFacade::shutdown -#:IpcFacade:cacheMessageLeader -#:IpcFacade:definePlexilIPCMessageTypes -#:IpcFacade:generateUID -#:IpcFacade:initialize -#:IpcFacade:messageHandler -#:IpcFacade:myIpcDispatch -#:IpcFacade:publishCommand -#:IpcFacade:publishTelemetry -#:IpcFacade:start -#:IpcFacade:stop -#:IpcFacade:subscribeDataCentral -#:IpcFacade:unsubscribeAll -#:IpcFacade -#:IpcRobotAdapter:IpcRobotAdapter -#:IpcUtil:stop -#:JNIHelper:getClassClass -#:JNIHelper:getClassName -#:JNIHelper:isArrayClass -#:JNIHelper -#:JNIUtils:getArgcArgv -#:LibraryCallNode:~LibraryCallNode -#:ListNode:cleanUpChildConditions -#:ListNode:cleanUpConditions -#:ListNode:cleanUpNodeBody -#:ListNode:~ListNode -#:LookupOnChange:handleActivate -#:LookupOnChange:handleDeactivate -#:LookupOnChange:setThresholds -#:LookupOnChange -#:LuvListener:initialize -#:LuvListener:sendMessage -#:LuvListener:start -#:MessageQueueMap:addMessage -#:MessageQueueMap:addRecipient -#:MessageQueueMap:getQueue -#:MessageQueueMap:removeRecipient -#:MessageQueueMap:updateQueue -#:Node:abort -#:Node:checkConditions -#:Node:cleanUpConditions -#:Node:cleanUpConds -#:Node:cleanUpVars -#:Node:clock -#:Node:conditionChanged -#:Node:execute -#:Node:failure -#:Node:findLocalVariable -#:Node:findVariable -#:Node:getDestState -#:Node:iterationOutcome -#:Node:node -#:Node:outcome -#:Node:reset -#:Node:transition -#:Node:~Node -#:NodeFactory -#:NotifierImpl:addListener -#:NotifierImpl:removeListener -#:PlexilExec:addPlan -#:PlexilExec:addToResourceContention -#:PlexilExec:cycle -#:PlexilExec:deleteFinishedPlans -#:PlexilExec:handleConditionsChanged -#:PlexilExec:handleNeedsExecution -#:PlexilExec:notifyNodeConditionChanged -#:PlexilExec:performAssignments -#:PlexilExec:printPlan -#:PlexilExec:resolveResourceConflicts -#:PlexilExec:step -#:PlexilSimResponseFactory:parse -#:PlexilSimulator -#:RecursiveThreadMutex:lock -#:RecursiveThreadMutex:unlock -#:ResourceArbiterInterface:printAcceptedCommands -#:ResourceArbiterInterface:printLockedResources -#:ResourceArbiterInterface:printResourceCommandMap -#:ResourceArbiterInterface:printSortedCommands -#:ResourceArbiterInterface:readResourceHierarchy -#:ResourceArbiterInterface:releaseResourcesForCommand -#:ResponseFactory::parse -#:ResponseMessageManager:addResponse -#:ResponseMessageManager:getResponses -#:ResponseMessageManager:scheduleInitialEvents -#:Simulator:constructNextResponse -#:Simulator:handleWakeUp -#:Simulator:scheduleMessage -#:Simulator:scheduleNextResponse -#:Simulator:scheduleResponseForCommand -#:Simulator:simulatorTopLevel -#:Simulator:start -#:Simulator:stop -#:Simulator:~Simulator -#:SimulatorScriptReader:ensureResponseMessageManager -#:SimulatorScriptReader:readScript -#:TelemetryResponseManager:constructor -#:TelemetryResponseManager:scheduleInitialEvents -#:Test:testOutput -#:Test:verboseTestOutput -#:TimeAdapter:deleteTimer -#:TimeAdapter:getCurrentTime -#:TimeAdapter:setThresholds -#:TimeAdapter:setTimer -#:TimeAdapter:start -#:TimeAdapter:stop -#:TimeAdapter:stopTimer -#:TimeAdapter:subscribe -#:TimeAdapter:timerWaitThread -#:TimeAdapter:unsubscribe -#:Time -#:TimingService:defaultInitializeSignalHandling -#:TimingService:getTimer -#:TimingService:initializeSignalHandling -#:TimingService:restoreSignalHandling -#:TimingService:setTimer -#:TimingService:stopTimer -#:TimingService:wait -#:UdpAdapter:UdpAdapter(execInterface) -#:UdpAdapter:UdpAdapter -#:UdpAdapter:buildUdpBuffer -#:UdpAdapter:executeCommand -#:UdpAdapter:executeDefaultCommand -#:UdpAdapter:executeGetParameterCommand -#:UdpAdapter:executeReceiveCommandCommand -#:UdpAdapter:executeReceiveUdpCommand -#:UdpAdapter:executeSendMessageCommand -#:UdpAdapter:executeSendReturnValueCommand -#:UdpAdapter:executeSendUdpMessageCommand -#:UdpAdapter:formatMessageName -#:UdpAdapter:handleUdpMessage -#:UdpAdapter:initialize -#:UdpAdapter:invokeAbort -#:UdpAdapter:lookupNow -#:UdpAdapter:reset -#:UdpAdapter:sendPlannerUpdate -#:UdpAdapter:sendUdpMessage -#:UdpAdapter:shutdown -#:UdpAdapter:start() -#:UdpAdapter:startUdpMessageReceiver -#:UdpAdapter:stop -#:UdpAdapter:subscribe -#:UdpAdapter:unsubscribe -#:UdpAdapter:waitForUdpMessage -#:UdpAdapter:~UdpAdapter -#:UnitTest:actionExecutingTransition -#:UnitTest:bindingExecutingTransition -#:UnitTest:finishedTransition -#:UnitTest:inactiveDestTest -#:UnitTest:inactiveTransTest -#:UnitTest:iterationEndedTransition -#:UnitTest:listExecutingTransition -#:UnitTest:listFailingTrans -#:UnitTest:listFinishingDest -#:UnitTest:listFinishingTrans -#:UnitTest:waitingDestTest -#:UnitTest:waitingTransition -#:UniversalExec -#:Update:addPair -#:Update:fixValues -#:UpdateNode:cleanUpNodeBody -#:UpdateNode:~UpdateNode -#:UtilityAdapter -#:constructPlexilValueMsg -#:createExpression -#:finalizeAlias -#:finalizeLibraryCall -#:finalizeNode -#:linkAndInitializeInterface -#:linkInVar -#:main1 -#:main1a -#:main2 -#:main2a -#:parseNode diff --git a/doc/DebugFlagComments.txt b/doc/DebugFlagComments.txt deleted file mode 100644 index 1a1772a5..00000000 --- a/doc/DebugFlagComments.txt +++ /dev/null @@ -1,270 +0,0 @@ -MSG=:AdapterConfiguration:reset -COMMENT= - -MSG=:AdapterConfiguration:setDefaultCommandInterface -COMMENT= - -MSG=:AdapterConfiguration:setDefaultInterface -COMMENT= - -MSG=:AdapterConfiguration:setDefaultLookupInterface -COMMENT= - -MSG=:AdapterConfiguration:shutdown -COMMENT= - -MSG=:AdapterConfiguration:start -COMMENT= - -MSG=:AdapterConfiguration:stop -COMMENT= - -MSG=:AdapterConfiguration:verboseConstructInterfaces -COMMENT= - -MSG=:AdapterFactory::createInstance -COMMENT= - -MSG=:AdapterFactory:createInstance -COMMENT= - -MSG=:AdapterFactory:registerFactory -COMMENT= - -MSG=:AllFinished -COMMENT= - -MSG=:AllWaitingOrFinished -COMMENT= - -MSG=:AssignmentNode:cleanUpNodeBody -COMMENT= - -MSG=:CommandNode:cleanUpNodeBody -COMMENT= - -MSG=:CommandNode:~CommandNode -COMMENT= - -MSG=:DynamicLoader:loadModule -COMMENT= - -MSG=:DynamicLoader:verboseLoadModule -COMMENT= - -MSG=:ExecApplication:addLibrary -COMMENT= - -MSG=:ExecApplication:addPlan -COMMENT= - -MSG=:ExecApplication:initializeMainSignalHandling -COMMENT= - -MSG=:ExecApplication:initialize -COMMENT= - -MSG=:ExecApplication:initializeWorkerSignalHandling -COMMENT= - -MSG=:ExecApplication:notifyAndWait -COMMENT= - -MSG=:ExecApplication:notify -COMMENT= - -MSG=:ExecApplication:reset -COMMENT= - -MSG=:ExecApplication:restoreMainSignalHandling -COMMENT= - -MSG=:ExecApplication:restoreWorkerSignalHandling -COMMENT= - -MSG=:ExecApplication:runExec -COMMENT= - -MSG=:ExecApplication:runInternal -COMMENT= - -MSG=:ExecApplication:run -COMMENT= - -MSG=:ExecApplication:setApplicationState -COMMENT= - -MSG=:ExecApplication:shutdown -COMMENT= - -MSG=:ExecApplication:startInterfaces -COMMENT= - -MSG=:ExecApplication:step -COMMENT= - -MSG=:ExecApplication:stepUntilQuiescent -COMMENT= - -MSG=:ExecApplication:stop -COMMENT= - -MSG=:ExecApplication:terminate -COMMENT= - -MSG=:ExecApplication:wait -COMMENT= - -MSG=:ExecListener:implementNotifyAddLibrary -COMMENT= - -MSG=:ExecListener:implementNotifyAddPlan -COMMENT= - -MSG=:ExecListener:implementNotifyAssignment -COMMENT= - -MSG=:ExecListener:implementNotifyNodeTransition -COMMENT= - -MSG=:ExecListener:implementNotifyNodeTransitions -COMMENT= - -MSG=:ExecListener:notifyOfTransitions -COMMENT= - -MSG=:ExecListenerFactory:createInstance -COMMENT= - -MSG=:ExecListenerFactory:registerFactory -COMMENT= - -MSG=:ExecListenerFilterFactory:createInstance -COMMENT= - -MSG=:ExecListenerFilterFactory:registerFactory -COMMENT= - -MSG=:ExecListenerHub:initialize -COMMENT= - -MSG=:ExpressionFactory:registerFactory -COMMENT= - -MSG=:ExternalInterface:dummy -COMMENT= - -MSG=:ExternalInterface:stringToValue -COMMENT= - -MSG=:ExternalInterface:udp -COMMENT= - -MSG=:GanttViewer:printErrors -COMMENT= - -MSG=:GanttViewer:printProgress -COMMENT= - -MSG=:InterfaceAdapter:setThresholds -COMMENT= - -MSG=:InterfaceManager:handleAddLibrary -COMMENT= - -MSG=:InterfaceManager:handleAddPlan -COMMENT= - -MSG=:InterfaceManager:handleCommandAbortAck -COMMENT= - -MSG=:InterfaceManager:handleCommandAck -COMMENT= - -MSG=:InterfaceManager:handleCommandReturn -COMMENT= - -MSG=:InterfaceManager:handleUpdateAck -COMMENT= - -MSG=:InterfaceManager:handleValueChange -COMMENT= - -MSG=:InterfaceManager:lookupNow -COMMENT= - -MSG=:InterfaceManager:markQueue -COMMENT= - -MSG=:InterfaceManager:notify -COMMENT= - -MSG=:InterfaceManager:processQueue -COMMENT= - -MSG=:InterfaceManager:queryTime -COMMENT= - -MSG=:InterfaceManager:reset -COMMENT= - -MSG=:InterfaceManager:setThresholds -COMMENT= - -MSG=:InterfaceManager:shutdown -COMMENT= - -MSG=:InterfaceManager:subscribe -COMMENT= - -MSG=:InterfaceManager:unsubscribe -COMMENT= - -MSG=:InterfaceManager:updatePlanner -COMMENT= - -MSG=:IpcAdapter::enqueueMessageSequence -COMMENT= - -MSG=:IpcAdapter:IpcAdapter -COMMENT= - -MSG=:IpcAdapter:executeCommand -COMMENT= - -MSG=:IpcAdapter:handleCommandSequence -COMMENT= - -MSG=:IpcAdapter:handleIpcMessage -COMMENT= - -MSG=:IpcAdapter:handleLookupNow -COMMENT= - -MSG=:IpcAdapter:handleReturnValuesSequence -COMMENT= - -MSG=:IpcAdapter:handleTelemetryValuesSequence -COMMENT= - -MSG=:IpcAdapter:initialize -COMMENT= - -MSG=:IpcAdapter:invokeAbort -COMMENT= - -MSG=:IpcAdapter:lookupNow -COMMENT= - -MSG=:IpcAdapter:parseExternalLookups -COMMENT= - -MSG=:IpcAdapter:shutdown -COMMENT= - -MSG=:IpcAdapter:start -COMMENT= - -MSG=:IpcAdapter:stop -COMMENT= - diff --git a/doc/DebugFlagDefinitions.txt b/doc/DebugFlagDefinitions.txt deleted file mode 100644 index ca645065..00000000 --- a/doc/DebugFlagDefinitions.txt +++ /dev/null @@ -1,2083 +0,0 @@ -# This file contains a list of debug tags followed by a source and a description. -# Each debug tag in the list is represented by the following elements: - -# #MSG=DEBUG TAG -# COMMENT=description of debug tag -# #:##SRC=SOURCE FILE : LINE NUMBER -# #:##DEF=SOURCE CODE where DEBUG TAG was found - -# For example: - -# 68MSG=:Node:checkConditions -# COMMENT=Notification of checking condition change or (possible) transition for a node. -# 68:1SRC=/home/laurel/plexil/universal-exec/Exec/base/Node.cc : 1243 -# 68:1DEF=debugMsg("Node:checkConditions","Checking condition change for node " << m_nodeId.toString()); -# 68:2SRC=/home/laurel/plexil/universal-exec/Exec/base/Node.cc : 1246 -# 68:2DEF=debugMsg("Node:checkConditions","Can (possibly) transition to " << toState.toString()); - -# ':Node:checkConditions' is the 68th debug tag in the list and was found in -# two separate locations, thus the need for 68:1 and 68:2 SRC and DEF. - - -1MSG=:AdapterConfiguration:constructInterfaces -1:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 122 -1:1DEF=debugMsg("AdapterConfiguration:constructInterfaces"," empty configuration, nothing to construct"); -1:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 130 -1:2DEF=debugMsg("AdapterConfiguration:constructInterfaces"," invalid configuration XML: no " << InterfaceSchema::INTERFACES_TAG() << " element"); -1:3SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 143 -1:3DEF=debugMsg("AdapterConfiguration:constructInterfaces"," constructing adapter type \""<< element.attribute(InterfaceSchema::ADAPTER_TYPE_ATTR()).value()<< "\""); -1:4SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 151 -1:4DEF=debugMsg("AdapterConfiguration:constructInterfaces"," failed to construct adapter type \""<< element.attribute(InterfaceSchema::ADAPTER_TYPE_ATTR()).value()<< "\""); -1:5SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 161 -1:5DEF=debugMsg("AdapterConfiguration:constructInterfaces"," constructing listener type \""<< element.attribute(InterfaceSchema::LISTENER_TYPE_ATTR()).value()<< "\""); -1:6SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 168 -1:6DEF=debugMsg("AdapterConfiguration:constructInterfaces"," failed to construct listener from XML"); -1:7SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 199 -1:7DEF=debugMsg("AdapterConfiguration:constructInterfaces"," ignoring unrecognized XML element \""<< elementType << "\""); - -2MSG=:AdapterConfiguration:defaultRegisterAdapter -2:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 436 -2:1DEF=debugMsg("AdapterConfiguration:defaultRegisterAdapter", " for adapter " << adapter); - -3MSG=:AdapterConfiguration:getCommandInterface -3:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 633 -3:1DEF=debugMsg("AdapterConfiguration:getCommandInterface"," found specific interface " << (*it).second<< " for command '" << commandName << "'"); -3:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 640 -3:2DEF=debugMsg("AdapterConfiguration:getCommandInterface"," returning default command interface " << m_defaultCommandInterface<< " for command '" << commandName << "'"); -3:3SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 646 -3:3DEF=debugMsg("AdapterConfiguration:getCommandInterface"," returning default interface " << m_defaultInterface<< " for command '" << commandName << "'"); - -4MSG=:AdapterConfiguration:getLookupInterface -4:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 668 -4:1DEF=debugMsg("AdapterConfiguration:getLookupInterface"," found specific interface " << (*it).second<< " for lookup '" << stateName << "'"); -4:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 675 -4:2DEF=debugMsg("AdapterConfiguration:getLookupInterface"," returning default lookup interface " << m_defaultLookupInterface<< " for lookup '" << stateName << "'"); -4:3SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 681 -4:3DEF=debugMsg("AdapterConfiguration:getLookupInterface"," returning default interface " << m_defaultInterface<< " for lookup '" << stateName << "'"); - -5MSG=:AdapterConfiguration:getPlannerUpdateInterface -5:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 702 -5:1DEF=debugMsg("AdapterConfiguration:getPlannerUpdateInterface"," returning default interface " << m_defaultInterface); -5:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 706 -5:2DEF=debugMsg("AdapterConfiguration:getPlannerUpdateInterface"," found specific interface " << m_plannerUpdateInterface); - -6MSG=:AdapterConfiguration:initialize -6:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 217 -6:1DEF=debugMsg("AdapterConfiguration:initialize", " initializing interface adapters"); -6:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 225 -6:2DEF=debugMsg("AdapterConfiguration:initialize"," adapter initialization failed for type \""<< a->getXml().attribute(InterfaceSchema::ADAPTER_TYPE_ATTR()).value()<< "\", returning false"); -6:3SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 236 -6:3DEF=debugMsg("AdapterConfiguration:initialize", " failed to initialize all Exec listeners, returning false"); -6:4SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 256 -6:4DEF=debugMsg("AdapterConfiguration:initialize"," adapter start failed for type \""<< (*it)->getXml().attribute(InterfaceSchema::ADAPTER_TYPE_ATTR()).value()<< "\", returning false"); - -7MSG=:AdapterConfiguration:registerCommandInterface -7:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 503 -7:1DEF=debugMsg("AdapterConfiguration:registerCommandInterface"," registering interface for command '" << commandName << "'"); -7:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 509 -7:2DEF=debugMsg("AdapterConfiguration:registerCommandInterface"," interface already registered for command '" << commandName << "'"); - -8MSG=:AdapterConfiguration:registerLookupInterface -8:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 528 -8:1DEF=debugMsg("AdapterConfiguration:registerLookupInterface"," registering interface for lookup '" << stateName << "'"); -8:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 534 -8:2DEF=debugMsg("AdapterConfiguration:registerLookupInterface"," interface already registered for lookup '" << stateName << "'"); - -9MSG=:AdapterConfiguration:registerPlannerUpdateInterface -9:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 549 -9:1DEF=debugMsg("AdapterConfiguration:registerPlannerUpdateInterface"," planner update interface already registered"); -9:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 553 -9:2DEF=debugMsg("AdapterConfiguration:registerPlannerUpdateInterface"," registering planner update interface"); - -10MSG=:AdapterConfiguration:reset -COMMENT= -10:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 297 -10:1DEF=debugMsg("AdapterConfiguration:reset", " entered"); -10:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 307 -10:2DEF=debugMsg("AdapterConfiguration:reset", " completed"); - -11MSG=:AdapterConfiguration:setDefaultCommandInterface -COMMENT= -11:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 614 -11:1DEF=debugMsg("AdapterConfiguration:setDefaultCommandInterface"," attempt to overwrite default command interface adapter " << m_defaultCommandInterface); -11:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 620 -11:2DEF=debugMsg("AdapterConfiguration:setDefaultCommandInterface"," setting default command interface " << intf); - -12MSG=:AdapterConfiguration:setDefaultInterface -COMMENT= -12:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 569 -12:1DEF=debugMsg("AdapterConfiguration:setDefaultInterface"," attempt to overwrite default interface adapter " << m_defaultInterface); -12:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 575 -12:2DEF=debugMsg("AdapterConfiguration:setDefaultInterface"," setting default interface " << intf); - -13MSG=:AdapterConfiguration:setDefaultLookupInterface -COMMENT= -13:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 592 -13:1DEF=debugMsg("AdapterConfiguration:setDefaultLookupInterface"," attempt to overwrite default lookup interface adapter " << m_defaultLookupInterface); -13:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 598 -13:2DEF=debugMsg("AdapterConfiguration:setDefaultLookupInterface"," setting default lookup interface " << intf); - -14MSG=:AdapterConfiguration:shutdown -COMMENT= -14:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 317 -14:1DEF=debugMsg("AdapterConfiguration:shutdown", " entered"); -14:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 330 -14:2DEF=debugMsg("AdapterConfiguration:shutdown", " completed"); - -15MSG=:AdapterConfiguration:start -COMMENT= -15:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 249 -15:1DEF=debugMsg("AdapterConfiguration:start", " starting interface adapters"); -15:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 266 -15:2DEF=condDebugMsg(!success,"AdapterConfiguration:start", " failed to start all Exec listeners, returning false"); - -16MSG=:AdapterConfiguration:stop -COMMENT= -16:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 276 -16:1DEF=debugMsg("AdapterConfiguration:stop", " entered"); -16:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 287 -16:2DEF=debugMsg("AdapterConfiguration:stop", " completed"); - -17MSG=:AdapterConfiguration:verboseConstructInterfaces -COMMENT= -17:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 127 -17:1DEF=debugMsg("AdapterConfiguration:verboseConstructInterfaces", " parsing configuration XML"); -17:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 139 -17:2DEF=debugMsg("AdapterConfiguration:verboseConstructInterfaces", " found element " << element.name()); -17:3SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterConfiguration.cc : 207 -17:3DEF=debugMsg("AdapterConfiguration:verboseConstructInterfaces", " done."); - -18MSG=:AdapterFactory::createInstance -COMMENT= -18:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterFactory.cc : 116 -18:1DEF=debugMsg("AdapterFactory::createInstance"," unable to load module for adapter type \""<< name.c_str() << "\""); - -19MSG=:AdapterFactory:createInstance -COMMENT= -19:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterFactory.cc : 109 -19:1DEF=debugMsg("AdapterFactory:createInstance","Attempting to dynamically load adapter type \""<< name.c_str() << "\""); -19:2SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterFactory.cc : 129 -19:2DEF=debugMsg("AdapterFactory:createInstance"," No adapter factory registered for name \"" << name.c_str() << "\"."); -19:3SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterFactory.cc : 135 -19:3DEF=debugMsg("AdapterFactory:createInstance", " Created adapter " << name.c_str()); - -20MSG=:AdapterFactory:registerFactory -COMMENT= -20:1SRC=/Users/cfry/src/plexil-4/src/app-framework/AdapterFactory.cc : 182 -20:1DEF=debugMsg("AdapterFactory:registerFactory"," Registered adapter factory for name \"" << name.c_str() << "\""); - -21MSG=:AllFinished -COMMENT= -21:1SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 101 -21:1DEF=debugMsg("AllFinished", "result = false"); -21:2SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 105 -21:2DEF=debugMsg("AllFinished", "result = true"); -21:3SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 68 -21:3DEF=debugMsg("AllFinished", "result = " << result); -21:4SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 80 -21:4DEF=debugMsg("AllFinished", "result = " << result); -21:5SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 86 -21:5DEF=debugMsg("AllFinished", "result = " << result); - -22MSG=:AllWaitingOrFinished -COMMENT= -22:1SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 143 -22:1DEF=debugMsg("AllWaitingOrFinished", " result = " << result); -22:2SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 155 -22:2DEF=debugMsg("AllWaitingOrFinished", " result = " << result); -22:3SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 161 -22:3DEF=debugMsg("AllWaitingOrFinished", " result = " << result); -22:4SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 181 -22:4DEF=debugMsg("AllWaitingOrFinished", " result = false"); -22:5SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 186 -22:5DEF=debugMsg("AllWaitingOrFinished", " result = true"); - -23MSG=:AssignmentNode:cleanUpNodeBody -COMMENT= -23:1SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 340 -23:1DEF=debugMsg("AssignmentNode:cleanUpNodeBody", "<" << m_nodeId << "> Removing assignment."); - -24MSG=:CommandNode:cleanUpNodeBody -COMMENT= -24:1SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 148 -24:1DEF=debugMsg("CommandNode:cleanUpNodeBody", " for " << m_nodeId); -24:2SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 151 -24:2DEF=debugMsg("CommandNode:cleanUpNodeBody", "<" << m_nodeId << "> Removing command."); - -25MSG=:CommandNode:~CommandNode -COMMENT= -25:1SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 136 -25:1DEF=debugMsg("CommandNode:~CommandNode", " destructor for " << m_nodeId); - -26MSG=:DynamicLoader:loadModule -COMMENT= -26:1SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 118 -26:1DEF=debugMsg("DynamicLoader:loadModule"," unable to open library \"" << libName << "\""); -26:2SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 125 -26:2DEF=debugMsg("DynamicLoader:loadModule"," dlsym failed to find symbol \"" << symbol << "\": " << dlerror()); -26:3SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 58 -26:3DEF=debugMsg("DynamicLoader:loadModule"," no library name provided for module \""<< moduleName << "\", using default value of \""<< libName << "\""); -26:4SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 75 -26:4DEF=debugMsg("DynamicLoader:loadModule"," Failed to load library " << libPath); -26:5SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 83 -26:5DEF=debugMsg("DynamicLoader:loadModule"," successfully loaded \"" << moduleName << "\""); - -27MSG=:DynamicLoader:verboseLoadModule -COMMENT= -27:1SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 100 -27:1DEF=debugMsg("DynamicLoader:verboseLoadModule"," dlopen failed on file " << libName << ": " << dlerror()); -27:2SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 109 -27:2DEF=debugMsg("DynamicLoader:verboseLoadModule"," dlopen succeeded for " << libPath); -27:3SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 113 -27:3DEF=debugMsg("DynamicLoader:verboseLoadModule"," dlopen failed on file " << libPath << ": " << dlerror()); -27:4SRC=/Users/cfry/src/plexil-4/src/utils/DynamicLoader.cc : 96 -27:4DEF=debugMsg("DynamicLoader:verboseLoadModule"," dlopen succeeded for " << libName); - -28MSG=:ExecApplication:addLibrary -COMMENT= -28:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 399 -28:1DEF=debugMsg("ExecApplication:addLibrary", " Library added"); - -29MSG=:ExecApplication:addPlan -COMMENT= -29:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 450 -29:1DEF=debugMsg("ExecApplication:addPlan", " Plan added, stepping exec\n"); - -30MSG=:ExecApplication:initializeMainSignalHandling -COMMENT= -30:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 868 -30:1DEF=debugMsg("ExecApplication:initializeMainSignalHandling", " sigemptyset returned " << errnum); -30:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 873 -30:2DEF=debugMsg("ExecApplication:initializeMainSignalHandling", " sigaddset returned " << errnum); -30:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 880 -30:3DEF=debugMsg("ExecApplication:initializeMainSignalHandling", " pthread_sigmask returned " << errnum); -30:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 884 -30:4DEF=debugMsg("ExecApplication:initializeMainSignalHandling", " complete"); - -31MSG=:ExecApplication:initialize -COMMENT= -31:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 107 -31:1DEF=condDebugMsg(configXml.empty(), "ExecApplication:initialize", " configuration is NULL"); -31:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 108 -31:2DEF=condDebugMsg(!configXml.empty(), "ExecApplication:initialize"," configuration = " << configXml); // *** FIXME - PRINTS "1" *** -31:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 112 -31:3DEF=debugMsg("ExecApplication:initialize"," application already initialized"); -31:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 127 -31:4DEF=debugMsg("ExecApplication:initialize"," construction of interfaces failed"); -31:5SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 134 -31:5DEF=debugMsg("ExecApplication:initialize"," initialization of interfaces failed"); - -32MSG=:ExecApplication:initializeWorkerSignalHandling -COMMENT= -32:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 792 -32:1DEF=debugMsg("ExecApplication:initializeWorkerSignalHandling", " sigemptyset returned " << errnum); -32:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 802 -32:2DEF=debugMsg("ExecApplication:initializeWorkerSignalHandling", " sigaddset returned " << errnum); -32:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 809 -32:3DEF=debugMsg("ExecApplication:initializeWorkerSignalHandling", " pthread_sigmask returned " << errnum); -32:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 822 -32:4DEF=debugMsg("ExecApplication:initializeWorkerSignalHandling", " sigaction returned " << errnum); -32:5SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 826 -32:5DEF=debugMsg("ExecApplication:initializeWorkerSignalHandling", " complete"); - -33MSG=:ExecApplication:loadLibrary -33:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 425 -33:1DEF=debugMsg("ExecApplication:loadLibrary", " Library " << name << " loaded"); -33:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 428 -33:2DEF=debugMsg("ExecApplication:loadLibrary", " Library " << name << " not found"); - -34MSG=:ExecApplication:notifyAndWait -COMMENT= -34:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 982 -34:1DEF=debugMsg("ExecApplication:notifyAndWait", " received external event"); - -35MSG=:ExecApplication:notify -COMMENT= -35:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 964 -35:1DEF=debugMsg("ExecApplication:notify","released semaphore"); -35:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 971 -35:2DEF=debugMsg("ExecApplication:notify", " exec was idle, stepping it"); - -36MSG=:ExecApplication:reset -COMMENT= -36:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 343 -36:1DEF=debugMsg("ExecApplication:reset", " entered"); -36:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 356 -36:2DEF=debugMsg("ExecApplication:reset", " completed"); - -37MSG=:ExecApplication:restoreMainSignalHandling -COMMENT= -37:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 895 -37:1DEF=debugMsg("ExecApplication:restoreMainSignalHandling", " failed; pthread_sigmask returned " << errnum); -37:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 899 -37:2DEF=debugMsg("ExecApplication:restoreMainSignalHandling", " complete"); - -38MSG=:ExecApplication:restoreWorkerSignalHandling -COMMENT= -38:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 837 -38:1DEF=debugMsg("ExecApplication:restoreWorkerSignalHandling", " sigaction returned " << errnum); -38:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 847 -38:2DEF=debugMsg("ExecApplication:restoreWorkerSignalHandling", " failed; sigprocmask returned " << errnum); -38:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 855 -38:3DEF=debugMsg("ExecApplication:restoreWorkerSignalHandling", " complete"); - -39MSG=:ExecApplication:runExec -COMMENT= -39:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 525 -39:1DEF=debugMsg("ExecApplication:runExec", " Stepping exec because stepFirst is set"); -39:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 535 -39:2DEF=debugMsg("ExecApplication:runExec", " Stepping exec"); -39:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 539 -39:3DEF=condDebugMsg(!m_suspended, "ExecApplication:runExec", " No events are pending"); -39:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 540 -39:4DEF=condDebugMsg(m_suspended, "ExecApplication:runExec", " Suspended"); - -40MSG=:ExecApplication:runInternal -COMMENT= -40:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 485 -40:1DEF=debugMsg("ExecApplication:runInternal", " Thread started"); -40:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 493 -40:2DEF=debugMsg("ExecApplication:runInternal", " Initial step complete"); -40:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 497 -40:3DEF=debugMsg("ExecApplication:runInternal", " Received stop request"); -40:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 508 -40:4DEF=debugMsg("ExecApplication:runInternal", " Ending the thread loop."); - -41MSG=:ExecApplication:run -COMMENT= -41:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 462 -41:1DEF=debugMsg("ExecApplication:run", " Spawning top level thread"); -41:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 472 -41:2DEF=debugMsg("ExecApplication:run", " Top level thread running"); - -42MSG=:ExecApplication:setApplicationState -COMMENT= -42:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 668 -42:1DEF=debugMsg("ExecApplication:setApplicationState","(" << getApplicationStateName(newState)<< ") from " << getApplicationStateName(m_state)); -42:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 683 -42:2DEF=debugMsg("ExecApplication:setApplicationState"," Illegal application state transition to APP_INITED"); -42:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 692 -42:3DEF=debugMsg("ExecApplication:setApplicationState"," Illegal application state transition to APP_READY"); -42:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 701 -42:4DEF=debugMsg("ExecApplication:setApplicationState"," Illegal application state transition to APP_RUNNING"); -42:5SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 710 -42:5DEF=debugMsg("ExecApplication:setApplicationState"," Illegal application state transition to APP_STOPPED"); -42:6SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 719 -42:6DEF=debugMsg("ExecApplication:setApplicationState"," Illegal application state transition to APP_SHUTDOWN"); -42:7SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 727 -42:7DEF=debugMsg("ExecApplication:setApplicationState"," Attempt to set state to illegal value " << newState); -42:8SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 742 -42:8DEF=debugMsg("ExecApplication:setApplicationState"," to " << getApplicationStateName(newState) << " successful"); - -43MSG=:ExecApplication:shutdown -COMMENT= -43:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 367 -43:1DEF=debugMsg("ExecApplication:shutdown", " entered"); -43:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 377 -43:2DEF=debugMsg("ExecApplication:shutdown", " completed"); - -44MSG=:ExecApplication:startInterfaces -COMMENT= -44:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 155 -44:1DEF=debugMsg("ExecApplication:startInterfaces"," failed to start interfaces"); - -45MSG=:ExecApplication:step -COMMENT= -45:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 177 -45:1DEF=debugMsg("ExecApplication:step", " Checking interface queue"); -45:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 180 -45:2DEF=debugMsg("ExecApplication:step", " Stepping exec"); -45:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 184 -45:3DEF=debugMsg("ExecApplication:step", " Step complete and all nodes quiescent"); -45:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 187 -45:4DEF=debugMsg("ExecApplication:step", " Queue processed, no step required."); - -46MSG=:ExecApplication:stepUntilQuiescent -COMMENT= -46:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 207 -46:1DEF=debugMsg("ExecApplication:stepUntilQuiescent", " Checking interface queue"); -46:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 209 -46:2DEF=debugMsg("ExecApplication:stepUntilQuiescent", " Stepping exec"); -46:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 214 -46:3DEF=debugMsg("ExecApplication:stepUntilQuiescent", " completed, queue empty and Exec quiescent."); - -47MSG=:ExecApplication:stop -COMMENT= -47:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 300 -47:1DEF=debugMsg("ExecApplication:stop", " Halting top level thread"); -47:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 319 -47:2DEF=debugMsg("ExecApplication:stop"," pthread_join() failed, error = " << status); -47:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 323 -47:3DEF=debugMsg("ExecApplication:stop", " Top level thread halted"); -47:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 764 -47:4DEF=debugMsg("ExecApplication:stop", " Received signal " << signo); - -48MSG=:ExecApplication:terminate -COMMENT= -48:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 626 -48:1DEF=debugMsg("ExecApplication:terminate", " from state " << getApplicationStateName(initState)); - -49MSG=:ExecApplication:wait -COMMENT= -49:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 558 -49:1DEF=debugMsg("ExecApplication:wait", " waiting for external event"); -49:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 564 -49:2DEF=condDebugMsg(!m_suspended,"ExecApplication:wait","acquired semaphore, processing external event"); -49:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecApplication.cc : 567 -49:3DEF=condDebugMsg(m_suspended,"ExecApplication:wait"," Application is suspended, ignoring external event"); - -50MSG=:ExecListener:implementNotifyAddLibrary -COMMENT= -50:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListener.cc : 263 -50:1DEF=debugMsg("ExecListener:implementNotifyAddLibrary", " default method called"); - -51MSG=:ExecListener:implementNotifyAddPlan -COMMENT= -51:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListener.cc : 253 -51:1DEF=debugMsg("ExecListener:implementNotifyAddPlan", " default method called"); - -52MSG=:ExecListener:implementNotifyAssignment -COMMENT= -52:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListener.cc : 276 -52:1DEF=debugMsg("ExecListener:implementNotifyAssignment", " default method called"); - -53MSG=:ExecListener:implementNotifyNodeTransition -COMMENT= -53:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListener.cc : 242 -53:1DEF=debugMsg("ExecListener:implementNotifyNodeTransition", " default method called"); - -54MSG=:ExecListener:implementNotifyNodeTransitions -COMMENT= -54:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListener.cc : 216 -54:1DEF=debugMsg("ExecListener:implementNotifyNodeTransitions", " default method called"); - -55MSG=:ExecListener:notifyOfTransitions -COMMENT= -55:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListener.cc : 99 -55:1DEF=debugMsg("ExecListener:notifyOfTransitions", " reporting " << transitions.size() << " transitions"); - -56MSG=:ExecListenerFactory:createInstance -COMMENT= -56:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFactory.cc : 103 -56:1DEF=debugMsg("ExecListenerFactory:createInstance"," No exec listener factory registered for name \"" << name.c_str() << "\""); -56:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFactory.cc : 108 -56:2DEF=debugMsg("ExecListenerFactory:createInstance", " Created Exec listener " << name.c_str()); -56:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFactory.cc : 85 -56:3DEF=debugMsg("ExecListenerFactory:createInstance","Attempting to dynamically load listener type \""<< name.c_str() << "\""); -56:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFactory.cc : 92 -56:4DEF=debugMsg("ExecListenerFactory:createInstance"," unable to load module for listener type \""<< name.c_str() << "\""); - -57MSG=:ExecListenerFactory:registerFactory -COMMENT= -57:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFactory.cc : 152 -57:1DEF=debugMsg("ExecListenerFactory:registerFactory"," Registered exec listener factory for name \"" << name.c_str() << "\""); - -58MSG=:ExecListenerFilterFactory:createInstance -COMMENT= -58:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFilterFactory.cc : 102 -58:1DEF=debugMsg("ExecListenerFilterFactory:createInstance"," No exec listener filter factory registered for name \""<< name.c_str() << "\"."); -58:2SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFilterFactory.cc : 108 -58:2DEF=debugMsg("ExecListenerFilterFactory:createInstance"," Created Exec listener filter " << name.c_str()); -58:3SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFilterFactory.cc : 85 -58:3DEF=debugMsg("ExecListenerFilterFactory:createInstance","Attempting to dynamically load filter type \""<< name.c_str() << "\""); -58:4SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFilterFactory.cc : 92 -58:4DEF=debugMsg("ExecListenerFilterFactory:createInstance"," unable to load module for filter type \""<< name.c_str() << "\""); - -59MSG=:ExecListenerFilterFactory:registerFactory -COMMENT= -59:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerFilterFactory.cc : 160 -59:1DEF=debugMsg("ExecListenerFilterFactory:registerFactory"," Registered exec listener filter factory for name \"" << name.c_str() << "\""); - -60MSG=:ExecListenerHub:initialize -COMMENT= -60:1SRC=/Users/cfry/src/plexil-4/src/app-framework/ExecListenerHub.cc : 149 -60:1DEF=debugMsg("ExecListenerHub:initialize", " failed to initialize all Exec listeners, returning false"); - -61MSG=:ExpressionFactory:registerFactory -COMMENT= -61:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/ExpressionFactory.cc : 64 -61:1DEF=debugMsg("ExpressionFactory:registerFactory","Registered factory for name \"" << name << "\""); - -62MSG=:ExternalInterface:dummy -COMMENT= -62:1SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 109 -62:1DEF=debugMsg("ExternalInterface:dummy"," LookupNow of " << state << " returning UNKNOWN"); -62:2SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 116 -62:2DEF=debugMsg("ExternalInterface:dummy"," subscribe of " << state << " called, ignoring"); -62:3SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 122 -62:3DEF=debugMsg("ExternalInterface:dummy"," unsubscribe of " << state << " called, ignoring"); -62:4SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 128 -62:4DEF=debugMsg("ExternalInterface:dummy"," setThresholds of " << state << " called, ignoring"); -62:5SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 134 -62:5DEF=debugMsg("ExternalInterface:dummy"," setThresholds of " << state << " called, ignoring"); -62:6SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 140 -62:6DEF=debugMsg("ExternalInterface:dummy", " sendPlannerUpdate called"); -62:7SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 143 -62:7DEF=debugMsg("ExternalInterface:dummy"," faking acknowledgment of update"); -62:8SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 151 -62:8DEF=debugMsg("ExternalInterface:dummy", " executeCommand for " << cmd->getName()); -62:9SRC=/Users/cfry/src/plexil-4/src/app-framework/DummyAdapter.cc : 159 -62:9DEF=debugMsg("ExternalInterface:dummy", " invokeAbort for " << cmd->getName()); - -63MSG=:ExternalInterface:udp -COMMENT= -63:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 130 -63:1DEF=debugMsg("ExternalInterface:udp", " subscribe called"); -63:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 136 -63:2DEF=debugMsg("ExternalInterface:udp", " unsubscribe called"); -63:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 142 -63:3DEF=debugMsg("ExternalInterface:udp", " lookupNow called; returning UNKNOWN"); -63:4SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 149 -63:4DEF=debugMsg("ExternalInterface:udp", " sendPlannerUpdate called"); -63:5SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 151 -63:5DEF=debugMsg("ExternalInterface:udp"," faking acknowledgment of update node '" << update->getSource()->getNodeId() << "'"); - -64MSG=:GanttViewer:printErrors -COMMENT= -64:1SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 105 -64:1DEF=debugMsg("GanttViewer:printErrors", "PLEXIL_HOME is not defined"); -64:2SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 117 -64:2DEF=debugMsg("GanttViewer:printErrors", "Output path is not defined"); -64:3SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 153 -64:3DEF=debugMsg("GanttViewer:printErrors", "Failed to create HTML file!"); -64:4SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 238 -64:4DEF=debugMsg("GanttViewer:printErrors", "Failed to create JSON file!"); -64:5SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 273 -64:5DEF=debugMsg("GanttViewer:printErrors", "Failed to create JSON file!"); - -65MSG=:GanttViewer:printProgress -COMMENT= -65:1SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 212 -65:1DEF=debugMsg("GanttViewer:printProgress", "HTML file written to "+ m_HTMLFilePath); -65:2SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 248 -65:2DEF=debugMsg("GanttViewer:printProgress","JSON tokens file written to "+ outputFileName); -65:3SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 281 -65:3DEF=debugMsg("GanttViewer:printProgress","JSON tokens file written to "+ outputFileName); -65:4SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 536 -65:4DEF=debugMsg("GanttViewer:printProgress","finished gathering partial data; JSON and HTML stored"); -65:5SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 558 -65:5DEF=debugMsg("GanttViewer:printProgress","finished gathering data; JSON and HTML stored"); -65:6SRC=/Users/cfry/src/plexil-4/src/interfaces/GanttListener/GanttListener.cc : 614 -65:6DEF=debugMsg("GanttViewer:printProgress", "Token added for node " +nodeTypeString(nodeId->getType()) + "." + nodeId->getNodeId()); - -66MSG=:InterfaceAdapter:setThresholds -COMMENT= -66:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceAdapter.cc : 89 -66:1DEF=debugMsg("InterfaceAdapter:setThresholds", " default method called"); -66:2SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceAdapter.cc : 94 -66:2DEF=debugMsg("InterfaceAdapter:setThresholds", " default method called"); - -67MSG=:InterfaceManager:handleAddLibrary -COMMENT= -67:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 619 -67:1DEF=debugMsg("InterfaceManager:handleAddLibrary", " library node " << name << " added"); - -68MSG=:InterfaceManager:handleAddPlan -COMMENT= -68:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 567 -68:1DEF=debugMsg("InterfaceManager:handleAddPlan", " entered"); -68:2SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 586 -68:2DEF=debugMsg("InterfaceManager:handleAddPlan", " plan enqueued for loading"); - -69MSG=:InterfaceManager:handleCommandAbortAck -COMMENT= -69:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 522 -69:1DEF=debugMsg("InterfaceManager:handleCommandAbortAck"," for command " << cmd->getCommand()<< ", ack = " << (ack ? "true" : "false")); - -70MSG=:InterfaceManager:handleCommandAck -COMMENT= -70:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 494 -70:1DEF=debugMsg("InterfaceManager:handleCommandAck"," for command " << cmd->getCommand()<< ", handle = " << commandHandleValueName(value)); - -71MSG=:InterfaceManager:handleCommandReturn -COMMENT= -71:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 508 -71:1DEF=debugMsg("InterfaceManager:handleCommandReturn"," for command " << cmd->getCommand()<< ", value = " << value); - -72MSG=:InterfaceManager:handleUpdateAck -COMMENT= -72:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 536 -72:1DEF=debugMsg("InterfaceManager:handleUpdateAck"," for node " << upd->getSource()->getNodeId()<< ", ack = " << (ack ? "true" : "false")); - -73MSG=:InterfaceManager:handleValueChange -COMMENT= -73:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 480 -73:1DEF=debugMsg("InterfaceManager:handleValueChange"," for state " << state << ", new value = " << value); - -74MSG=:InterfaceManager:lookupNow -COMMENT= -74:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 306 -74:1DEF=debugMsg("InterfaceManager:lookupNow", " of " << state); -74:2SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 323 -74:2DEF=debugMsg("InterfaceManager:lookupNow"," setting current time to " << std::setprecision(15) << newTime); - -75MSG=:InterfaceManager:markQueue -COMMENT= -75:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 553 -75:1DEF=debugMsg("InterfaceManager:markQueue"," sequence # " << sequence); - -76MSG=:InterfaceManager:notify -COMMENT= -76:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 653 -76:1DEF=debugMsg("InterfaceManager:notify", " received external event"); - -77MSG=:InterfaceManager:processQueue -COMMENT= -77:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 185 -77:1DEF=debugMsg("InterfaceManager:processQueue", " Received mark"); -77:2SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 193 -77:2DEF=debugMsg("InterfaceManager:processQueue"," Received new value " << entry->value << " for " << *(entry->state)); -77:3SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 205 -77:3DEF=debugMsg("InterfaceManager:processQueue"," setting current time to " << std::setprecision(15) << newValue); -77:4SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 223 -77:4DEF=debugMsg("InterfaceManager:processQueue"," received command handle value "<< commandHandleValueName((CommandHandleValue) handle)<< " for command " << entry->command->getCommand()); -77:5SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 234 -77:5DEF=debugMsg("InterfaceManager:processQueue"," received return value " << entry->value<< " for command " << entry->command->getCommand()); -77:6SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 247 -77:6DEF=debugMsg("InterfaceManager:processQueue"," received command abort ack " << (ack ? "true" : "false")<< " for command " << entry->command->getCommand()); -77:7SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 261 -77:7DEF=debugMsg("InterfaceManager:processQueue"," received update ack " << (ack ? "true" : "false")<< " for node "<< entry->update->getSource()->getNodeId()); -77:8SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 274 -77:8DEF=debugMsg("InterfaceManager:processQueue"," adding plan " << entry->plan->getNodeId()); -77:9SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 294 -77:9DEF=debugMsg("InterfaceManager:processQueue"," Queue empty, returning " << (needsStep ? "true" : "false")); - -78MSG=:InterfaceManager:queryTime -COMMENT= -78:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 460 -78:1DEF=debugMsg("InterfaceManager:queryTime", " called"); - -79MSG=:InterfaceManager:reset -COMMENT= -79:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 131 -79:1DEF=debugMsg("InterfaceManager:reset", " entered"); - -80MSG=:InterfaceManager:setThresholds -COMMENT= -80:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 366 -80:1DEF=debugMsg("InterfaceManager:setThresholds", " for state " << state); -80:2SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 378 -80:2DEF=debugMsg("InterfaceManager:setThresholds", " for state " << state); - -81MSG=:InterfaceManager:shutdown -COMMENT= -81:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 152 -81:1DEF=debugMsg("InterfaceManager:shutdown", " completed"); - -82MSG=:InterfaceManager:subscribe -COMMENT= -82:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 335 -82:1DEF=debugMsg("InterfaceManager:subscribe", " to state " << state); - -83MSG=:InterfaceManager:unsubscribe -COMMENT= -83:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 349 -83:1DEF=debugMsg("InterfaceManager:unsubscribe", " to state " << state); - -84MSG=:InterfaceManager:updatePlanner -COMMENT= -84:1SRC=/Users/cfry/src/plexil-4/src/app-framework/InterfaceManager.cc : 401 -84:1DEF=debugMsg("InterfaceManager:updatePlanner"," sending planner update for node "<< update->getSource()->getNodeId()); - -85MSG=:IpcAdapter::enqueueMessageSequence -COMMENT= -85:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 987 -85:1DEF=debugMsg("IpcAdapter::enqueueMessageSequence","Unhandled leader message type " << msgs.front()->msgType << ". Disregarding"); - -86MSG=:IpcAdapter:IpcAdapter -COMMENT= -86:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 66 -86:1DEF=debugMsg("IpcAdapter:IpcAdapter", " configuration XML not provided"); -86:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 85 -86:2DEF=condDebugMsg(xml == NULL, "IpcAdapter:IpcAdapter", " configuration XML not provided"); -86:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 86 -86:3DEF=condDebugMsg(xml != NULL, "IpcAdapter:IpcAdapter", " configuration XML = " << xml); - -87MSG=:IpcAdapter:executeCommand -COMMENT= -87:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 423 -87:1DEF=debugMsg("IpcAdapter:executeCommand"," SendMessage(\"" << *theMessage << "\")"); -87:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 429 -87:2DEF=debugMsg("IpcAdapter:executeCommand", " message \"" << *theMessage << "\" sent."); -87:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 452 -87:3DEF=debugMsg("IpcAdapter:executeCommand"," SendReturnValue(sender_serial:\"" << serial << "\" \"" << front_string << "\")"); -87:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 461 -87:4DEF=debugMsg("IpcAdapter:executeCommand", " return value sent."); -87:5SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 482 -87:5DEF=debugMsg("IpcAdapter:executeCommand", " message handler for \"" << *theMessage << "\" registered."); -87:6SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 504 -87:6DEF=debugMsg("IpcAdapter:executeCommand", " message handler for \"" << msgName << "\" registered."); -87:7SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 537 -87:7DEF=debugMsg("IpcAdapter:executeCommand", " message handler for \"" << msgName << "\" registered."); -87:8SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 571 -87:8DEF=debugMsg("IpcAdapter:executeCommand", " for \"" << name << "\""); -87:9SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 574 -87:9DEF=debugMsg("IpcAdapter:executeCommand", " first parameter is \""<< args.front()<< "\""); -87:10SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 597 -87:10DEF=debugMsg("IpcAdapter:executeCommand", " command \"" << name << "\" sent."); - -88MSG=:IpcAdapter:handleCommandSequence -COMMENT= -88:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 769 -88:1DEF=debugMsg("IpcAdapter:handleCommandSequence"," adding \"" << header->stringValue << "\" to the command queue"); - -89MSG=:IpcAdapter:handleIpcMessage -COMMENT= -89:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 921 -89:1DEF=debugMsg("IpcAdapter:handleIpcMessage", " ignoring my own outgoing message"); -89:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 926 -89:2DEF=debugMsg("IpcAdapter:handleIpcMessage", " received message type = " << msgType); -89:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 948 -89:3DEF=debugMsg("IpcAdapter:handleIpcMessage", " processing as command"); -89:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 957 -89:4DEF=debugMsg("IpcAdapter:handleIpcMessage", " processing as message"); -89:5SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 976 -89:5DEF=debugMsg("IpcAdapter:handleIpcMessage", " processing as return value"); - -90MSG=:IpcAdapter:handleLookupNow -COMMENT= -90:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 883 -90:1DEF=debugMsg("IpcAdapter:handleLookupNow", " received message. processing as LookupNow"); -90:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 889 -90:2DEF=debugMsg("IpcAdapter:handleLookupNow"," undefined external lookup \"" << msg->stringValue << "\", discarding"); -90:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 893 -90:3DEF=debugMsg("IpcAdapter:handleLookupNow", " Publishing value of external lookup \"" << msg->stringValue<< "\" with internal value '" << (*it).second << "'"); - -91MSG=:IpcAdapter:handleReturnValuesSequence -COMMENT= -91:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 815 -91:1DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," processing value(s) for a pending LookupNow"); -91:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 827 -91:2DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," processing value(s) for an active LookupOnChange"); -91:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 844 -91:3DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," ignoring command handle value for inactive command"); -91:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 849 -91:4DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," processing command acknowledgment for command " << cmd->getName()); -91:5SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 861 -91:5DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," ignoring return value for inactive command"); -91:6SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 866 -91:6DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," processing command return value for command " << cmd->getName()); -91:7SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 873 -91:7DEF=debugMsg("IpcAdapter:handleReturnValuesSequence"," no lookup or command found for sequence"); - -92MSG=:IpcAdapter:handleTelemetryValuesSequence -COMMENT= -92:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 790 -92:1DEF=debugMsg("IpcAdapter:handleTelemetryValuesSequence"," separator character or state name missing, ignoring"); -92:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 795 -92:2DEF=debugMsg("IpcAdapter:handleTelemetryValuesSequence"," state \"" << stateName << "\" found, processing"); - -93MSG=:IpcAdapter:initialize -COMMENT= -93:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 104 -93:1DEF=debugMsg("IpcAdapter:initialize", " called"); -93:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 134 -93:2DEF=debugMsg("IpcAdapter:initialize"," Connecting module " << taskName <<" to central server at " << serverName); -93:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 145 -93:3DEF=debugMsg("IpcAdapter:initialize", " succeeded"); - -94MSG=:IpcAdapter:invokeAbort -COMMENT= -94:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 365 -94:1DEF=debugMsg("IpcAdapter:invokeAbort", "Aborting command listener " << *theMessage << std::endl); - -95MSG=:IpcAdapter:lookupNow -COMMENT= -95:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 203 -95:1DEF=debugMsg("IpcAdapter:lookupNow"," returning external lookup " << state.name()<< " with internal value " << it->second); -95:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 212 -95:2DEF=debugMsg("IpcAdapter:lookupNow"," for state " << stateName<< " with " << nParams << " parameters"); - -96MSG=:IpcAdapter:parseExternalLookups -COMMENT= -96:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 616 -96:1DEF=debugMsg("IpcAdapter:parseExternalLookups","External Lookup: name=\"" << nameAttr.value()<< "\" type=\"" << typeAttr.value()<< "\" default=\"" << defAttr.value() << "\""); - -97MSG=:IpcAdapter:shutdown -COMMENT= -97:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 189 -97:1DEF=debugMsg("IpcAdapter:shutdown", " succeeded"); - -98MSG=:IpcAdapter:start -COMMENT= -98:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 157 -98:1DEF=debugMsg("IpcAdapter:start", " spawned IPC dispatch thread"); -98:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 159 -98:2DEF=debugMsg("IpcAdapter:start", " succeeded"); - -99MSG=:IpcAdapter:stop -COMMENT= -99:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 170 -99:1DEF=debugMsg("IpcAdapter:stop", " succeeded"); - -100MSG=:IpcAdapter:subscribe -100:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 254 -100:1DEF=debugMsg("IpcAdapter:subscribe"," for state " << state); - -101MSG=:IpcAdapter:unsubscribe -101:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 269 -101:1DEF=debugMsg("IpcAdapter:unsubscribe"," for state " << state); -101:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/IpcAdapter.cc : 279 -101:2DEF=debugMsg("IpcAdapter:unsubscribe", " completed"); - -102MSG=:IpcCommRelay:lookupNow -102:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 125 -102:1DEF=debugMsg("IpcCommRelay:lookupNow", " for " << stateName); -102:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 127 -102:2DEF=debugMsg("IpcCommRelay:lookupNow"," ignoring parameters for state \"" << stateName << "\""); -102:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 133 -102:3DEF=debugMsg("IpcCommRelay:lookupNow", " sending response for " << stateName); -102:4SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 136 -102:4DEF=debugMsg("IpcCommRelay:lookupNow", " " << stateName << " not found, returning UNKNOWN"); - -103MSG=:IpcCommRelay:sendResponse -103:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 108 -103:1DEF=debugMsg("IpcCommRelay:sendResponse", " completed"); -103:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 86 -103:2DEF=debugMsg("IpcCommRelay:sendResponse"," sending " << values.size() << " return value(s) for "<< ((respMsg->getMessageType() == MSG_COMMAND) ? "command" : "lookup")<< " \"" << respMsg->getName() << "\""); -103:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 97 -103:3DEF=debugMsg("IpcCommRelay:sendResponse"," sending telemetry message for \"" << respMsg->getName() << "\""); - -104MSG=:IpcFacade::cacheMessageTrailer -104:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 1032 -104:1DEF=debugMsg("IpcFacade::cacheMessageTrailer"," no existing sequence for sender "<< msgData->senderUID << ", serial " << msgData->serial << ", ignoring"); - -105MSG=:IpcFacade::shutdown -105:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 512 -105:1DEF=debugMsg("IpcFacade::shutdown", "locking mutex"); - -106MSG=:IpcFacade:cacheMessageLeader -106:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 1011 -106:1DEF=debugMsg("IpcFacade:cacheMessageLeader", " count == 0, processing immediately"); -106:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 1015 -106:2DEF=debugMsg("IpcFacade:cacheMessageLeader"," storing leader with sender " << msgData->senderUID << ", serial " << msgData->serial<< ",\n expecting " << msgData->count << " values"); - -107MSG=:IpcFacade:definePlexilIPCMessageTypes -107:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 819 -107:1DEF=debugMsg("IpcFacade:definePlexilIPCMessageTypes", " entered"); -107:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 903 -107:2DEF=condDebugMsg(status == IPC_OK, "IpcFacade:definePlexilIPCMessageTypes", " succeeded"); - -108MSG=:IpcFacade:generateUID -108:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 1105 -108:1DEF=debugMsg("IpcFacade:generateUID", " generated UUID " << s.str()); - -109MSG=:IpcFacade:initialize -109:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 403 -109:1DEF=debugMsg("IpcFacade:initialize", " already done, returning"); -109:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 411 -109:2DEF=debugMsg("IpcFacade:initialize", " locking mutex"); -109:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 417 -109:3DEF=debugMsg("IpcFacade:initialize", " calling IPC_initialize()"); -109:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 420 -109:4DEF=debugMsg("IpcFacade:initialize", " IPC_initialize() failed, IPC_errno = " << IPC_errno); -109:5SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 425 -109:5DEF=debugMsg("IpcFacade:initialize", " calling IPC_connectModule()"); -109:6SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 429 -109:6DEF=debugMsg("IpcFacade:initialize", " IPC_connectModule() failed, IPC_errno = " << IPC_errno); -109:7SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 434 -109:7DEF=debugMsg("IpcFacade:initialize", " defining message types"); -109:8SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 441 -109:8DEF=condDebugMsg(result == IPC_OK, "IpcFacade:initialize", " defining message types failed"); -109:9SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 446 -109:9DEF=debugMsg("IpcFacade:initialize", " succeeded"); - -110MSG=:IpcFacade:messageHandler -110:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 941 -110:1DEF=debugMsg("IpcFacade:messageHandler", " received message type = " << msgType); -110:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 952 -110:2DEF=debugMsg("IpcFacade:messageHandler", "processing as multi-part message"); -110:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 960 -110:3DEF=debugMsg("IpcFacade:messageHandler", " processing as return value"); -110:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 989 -110:4DEF=debugMsg("IpcFacade:messageHandler", "Received single-message type, delivering to listeners"); - -111MSG=:IpcFacade:myIpcDispatch -111:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 915 -111:1DEF=debugMsg("IpcFacade:myIpcDispatch", " started"); -111:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 924 -111:2DEF=debugMsg("IpcFacade:myIpcDispatch", " terminated"); - -112MSG=:IpcFacade:publishCommand -112:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 642 -112:1DEF=debugMsg("IpcFacade:publishCommand", "Command " << command << " published with serial " << serial); - -113MSG=:IpcFacade:publishTelemetry -113:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 692 -113:1DEF=debugMsg("IpcFacade:publishTelemetry"," sending telemetry message for \"" << destName << "\""); - -114MSG=:IpcFacade:start -114:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 460 -114:1DEF=debugMsg("IpcFacade:start", " locking mutex"); -114:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 465 -114:2DEF=debugMsg("IpcFacade:start", " subscribing to messages"); -114:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 470 -114:3DEF=debugMsg("IpcFacade:start", " spawning IPC dispatch thread"); -114:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 472 -114:4DEF=debugMsg("IpcFacade:start", " succeeded"); - -115MSG=:IpcFacade:stop -115:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 488 -115:1DEF=debugMsg("IpcFacade:stop", " locking mutex"); -115:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 492 -115:2DEF=debugMsg("IpcFacade:stop", " cancelling dispatch thread"); -115:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 499 -115:3DEF=debugMsg("IpcFacade:stop", " unsubscribing from messages"); - -116MSG=:IpcFacade:subscribeDataCentral -116:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 1133 -116:1DEF=debugMsg("IpcFacade:subscribeDataCentral", " for message name \"" << msgName << "\""); -116:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 1141 -116:2DEF=condDebugMsg(result != IPC_OK,"IpcFacade:subscribeDataCentral", " for message name \"" << msgName << "\" failed, IPC_errno = " << IPC_errno); - -117MSG=:IpcFacade:unsubscribeAll -117:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 563 -117:1DEF=debugMsg("IpcFacade:unsubscribeAll", " entered"); -117:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 566 -117:2DEF=debugMsg("IpcFacade:unsubscribeAll", " succeeded"); - -118MSG=:IpcFacade -118:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 374 -118:1DEF=debugMsg("IpcFacade", " constructor"); -118:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 378 -118:2DEF=debugMsg("IpcFacade", " destructor"); -118:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 387 -118:3DEF=debugMsg("IpcFacade", " destructor: unlocking mutex"); - -119MSG=:IpcRobotAdapter:IpcRobotAdapter -119:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/IpcCommRelay.cc : 58 -119:1DEF=debugMsg("IpcRobotAdapter:IpcRobotAdapter", " succeeded"); - -120MSG=:IpcUtil:stop -120:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 496 -120:1DEF=debugMsg("IpcUtil:stop", "Error in pthread_join; errno = " << myErrno); - -121MSG=:JNIHelper:getClassClass -121:1SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 78 -121:1DEF=debugMsg("JNIHelper:getClassClass", " fetching Class class"); - -122MSG=:JNIHelper:getClassName -122:1SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 122 -122:1DEF=debugMsg("JNIHelper:getClassName", " fetching Class.getName() method"); - -123MSG=:JNIHelper:isArrayClass -123:1SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 103 -123:1DEF=debugMsg("JNIHelper:isArrayClass", " fetching Class.isArray() method"); -123:2SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 107 -123:2DEF=debugMsg("JNIHelper:isArrayClass", " calling Class.isArray()"); -123:3SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 109 -123:3DEF=debugMsg("JNIHelper:isArrayClass", " returning " << (result ? "true" : "false")); - -124MSG=:JNIHelper -124:1SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 42 -124:1DEF=debugMsg("JNIHelper"," constructor, "<< (m_previous == NULL ? "no previous instance" : " reentrant call")); -124:2SRC=/Users/cfry/src/plexil-4/src/utils/JNIHelper.cc : 53 -124:2DEF=debugMsg("JNIHelper"," destructor, "<< (m_previous == NULL ? "stack empty" : " restoring previous instance")); - -125MSG=:JNIUtils:getArgcArgv -125:1SRC=/Users/cfry/src/plexil-4/src/utils/JNIUtils.cc : 109 -125:1DEF=debugMsg("JNIUtils:getArgcArgv", "GetObjectArrayElement returned NULL"); - -126MSG=:LibraryCallNode:~LibraryCallNode -126:1SRC=/Users/cfry/src/plexil-4/src/exec/LibraryCallNode.cc : 59 -126:1DEF=debugMsg("LibraryCallNode:~LibraryCallNode", " destructor for " << m_nodeId); - -127MSG=:ListNode:cleanUpChildConditions -127:1SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 400 -127:1DEF=debugMsg("ListNode:cleanUpChildConditions", " for " << m_nodeId); - -128MSG=:ListNode:cleanUpConditions -128:1SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 381 -128:1DEF=debugMsg("ListNode:cleanUpConditions", " for " << m_nodeId); - -129MSG=:ListNode:cleanUpNodeBody -129:1SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 390 -129:1DEF=debugMsg("ListNode:cleanUpNodeBody", " for " << m_nodeId); - -130MSG=:ListNode:~ListNode -130:1SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 369 -130:1DEF=debugMsg("ListNode:~ListNode", " destructor for " << m_nodeId); - -131MSG=:LookupOnChange:handleActivate -131:1SRC=/Users/cfry/src/plexil-4/src/intfc/Lookup.cc : 499 -131:1DEF=debugMsg("LookupOnChange:handleActivate", " called"); - -132MSG=:LookupOnChange:handleDeactivate -132:1SRC=/Users/cfry/src/plexil-4/src/intfc/Lookup.cc : 510 -132:1DEF=debugMsg("LookupOnChange:handleDeactivate", " called"); - -133MSG=:LookupOnChange:setThresholds -133:1SRC=/Users/cfry/src/plexil-4/src/intfc/Lookup.cc : 417 -133:1DEF=debugMsg("LookupOnChange:setThresholds", " entered"); - -134MSG=:LookupOnChange -134:1SRC=/Users/cfry/src/plexil-4/src/intfc/Lookup.cc : 472 -134:1DEF=debugMsg("LookupOnChange", " constructor"); - -135MSG=:LuvListener:initialize -135:1SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 108 -135:1DEF=debugMsg("LuvListener:initialize"," no " << LUV_HOSTNAME_ATTR()<< " attribute found, using default host " << LUV_DEFAULT_HOSTNAME()); -135:2SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 121 -135:2DEF=debugMsg("LuvListener:initialize"," no " << LUV_PORT_ATTR()<< " attribute found, using default port " << LUV_DEFAULT_PORT()); -135:3SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 134 -135:3DEF=debugMsg("LuvListener:initialize"," no " << LUV_BLOCKING_ATTR()<< " attribute found, using default \"false\""); -135:4SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 145 -135:4DEF=debugMsg("LuvListener:initialize"," no " << IGNORE_CONNECT_FAILURE_ATTR()<< " attribute found, using default \"true\""); - -136MSG=:LuvListener:sendMessage -136:1SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 343 -136:1DEF=debugMsg("LuvListener:sendMessage", " sending:\n" << msg); - -137MSG=:LuvListener:start -137:1SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 302 -137:1DEF=debugMsg("LuvListener:start"," opening client socket to host " << host << ", port " << port); -137:2SRC=/Users/cfry/src/plexil-4/src/interfaces/LuvListener/LuvListener.cc : 307 -137:2DEF=debugMsg("LuvListener:start"," socket error: " << e.description()); - -138MSG=:MessageQueueMap:addMessage -138:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 104 -138:1DEF=debugMsg("MessageQueueMap:addMessage", " Message \"" << pq->m_name.c_str() << "\" added"); -138:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 120 -138:2DEF=debugMsg("MessageQueueMap:addMessage"," Message \"" << pq->m_name.c_str() << "\" added, value = \"" << param << "\""); -138:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 104 -138:3DEF=debugMsg("MessageQueueMap:addMessage", " Message \"" << pq->m_name.c_str() << "\" added"); -138:4SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 120 -138:4DEF=debugMsg("MessageQueueMap:addMessage"," Message \"" << pq->m_name.c_str() << "\" added, value = \"" << param << "\""); - -139MSG=:MessageQueueMap:addRecipient -139:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 59 -139:1DEF=debugMsg("MessageQueueMap:addRecipient", " entered for \"" << message.c_str() << "\""); -139:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 64 -139:2DEF=debugMsg("MessageQueueMap:addRecipient", " recipient for message \"" << que->m_name.c_str() << "\" added"); -139:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 59 -139:3DEF=debugMsg("MessageQueueMap:addRecipient", " entered for \"" << message.c_str() << "\""); -139:4SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 64 -139:4DEF=debugMsg("MessageQueueMap:addRecipient", " recipient for message \"" << que->m_name.c_str() << "\" added"); - -140MSG=:MessageQueueMap:getQueue -140:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 154 -140:1DEF=debugMsg("MessageQueueMap:getQueue", " creating new queue with name \"" << message.c_str() << "\""); -140:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 154 -140:2DEF=debugMsg("MessageQueueMap:getQueue", " creating new queue with name \"" << message.c_str() << "\""); - -141MSG=:MessageQueueMap:removeRecipient -141:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 75 -141:1DEF=debugMsg("MessageQueueMap:removeRecipient", " Removing recipient for \"" << pq->m_name.c_str() << "\""); -141:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 75 -141:2DEF=debugMsg("MessageQueueMap:removeRecipient", " Removing recipient for \"" << pq->m_name.c_str() << "\""); - -142MSG=:MessageQueueMap:updateQueue -142:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 167 -142:1DEF=debugMsg("MessageQueueMap:updateQueue", " entered"); -142:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 174 -142:2DEF=debugMsg("MessageQueueMap:updateQueue", " returning value"); -142:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcAdapter/MessageQueueMap.cc : 180 -142:3DEF=debugMsg("MessageQueueMap:updateQueue", " Message \"" << queue->m_name.c_str() << "\" paired and sent"); -142:4SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 167 -142:4DEF=debugMsg("MessageQueueMap:updateQueue", " entered"); -142:5SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 174 -142:5DEF=debugMsg("MessageQueueMap:updateQueue", " returning value"); -142:6SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/MessageQueueMap.cc : 180 -142:6DEF=debugMsg("MessageQueueMap:updateQueue", " Message \"" << queue->m_name.c_str() << "\" paired and sent"); - -143MSG=:Node:abort -143:1SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 322 -143:1DEF=debugMsg("Node:abort", "Aborting node " << m_nodeId); - -144MSG=:Node:checkConditions -144:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 475 -144:1DEF=debugMsg("Node:checkConditions","Checking condition change for node " << m_nodeId); -144:2SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 479 -144:2DEF=debugMsg("Node:checkConditions","Can (possibly) transition to " << nodeStateName(m_nextState)); - -145MSG=:Node:cleanUpConditions -145:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 342 -145:1DEF=debugMsg("Node:cleanUpConditions", " for " << m_nodeId); - -146MSG=:Node:cleanUpConds -146:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 356 -146:1DEF=debugMsg("Node:cleanUpConds","<" << m_nodeId << "> Removing condition " << getConditionName(i)); - -147MSG=:Node:cleanUpVars -147:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 380 -147:1DEF=debugMsg("Node:cleanUpVars", " for " << m_nodeId); -147:2SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 387 -147:2DEF=debugMsg("Node:cleanUpVars","<" << m_nodeId << "> Removing " << **it); - -148MSG=:Node:clock -148:1SRC=/Users/cfry/src/plexil-4/src/interfaces/PlanDebugListener/PlanDebugListener.cc : 55 -148:1DEF=condDebugMsg((nodeId->getState() == FINISHED_STATE),"Node:clock","Node '" << nodeId->getNodeId() <<"' finished at " << std::setprecision(15) <getCurrentStateStartTime() << " (" <getOutcome() << ")"); -148:2SRC=/Users/cfry/src/plexil-4/src/interfaces/PlanDebugListener/PlanDebugListener.cc : 61 -148:2DEF=condDebugMsg((nodeId->getState() == EXECUTING_STATE),"Node:clock","Node '" << nodeId->getNodeId() <<"' started at " << std::setprecision(15) <getCurrentStateStartTime()); - -149MSG=:Node:conditionChanged -149:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 467 -149:1DEF=debugMsg("Node:conditionChanged", " for node " << m_nodeId); -149:2SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 62 -149:2DEF=// debugMsg("Node:conditionChanged", " node " << m_node.getNodeId() << " from " << *src); - -150MSG=:Node:execute -150:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1492 -150:1DEF=debugMsg("Node:execute", "Executing node " << m_nodeId); - -151MSG=:Node:failure -151:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 557 -151:1DEF=condDebugMsg((m_state == FINISHED_STATE && m_outcome == FAILURE_OUTCOME),"Node:failure","Failure type of '" << m_nodeId <<"' is " << failureTypeName((FailureType) m_failureType)); - -152MSG=:Node:findLocalVariable -152:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1331 -152:1DEF=debugMsg("Node:findLocalVariable"," " << m_nodeId << " Returning " << it->second->toString()); -152:2SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1336 -152:2DEF=debugMsg("Node:findLocalVariable", " " << m_nodeId << " " << name << " not found"); - -153MSG=:Node:findVariable -153:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1315 -153:1DEF=debugMsg("Node:findVariable"," for node '" << m_nodeId<< "', searching by name for \"" << name << "\""); -153:2SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1320 -153:2DEF=debugMsg("Node:findVariable"," Returning " << result->toString()); - -154MSG=:Node:getDestState -154:1SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 144 -154:1DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state. Assignment node and assignment-complete false."); -154:2SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 153 -154:2DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. Assignment node and ANCESTOR_EXIT_CONDITION true."); -154:3SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 166 -154:3DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. Assignment node and EXIT_CONDITION true."); -154:4SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 179 -154:4DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. Assignment node and Ancestor invariant false."); -154:5SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 192 -154:5DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. Assignment node and Invariant false."); -154:6SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 207 -154:6DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: ITERATION_ENDED. Assignment node and End condition true."); -154:7SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 274 -154:7DEF=debugMsg("Node:getDestState"," '" << m_nodeId<< "' destination: no state. Assignment node and abort complete false."); -154:8SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 282 -154:8DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FINISHED. Assignment node, abort complete, and parent failed."); -154:9SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 289 -154:9DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FINISHED. Assignment node, abort complete, and parent exited."); -154:10SRC=/Users/cfry/src/plexil-4/src/exec/AssignmentNode.cc : 296 -154:10DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: ITERATION_ENDED. Assignment node and abort complete."); -154:11SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 218 -154:11DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and ancestor exit true."); -154:12SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 232 -154:12DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and exit true."); -154:13SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 246 -154:13DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and ancestor invariant false."); -154:14SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 260 -154:14DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and invariant false."); -154:15SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 273 -154:15DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination from EXECUTING: no state."); -154:16SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 279 -154:16DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FINISHING. Command node and end condition true."); -154:17SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 322 -154:17DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and ancestor exit true."); -154:18SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 336 -154:18DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and exit true."); -154:19SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 350 -154:19DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node and ancestor invariant false."); -154:20SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 364 -154:20DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FAILING. Command node, invariant false and end false or unknown."); -154:21SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 378 -154:21DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: ITERATION_ENDED. Command node and action complete true."); -154:22SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 393 -154:22DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination from FINISHING: no state."); -154:23SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 446 -154:23DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FINISHED. Command node abort complete, " <<"and parent failed."); -154:24SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 454 -154:24DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: FINISHED. Command node abort complete, " <<"and parent exited."); -154:25SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 462 -154:25DEF=debugMsg("Node:getDestState"," '" << m_nodeId <<"' destination: ITERATION_ENDED. Command node abort complete."); -154:26SRC=/Users/cfry/src/plexil-4/src/exec/CommandNode.cc : 470 -154:26DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state."); -154:27SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 502 -154:27DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and ANCESTOR_EXIT_CONDITION true."); -154:28SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 515 -154:28DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and EXIT_CONDITION true."); -154:29SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 528 -154:29DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and ANCESTOR_INVARIANT_CONDITION false."); -154:30SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 541 -154:30DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and INVARIANT_CONDITION false."); -154:31SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 553 -154:31DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state."); -154:32SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 558 -154:32DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHING. List node and END_CONDITION true."); -154:33SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 604 -154:33DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and ANCESTOR_EXIT_CONDITION true."); -154:34SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 617 -154:34DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and EXIT_CONDITION true."); -154:35SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 630 -154:35DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and ANCESTOR_INVARIANT_CONDITION false."); -154:36SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 643 -154:36DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FAILING. List node and INVARIANT_CONDITION false."); -154:37SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 660 -154:37DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: ITERATION_ENDED. List node " <<"and ALL_CHILDREN_WAITING_OR_FINISHED true."); -154:38SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 674 -154:38DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state. ALL_CHILDREN_WAITING_OR_FINISHED false or unknown."); -154:39SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 735 -154:39DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHED. "<<"List node, ALL_CHILDREN_WAITING_OR_FINISHED true and parent exited."); -154:40SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 742 -154:40DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHED. List node and ALL_CHILDREN_WAITING_OR_FINISHED" <<" true and parent failed."); -154:41SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 749 -154:41DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: ITERATION_ENDED. List node and "<< (this->getFailureType() == EXITED ? "self-exited" : "self-failure.")); -154:42SRC=/Users/cfry/src/plexil-4/src/exec/ListNode.cc : 757 -154:42DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state."); -154:43SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1032 -154:43DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHED. ANCESTOR_EXIT_CONDITION true."); -154:44SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1045 -154:44DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHED. ANCESTOR_INVARIANT false."); -154:45SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1058 -154:45DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHED. ANCESTOR_END true."); -154:46SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1070 -154:46DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state. ANCESTOR_END false or unknown and REPEAT unknown."); -154:47SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1075 -154:47DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: WAITING. REPEAT_CONDITION true."); -154:48SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1082 -154:48DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: FINISHED. REPEAT_CONDITION false."); -154:49SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1125 -154:49DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: INACTIVE. Parent state == WAITING."); -154:50SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1131 -154:50DEF=debugMsg("Node:getDestState"," '" << m_nodeId << "' destination: no state."); -154:51SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 492 -154:51DEF=debugMsg("Node:getDestState","Getting destination state for " << m_nodeId << " from state " <toString()); - -165MSG=:PlexilExec:addToResourceContention -165:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 275 -165:1DEF=debugMsg("PlexilExec:addToResourceContention","Adding node '" << node->getNodeId() << "' to resource contention."); - -166MSG=:PlexilExec:cycle -166:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 298 -166:1DEF=debugMsg("PlexilExec:cycle", "==>Start cycle " << cycleNum); -166:2SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 371 -166:2DEF=debugMsg("PlexilExec:cycle", "==>End cycle " << cycleNum); - -167MSG=:PlexilExec:deleteFinishedPlans -167:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 127 -167:1DEF=debugMsg("PlexilExec:deleteFinishedPlans"," deleting node \"" << node->getNodeId() << "\""); - -168MSG=:PlexilExec:handleConditionsChanged -168:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 166 -168:1DEF=debugMsg("PlexilExec:handleConditionsChanged","Node " << node->getNodeId() << " had a relevant condition change."); -168:2SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 169 -168:2DEF=debugMsg("PlexilExec:handleConditionsChanged","Considering node '" << node->getNodeId() << "' for state transition."); -168:3SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 177 -168:3DEF=debugMsg("PlexilExec:handleConditionsChanged","Node '" << node->getNodeId() <<"' is an assignment node that could be executing. Adding it to the " <<"resource contention list "); -168:4SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 186 -168:4DEF=debugMsg("PlexilExec:handleConditionsChanged","Node '" << node->getNodeId() <<"' is an assignment node that is failing, and is already in the " <<"resource contention list"); -168:5SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 203 -168:5DEF=debugMsg("PlexilExec:handleConditionsChanged","Node '" << node->getNodeId() <<"' is an assignment node that is no longer possibly executing. " <<"Removing it from resource contention."); -168:6SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 220 -168:6DEF=debugMsg("PlexilExec:handleConditionsChanged","Placing node '" << node->getNodeId() <<"' on the state change queue in position " << ++m_queuePos); - -169MSG=:PlexilExec:handleNeedsExecution -169:1SRC=/Users/cfry/src/plexil-4/src/exec/Node.cc : 1501 -169:1DEF=debugMsg("PlexilExec:handleNeedsExecution","Storing action for node '" << m_nodeId <<"' of type '" << nodeTypeString(this->getType()) <<"' to be executed."); - -170MSG=:PlexilExec:notifyNodeConditionChanged -170:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 153 -170:1DEF=debugMsg("PlexilExec:notifyNodeConditionChanged", " for node " << node->getNodeId()); - -171MSG=:PlexilExec:performAssignments -171:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 382 -171:1DEF=debugMsg("PlexilExec:performAssignments"," performing " << m_assignmentsToExecute.size() << " assignments and "<< m_assignmentsToRetract.size() << " retractions"); - -172MSG=:PlexilExec:printPlan -172:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 373 -172:1DEF=debugMsg("PlexilExec:printPlan", std::endl << **it); - -173MSG=:PlexilExec:resolveResourceConflicts -173:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 427 -173:1DEF=debugMsg("PlexilExec:resolveResourceConflicts"," Ignoring Assignments for variable '" << var->getName()<< "', which has a retraction pending"); -173:2SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 476 -173:2DEF=debugMsg("PlexilExec:resolveResourceConflicts","Node '" << nodeToExecute->getNodeId()<< "' has best priority. Adding it to be executed in position "<< ++m_queuePos); -173:3SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 484 -173:3DEF=condDebugMsg(nodeToExecute->getState() == EXECUTING_STATE|| nodeToExecute->getState() == FAILING_STATE,"PlexilExec:resolveResourceConflicts","Node for " << var->getName() << " already executing. Nothing to resolve."); - -174MSG=:PlexilExec:step -174:1SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 319 -174:1DEF=debugMsg("PlexilExec:step","[" << cycleNum << ":" << stepCount << "] State change queue: "<< stateChangeQueueStr()); -174:2SRC=/Users/cfry/src/plexil-4/src/exec/PlexilExec.cc : 332 -174:2DEF=debugMsg("PlexilExec:step","[" << cycleNum << ":" << stepCount << ":" << microStepCount <<"] Transitioning node " << node->getNodeId()<< " from " << node->getStateName()<< " to " << nodeStateName(node->getNextState())); - -175MSG=:PlexilSimResponseFactory:parse -175:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/PlexilSimulator/PlexilSimResponseFactory.cc : 87 -175:1DEF=debugMsg("PlexilSimResponseFactory:parse"," Returning new GenericResponse with " << returnValue.size() << " values"); - -176MSG=:PlexilSimulator -176:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/PlexilSimulator/PlexilSimulator.cc : 118 -176:1DEF=debugMsg("PlexilSimulator"," reading script " << *it); -176:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/PlexilSimulator/PlexilSimulator.cc : 123 -176:2DEF=debugMsg("PlexilSimulator"," reading telemetry script " << telemetryScriptName); - -177MSG=:RecursiveThreadMutex:lock -177:1SRC=/Users/cfry/src/plexil-4/src/utils/RecursiveThreadMutex.cc : 71 -177:1DEF=debugMsg("RecursiveThreadMutex:lock"," Re-locking mutex " << (void *) this << " from thread " << pthread_self() << " with count of " << m_lockCount + 1); -177:2SRC=/Users/cfry/src/plexil-4/src/utils/RecursiveThreadMutex.cc : 76 -177:2DEF=debugMsg("RecursiveThreadMutex:lock"," mutex " << (void *) this << " from thread " << pthread_self()); -177:3SRC=/Users/cfry/src/plexil-4/src/utils/RecursiveThreadMutex.cc : 85 -177:3DEF=debugMsg("RecursiveThreadMutex:lock"," thread " << pthread_self() << " acquired mutex " << (void *) this); - -178MSG=:RecursiveThreadMutex:unlock -178:1SRC=/Users/cfry/src/plexil-4/src/utils/RecursiveThreadMutex.cc : 102 -178:1DEF=debugMsg("RecursiveThreadMutex:unlock"," mutex " << (void *) this << " released by thread " << pthread_self()); -178:2SRC=/Users/cfry/src/plexil-4/src/utils/RecursiveThreadMutex.cc : 94 -178:2DEF=debugMsg("RecursiveThreadMutex:unlock"," mutex " << (void *) this << " from thread " << pthread_self() << " with count of " << m_lockCount); - -179MSG=:ResourceArbiterInterface:printAcceptedCommands -179:1SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 161 -179:1DEF=debugStmt("ResourceArbiterInterface:printAcceptedCommands",printAcceptedCommands(acceptCmds)); -179:2SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 469 -179:2DEF=debugMsg("ResourceArbiterInterface:printAcceptedCommands","Accepted command: " << name<< " uses resources:"); -179:3SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 475 -179:3DEF=debugMsg("ResourceArbiterInterface:printAcceptedCommands", resIter->name); - -180MSG=:ResourceArbiterInterface:printLockedResources -180:1SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 164 -180:1DEF=debugStmt("ResourceArbiterInterface:printLockedResources",printLockedResources()); -180:2SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 458 -180:2DEF=debugMsg("ResourceArbiterInterface:printLockedResources", it->first << ", " << it->second); - -181MSG=:ResourceArbiterInterface:printResourceCommandMap -181:1SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 154 -181:1DEF=debugStmt("ResourceArbiterInterface:printResourceCommandMap",printResourceCommandMap()); -181:2SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 432 -181:2DEF=debugMsg("ResourceArbiterInterface:printResourceCommandMap","Resource name: " << iter->first); -181:3SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 438 -181:3DEF=debugMsg("ResourceArbiterInterface:printResourceCommandMap","cmds: " << cmd->getName() << " uses the following resources"); -181:4SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 446 -181:4DEF=debugMsg("ResourceArbiterInterface:printResourceCommandMap","<" << res.name << "," << res.priority << "," << res.lowerBound<< "," << res.upperBound << ">"); - -182MSG=:ResourceArbiterInterface:printSortedCommands -182:1SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 156 -182:1DEF=debugStmt("ResourceArbiterInterface:printSortedCommands",printSortedCommands()); -182:2SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 422 -182:2DEF=debugMsg("ResourceArbiterInterface:printSortedCommands","CommandName: " << iter->second->getName()<< " Priority: " << iter->first); - -183MSG=:ResourceArbiterInterface:readResourceHierarchy -183:1SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 66 -183:1DEF=debugMsg("ResourceArbiterInterface:readResourceHierarchy", "The file: "<< fName << " does not exist. No resources read."); - -184MSG=:ResourceArbiterInterface:releaseResourcesForCommand -184:1SRC=/Users/cfry/src/plexil-4/src/intfc/ResourceArbiterInterface.cc : 256 -184:1DEF=debugMsg("ResourceArbiterInterface:releaseResourcesForCommand","remaining locked resources after releasing for command: " << cmdName); - -185MSG=:ResponseFactory::parse -185:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/ResponseFactory.cc : 60 -185:1DEF=debugMsg("ResponseFactory::parse"," Returning new GenericResponse of length " << returnVector.size()); - -186MSG=:ResponseMessageManager:addResponse -186:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/ResponseMessageManager.cc : 64 -186:1DEF=debugMsg("ResponseMessageManager:addResponse","Warning for " << m_Identifier<< ": Command index " << cmdIndex<< " has been repeated. Ignoring it."); - -187MSG=:ResponseMessageManager:getResponses -187:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/ResponseMessageManager.cc : 87 -187:1DEF=debugMsg("ResponseMessageManager:getResponses"," for " << m_Identifier << ": Getting default response"); -187:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/ResponseMessageManager.cc : 93 -187:2DEF=debugMsg("ResponseMessageManager:getResponses"," for " << m_Identifier << ": Using response for index " << m_Counter); -187:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/ResponseMessageManager.cc : 97 -187:3DEF=debugMsg("ResponseMessageManager:getResponses"," " << m_Identifier << ", count: " << m_Counter); - -188MSG=:ResponseMessageManager:scheduleInitialEvents -188:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/ResponseMessageManager.cc : 120 -188:1DEF=debugMsg("ResponseMessageManager:scheduleInitialEvents"," " << m_Identifier << " is a command manager, ignoring"); - -189MSG=:Simulator:constructNextResponse -189:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 284 -189:1DEF=debugMsg("Simulator:constructNextResponse"," No response manager for \"" << command << "\", ignoring."); -189:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 293 -189:2DEF=debugMsg("Simulator:constructNextResponse"," No more responses for \"" << command << "\""); - -190MSG=:Simulator:handleWakeUp -190:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 376 -190:1DEF=debugMsg("Simulator:handleWakeUp"," entered at "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(now)); -190:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 408 -190:2DEF=debugMsg("Simulator:handleWakeUp", " Sent response"); -190:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 430 -190:3DEF=debugMsg("Simulator:handleWakeUp"," Scheduling next wakeup at "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(nextWakeup)); -190:4SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 436 -190:4DEF=debugMsg("Simulator:handleWakeUp", " completed"); - -191MSG=:Simulator:scheduleMessage -191:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 335 -191:1DEF=debugMsg("Simulator:scheduleMessage"," scheduling message at "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(eventTime)); - -192MSG=:Simulator:scheduleNextResponse -192:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 353 -192:1DEF=debugMsg("Simulator:scheduleNextResponse", " Scheduling a timer"); -192:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 356 -192:2DEF=debugMsg("Simulator:scheduleNextResponse"," Timer set for "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(time)); -192:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 362 -192:3DEF=debugMsg("Simulator:scheduleNextResponse", " Immediate response required"); -192:4SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 367 -192:4DEF=debugMsg("Simulator:scheduleNextResponse"," A wakeup has already been scheduled for an earlier time."); - -193MSG=:Simulator:scheduleResponseForCommand -193:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 266 -193:1DEF=debugMsg("Simulator:scheduleResponseForCommand"," for : " << command); -193:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 272 -193:2DEF=debugMsg("Simulator:scheduleResponseForCommand","Not a command that needs a response."); - -194MSG=:Simulator:simulatorTopLevel -194:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 214 -194:1DEF=debugMsg("Simulator:simulatorTopLevel", " timing service received signal " << waitResult << ", exiting"); -194:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 220 -194:2DEF=debugMsg("Simulator:simulatorTopLevel", " stop request received"); -194:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 236 -194:3DEF=debugMsg("Simulator:simulatorTopLevel", " cleaning up"); - -195MSG=:Simulator:start -195:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 165 -195:1DEF=debugMsg("Simulator:start", " at "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(now)); -195:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 198 -195:2DEF=debugMsg("Simulator:start"," scheduling first event at "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(firstWakeup)); - -196MSG=:Simulator:stop -196:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 75 -196:1DEF=debugMsg("Simulator:stop", " called"); - -197MSG=:Simulator:~Simulator -197:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/Simulator.cc : 64 -197:1DEF=debugMsg("Simulator:~Simulator"," shutting down with " << m_Agenda.size() << " responses pending"); - -198MSG=:SimulatorScriptReader:ensureResponseMessageManager -198:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/SimulatorScriptReader.cc : 169 -198:1DEF=debugMsg("SimulatorScriptReader:ensureResponseMessageManager"," " << name << ", " << (telemetry ? "true" : "false")); -198:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/SimulatorScriptReader.cc : 174 -198:2DEF=debugMsg("SimulatorScriptReader:ensureResponseMessageManager"," " << name << " exists"); - -199MSG=:SimulatorScriptReader:readScript -199:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/SimulatorScriptReader.cc : 124 -199:1DEF=debugMsg("SimulatorScriptReader:readScript", " Read a new line for \"" << commandName<< "\", delay = " << delay); -199:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/SimulatorScriptReader.cc : 140 -199:2DEF=debugMsg("SimulatorScriptReader:readScript"," Command Index: " << commandIndex); - -200MSG=:TelemetryResponseManager:constructor -200:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TelemetryResponseManager.cc : 38 -200:1DEF=debugMsg("TelemetryResponseManager:constructor", " " << id); - -201MSG=:TelemetryResponseManager:scheduleInitialEvents -201:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TelemetryResponseManager.cc : 70 -201:1DEF=debugMsg("TelemetryResponseManager:scheduleInitialEvents", " entered"); -201:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TelemetryResponseManager.cc : 81 -201:2DEF=debugMsg("TelemetryResponseManager:scheduleInitialEvents"," scheduling telemetry message for \"" << m_Identifier << "\" at " << delay.tv_sec); - -202MSG=:Test:testOutput -202:1SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 158 -202:1DEF=debugMsg("Test:testOutput","Creating initial state " << getText(st, value)); -202:2SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 173 -202:2DEF=debugMsg("Test:testOutput","Processing event: " << st << " = " << value); -202:3SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 183 -202:3DEF=debugMsg("Test:testOutput","Sending command result " << getText(command, value)); -202:4SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 202 -202:4DEF=debugMsg("Test:testOutput","Sending command ACK " << getText(command, value)); -202:5SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 215 -202:5DEF=debugMsg("Test:testOutput","Sending abort ACK " << getText(command, value)); -202:6SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 221 -202:6DEF=debugMsg("Test:testOutput","Acknowledging abort into " << it->second); -202:7SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 230 -202:7DEF=debugMsg("Test:testOutput", "Sending update ACK " << name); -202:8SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 250 -202:8DEF=debugMsg("Test:testOutput","Sending plan from file " << elt.attribute("file").value()); -202:9SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 265 -202:9DEF=debugMsg("Test:testOutput", "Processing simultaneous event(s)"); -202:10SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 300 -202:10DEF=debugMsg("Test:testOutput", "End simultaneous event(s)"); -202:11SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 489 -202:11DEF=debugMsg("Test:testOutput", "Looking up immediately " << state); -202:12SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 492 -202:12DEF=debugMsg("Test:testOutput", "No state found. Setting UNKNOWN."); -202:13SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 496 -202:13DEF=debugMsg("Test:testOutput", "Returning value " << value); -202:14SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 502 -202:14DEF=debugMsg("Test:testOutput","Registering change lookup for " << state); -202:15SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 532 -202:15DEF=debugMsg("Test:testOutput", "Executing " << command <<" into " <<(dest ? dest->toString() : std::string("noId")) <<" with ack " << ack->toString()); -202:16SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 572 -202:16DEF=debugMsg("Test:testOutput", "Aborting " << command); -202:17SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 578 -202:17DEF=debugMsg("Test:testOutput", "Received update: "); -202:18SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 581 -202:18DEF=debugMsg("Test:testOutput", " " << pairIt->first << " => " << pairIt->second); -202:19SRC=/Users/cfry/src/plexil-4/src/exec/Assignment.cc : 115 -202:19DEF=debugMsg("Test:testOutput", "Assigning " << m_dest->toString() << " to " << m_value); -202:20SRC=/Users/cfry/src/plexil-4/src/exec/Assignment.cc : 122 -202:20DEF=debugMsg("Test:testOutput","Restoring previous value of " << m_dest->toString()); -202:21SRC=/Users/cfry/src/plexil-4/src/intfc/ExternalInterface.cc : 110 -202:21DEF=debugMsg("Test:testOutput","Permission to execute " << cmd->getName()<< " has been denied by the resource arbiter."); - -203MSG=:Test:verboseTestOutput -203:1SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 270 -203:1DEF=//debugMsg("Test:verboseTestOutput", " Ignoring XML PCDATA"); -203:2SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/TestExternalInterface.cc : 87 -203:2DEF=// debugMsg("Test:verboseTestOutput", " Ignoring XML PCDATA"); - -204MSG=:TimeAdapter:deleteTimer -204:1SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 199 -204:1DEF=condDebugMsg(status != 0,"TimeAdapter:deleteTimer"," timer_delete failed, errno = " << errno); - -205MSG=:TimeAdapter:getCurrentTime -205:1SRC=/Users/cfry/src/plexil-4/src/app-framework/DarwinTimeAdapter.cc : 89 -205:1DEF=debugMsg("TimeAdapter:getCurrentTime", " returning " << std::setprecision(15) << tym); -205:2SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 94 -205:2DEF=debugMsg("TimeAdapter:getCurrentTime", " returning " << std::setprecision(15) << tym); - -206MSG=:TimeAdapter:setThresholds -206:1SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 193 -206:1DEF=debugMsg("TimeAdapter:setThresholds", " setting wakeup at " << std::setprecision(15) << hi); -206:2SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 195 -206:2DEF=debugMsg("TimeAdapter:setThresholds"," timer set for " << hi); -206:3SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 199 -206:3DEF=debugMsg("TimeAdapter:setThresholds"," sending wakeup for missed timer at " << hi); - -207MSG=:TimeAdapter:setTimer -207:1SRC=/Users/cfry/src/plexil-4/src/app-framework/DarwinTimeAdapter.cc : 142 -207:1DEF=debugMsg("TimeAdapter:setTimer"," new value " << date << " is in past"); -207:2SRC=/Users/cfry/src/plexil-4/src/app-framework/DarwinTimeAdapter.cc : 150 -207:2DEF=debugMsg("TimeAdapter:setTimer"," timer set for " << date); -207:3SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 149 -207:3DEF=debugMsg("TimeAdapter:setTimer", " clock_gettime() failed, errno = " << errno); -207:4SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 158 -207:4DEF=debugMsg("TimeAdapter:setTimer"," new value " << std::setprecision(15) << date << " is in past, waking up Exec"); -207:5SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 169 -207:5DEF=debugMsg("TimeAdapter:setTimer"," timer set for " << std::setprecision(15) << date<< ", tv_nsec = " << tymrSpec.it_value.tv_nsec); - -208MSG=:TimeAdapter:start -208:1SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 133 -208:1DEF=debugMsg("TimeAdapter:start", " timer_create failed, errno = " << errno); -208:2SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 100 -208:2DEF=debugMsg("TimeAdapter:start", " timer initialization failed"); -208:3SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 95 -208:3DEF=debugMsg("TimeAdapter:start", " signal handling initialization failed"); - -209MSG=:TimeAdapter:stop -209:1SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 114 -209:1DEF=debugMsg("TimeAdapter:stop", " stopTimer() failed"); -209:2SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 118 -209:2DEF=debugMsg("TimeAdapter:stop", " deleteTimer() failed"); -209:3SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 129 -209:3DEF=debugMsg("TimeAdapter:stop", " complete"); - -210MSG=:TimeAdapter:stopTimer -210:1SRC=/Users/cfry/src/plexil-4/src/app-framework/DarwinTimeAdapter.cc : 164 -210:1DEF=condDebugMsg(status != 0,"TimeAdapter:stopTimer"," setitimer() failed, errno = " << errno); -210:2SRC=/Users/cfry/src/plexil-4/src/app-framework/PosixTimeAdapter.cc : 186 -210:2DEF=condDebugMsg(0 != status,"TimeAdapter:stopTimer"," timer_settime failed, errno = " << errno); - -211MSG=:TimeAdapter:subscribe -211:1SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 169 -211:1DEF=debugMsg("TimeAdapter:subscribe", " complete"); - -212MSG=:TimeAdapter:timerWaitThread -212:1SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 249 -212:1DEF=debugMsg("TimeAdapter:timerWaitThread", " exiting on signal " << signalReceived); - -213MSG=:TimeAdapter:unsubscribe -213:1SRC=/Users/cfry/src/plexil-4/src/app-framework/TimeAdapter.cc : 179 -213:1DEF=debugMsg("TimeAdapter:unsubscribe", " complete"); - -214MSG=:Time -214:1SRC=/Users/cfry/src/plexil-4/src/apps/TestExec/ExecTestRunner.cc : 353 -214:1DEF=debugMsg("Time", "Time spent in execution: " << clock() - time); - -215MSG=:TimingService:defaultInitializeSignalHandling -215:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 138 -215:1DEF=condDebugMsg(errnum != 0,"TimingService:defaultInitializeSignalHandling"," initializeSignalHandling failed, result = " << errnum); - -216MSG=:TimingService:getTimer -216:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 212 -216:1DEF=debugMsg("TimingService:getTimer", " timer is not set"); -216:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 223 -216:2DEF=debugMsg("TimingService:getTimer"," timer set for "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(result)); - -217MSG=:TimingService:initializeSignalHandling -217:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 102 -217:1DEF=debugMsg("TimingService:initializeSignalHandling", " sigprocmask returned " << errnum); -217:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 117 -217:2DEF=debugMsg("TimingService:initializeSignalHandling", " sigaction returned " << errnum); -217:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 122 -217:3DEF=debugMsg("TimingService:initializeSignalHandling", " complete"); -217:4SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 77 -217:4DEF=debugMsg("TimingService:initializeSignalHandling", " sigemptyset returned " << errnum); -217:5SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 87 -217:5DEF=debugMsg("TimingService:initializeSignalHandling", " sigaddset returned " << errnum); -217:6SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 95 -217:6DEF=debugMsg("TimingService:initializeSignalHandling", " sigaddset returned " << errnum); - -218MSG=:TimingService:restoreSignalHandling -218:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 162 -218:1DEF=debugMsg("TimingService:restoreSignalHandling", " sigaction returned " << errnum); -218:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 170 -218:2DEF=debugMsg("TimingService:restoreSignalHandling", " complete"); - -219MSG=:TimingService:setTimer -219:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 186 -219:1DEF=debugMsg("TimingService:setTimer"," Not setting interval timer, requested time is in the past"); -219:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 194 -219:2DEF=debugMsg("TimingService:setTimer"," Set interval timer for "<< std::setiosflags(std::ios_base::fixed)<< timevalToDouble(myTimer.it_value)); - -220MSG=:TimingService:stopTimer -220:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 231 -220:1DEF=debugMsg("TimingService:stopTimer", " disabling timer"); - -221MSG=:TimingService:wait -221:1SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 245 -221:1DEF=debugMsg("TimingService:wait", " entered"); -221:2SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 255 -221:2DEF=debugMsg("TimingService:wait", " received timer wakeup"); -221:3SRC=/Users/cfry/src/plexil-4/src/apps/StandAloneSimulator/TimingService.cc : 259 -221:3DEF=debugMsg("TimingService:wait", " received non-timer signal " << theSignal); - -222MSG=:UdpAdapter:UdpAdapter(execInterface) -222:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 57 -222:1DEF=debugMsg("UdpAdapter:UdpAdapter(execInterface)", " called"); - -223MSG=:UdpAdapter:UdpAdapter -223:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 69 -223:1DEF=debugMsg("UdpAdapter:UdpAdapter", " Using " << xml.attribute("AdapterType").value()); - -224MSG=:UdpAdapter:buildUdpBuffer -224:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 770 -224:1DEF=debugMsg("UdpAdapter:buildUdpBuffer", " args.size()==" << args.size() << ", parameters.size()==" << msg.parameters.size()); - -225MSG=:UdpAdapter:executeCommand -225:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 161 -225:1DEF=debugMsg("UdpAdapter:executeCommand", " " << name); -225:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 176 -225:2DEF=//debugMsg("UdpAdapter:executeCommand", " " << name << " done."); - -226MSG=:UdpAdapter:executeDefaultCommand -226:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 244 -226:1DEF=debugMsg("UdpAdapter:executeDefaultCommand", " called for \"" << msgName << "\" with " << args.size() << " args"); -226:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 259 -226:2DEF=debugMsg("UdpAdapter:executeDefaultCommand", " sendUdpMessage returned " << status << " (bytes sent)"); - -227MSG=:UdpAdapter:executeGetParameterCommand -227:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 343 -227:1DEF=debugMsg("UdpAdapter:executeGetParameterCommand", " " << msgName); -227:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 351 -227:2DEF=//debugMsg("UdpAdapter:executeGetParameterCommand", " msgName==" << msgName << ", params==" << params); -227:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 373 -227:3DEF=debugMsg("UdpAdapter:executeGetParameterCommand", " message handler for \"" << cmd->getName() << "\" registered"); - -228MSG=:UdpAdapter:executeReceiveCommandCommand -228:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 279 -228:1DEF=debugMsg("UdpAdapter:executeReceiveCommandCommand", " called for " << msgName); -228:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 284 -228:2DEF=debugMsg("UdpAdapter:executeReceiveCommandCommand", " message handler for \"" << command << "\" registered"); - -229MSG=:UdpAdapter:executeReceiveUdpCommand -229:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 296 -229:1DEF=// debugMsg("UdpAdapter:executeReceiveUdpCommand", " " << command << ", dest==" << dest// << ", ack==" << ack << ", args.size()==" << args.size()); -229:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 300 -229:2DEF=// debugMsg("UdpAdapter:executeReceiveUdpCommand", " handler for \"" << command << "\" registered"); - -230MSG=:UdpAdapter:executeSendMessageCommand -230:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 398 -230:1DEF=debugMsg("UdpAdapter:executeSendMessageCommand", " SendMessage(\"" << theMessage << "\")"); -230:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 399 -230:2DEF=debugMsg("UdpAdapter:executeSendMessageCommand", " message \"" << theMessage << "\" sent."); - -231MSG=:UdpAdapter:executeSendReturnValueCommand -231:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 382 -231:1DEF=//debugMsg("UdpAdapter:executeSendReturnValueCommand", " called for " << std::string::c_str(args.front())); - -232MSG=:UdpAdapter:executeSendUdpMessageCommand -232:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 309 -232:1DEF=// debugMsg("UdpAdapter:executeSendUdpMessageCommand", " called for " << msgName); -232:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 322 -232:2DEF=// debugMsg("UdpAdapter:executeSendUdpMessageCommand", " sendUdpMessage returned " << status << " (bytes sent)"); - -233MSG=:UdpAdapter:formatMessageName -233:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 1024 -233:1DEF=debugMsg("UdpAdapter:formatMessageName", " returning " << ss.str()); - -234MSG=:UdpAdapter:handleUdpMessage -234:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 613 -234:1DEF=debugMsg("UdpAdapter:handleUdpMessage", " called for " << msgDef->name); -234:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 620 -234:2DEF=debugMsg("UdpAdapter:handleUdpMessage", " adding \"" << msgDef->name << "\" to the command queue"); -234:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 654 -234:3DEF=debugMsg("UdpAdapter:handleUdpMessage", " queueing numeric (integer) parameter " << num); -234:4SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 667 -234:4DEF=debugMsg("UdpAdapter:handleUdpMessage", " queueing numeric (integer) array " << array.toString()); -234:5SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 675 -234:5DEF=debugMsg("UdpAdapter:handleUdpMessage", " queueing numeric (real) parameter " << num); -234:6SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 688 -234:6DEF=debugMsg("UdpAdapter:handleUdpMessage", " queueing numeric (real) array " << array.toString()); -234:7SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 704 -234:7DEF=debugMsg("UdpAdapter:handleUdpMessage", " queueing numeric (boolean) parameter " << num); -234:8SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 724 -234:8DEF=debugMsg("UdpAdapter:handleUdpMessage", " queueing boolean array " << array.toString()); -234:9SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 736 -234:9DEF=debugMsg("UdpAdapter:handleUdpMessage", " queuing string array " << array.toString()); -234:10SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 744 -234:10DEF=debugMsg("UdpAdapter:handleUdpMessage", " queuing string parameter \"" << str << "\""); - -235MSG=:UdpAdapter:initialize -235:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 81 -235:1DEF=debugMsg("UdpAdapter:initialize", " called"); -235:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 93 -235:2DEF=debugMsg("UdpAdapter:initialize", " done"); - -236MSG=:UdpAdapter:invokeAbort -236:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 198 -236:1DEF=debugMsg("UdpAdapter:invokeAbort", " called for " << cmdName); -236:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 212 -236:2DEF=debugMsg("UdpAdapter:invokeAbort", " " << msgName << " listener thread (" << thread->second << ") cancelled"); -236:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 223 -236:3DEF=debugMsg("UdpAdapter:invokeAbort", " " << msgName << " socket (" << socket->second << ") closed"); - -237MSG=:UdpAdapter:lookupNow -237:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 141 -237:1DEF=debugMsg("UdpAdapter:lookupNow", " called"); - -238MSG=:UdpAdapter:reset -238:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 116 -238:1DEF=debugMsg("UdpAdapter:reset", " called"); - -239MSG=:UdpAdapter:sendPlannerUpdate -239:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 148 -239:1DEF=debugMsg("UdpAdapter:sendPlannerUpdate", " called"); - -240MSG=:UdpAdapter:sendUdpMessage -240:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 755 -240:1DEF=debugMsg("UdpAdapter:sendUdpMessage", " sending " << msg.len << " bytes to " << msg.peer << ":" << msg.peer_port); - -241MSG=:UdpAdapter:shutdown -241:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 123 -241:1DEF=debugMsg("UdpAdapter:shutdown", " called"); - -242MSG=:UdpAdapter:start() -242:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 100 -242:1DEF=debugMsg("UdpAdapter:start()", " called"); - -243MSG=:UdpAdapter:startUdpMessageReceiver -243:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 556 -243:1DEF=debugMsg("UdpAdapter:startUdpMessageReceiver"," entered for " << name); -243:2SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 571 -243:2DEF=debugMsg("UdpAdapter:startUdpMessageReceiver", " " << name << " socket (" << sock << ") opened"); -243:3SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 578 -243:3DEF=debugMsg("UdpAdapter:startUdpMessageReceiver"," " << name << " listener thread (" << thread_handle << ") spawned"); - -244MSG=:UdpAdapter:stop -244:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 108 -244:1DEF=debugMsg("UdpAdapter:stop", " called"); - -245MSG=:UdpAdapter:subscribe -245:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 129 -245:1DEF=debugMsg("UdpAdapter:subscribe", " called"); - -246MSG=:UdpAdapter:unsubscribe -246:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 135 -246:1DEF=debugMsg("UdpAdapter:unsubscribe", " called"); - -247MSG=:UdpAdapter:waitForUdpMessage -247:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 588 -247:1DEF=debugMsg("UdpAdapter:waitForUdpMessage", " called for " << msg->name); - -248MSG=:UdpAdapter:~UdpAdapter -248:1SRC=/Users/cfry/src/plexil-4/src/interfaces/UdpAdapter/UdpAdapter.cc : 75 -248:1DEF=debugMsg("UdpAdapter:~UdpAdapter", " called"); - -249MSG=:UnitTest:actionExecutingTransition -249:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1281 -249:1DEF=debugMsg("UnitTest:actionExecutingTransition","Testing Command with"<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " end = " << values[end]); -249:2SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1511 -249:2DEF=debugMsg("UnitTest:actionExecutingTransition","Testing Command with"<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " action complete = " << values[actionComplete]<< " post = " << values[post]); -249:3SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1661 -249:3DEF=debugMsg("UnitTest:actionExecutingTransition","Testing Update with"<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " end = " << values[end]<< " post = " << values[post]); - -250MSG=:UnitTest:bindingExecutingTransition -250:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1036 -250:1DEF=debugMsg("UnitTest:bindingExecutingTransition","Testing " << ASSIGNMENT << " with"<< " action complete = " << values[actionComplete]<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " end = " << values[end]<< " post = " << values[post]); - -251MSG=:UnitTest:finishedTransition -251:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1401 -251:1DEF=debugMsg("UnitTest:finishedTransition","Testing Command with"<< " abort complete = " << values[abort]<< " failure type = " << failureTypes[failure]); -251:2SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1787 -251:2DEF=debugMsg("UnitTest:finishedTransition","Testing Update with"<< " action complete = " << values[actionComplete]<< " failure type = " << failureTypes[failure]); -251:3SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 550 -251:3DEF=debugMsg("UnitTest:finishedTransition","Testing node type " << types[i]<< " with parent state = " << nodeStateName(states[s])); - -252MSG=:UnitTest:inactiveDestTest -252:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 108 -252:1DEF=debugMsg("UnitTest:inactiveDestTest"," Node " << node->getNodeId()<< " Parent state: " << nodeStateName(states[s])<< " Dest: " << nodeStateName(destState)); - -253MSG=:UnitTest:inactiveTransTest -253:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 182 -253:1DEF=debugMsg("UnitTest:inactiveTransTest"," Node type " << types[i]<< " Parent state " << nodeStateName(states[s])<< " Node state " << nodeStateName(state)); - -254MSG=:UnitTest:iterationEndedTransition -254:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 449 -254:1DEF=debugMsg("UnitTest:iterationEndedTransition","Testing node type " << types[i] << " with "<< " ancestor exit = " << values[ancestorExit]<< " ancestor invariant = " << values[ancestorInvariant]<< " ancestor end = " << values[ancestorEnd]<< " repeat = " << values[repeat]); - -255MSG=:UnitTest:listExecutingTransition -255:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 643 -255:1DEF=debugMsg("UnitTest:listExecutingTransition","Testing ListNode with"<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " end = " << values[end]); - -256MSG=:UnitTest:listFailingTrans -256:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 1170 -256:1DEF=debugMsg("UnitTest:listFailingTrans","Testing with children waiting or finished = " << values[children]<< " failure type = " << failureType[failure]); -256:2SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 755 -256:2DEF=debugMsg("UnitTest:listFailingTrans","Testing with children waiting or finished = " << values[children]<< " failure type = " << failureType[i]); - -257MSG=:UnitTest:listFinishingDest -257:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 815 -257:1DEF=debugMsg("UnitTest:listFinishingDest","Testing NodeList with"<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " children waiting or finished = " << values[children]<< " post = " << values[post]<< "\n Got dest " << nodeStateName(destState)); - -258MSG=:UnitTest:listFinishingTrans -258:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 874 -258:1DEF=debugMsg("UnitTest:listFinishingTrans","Testing NodeList with"<< " ancestor exit = " << values[ancestorExit]<< " exit = " << values[exit]<< " ancestor invariant = " << values[ancestorInvariant]<< " invariant = " << values[invariant]<< " children waiting or finished = " << values[children]<< " post = " << values[post]); - -259MSG=:UnitTest:waitingDestTest -259:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 252 -259:1DEF=debugMsg("UnitTest:waitingDestTest"," ancestor exit = " << values[ancestorExit]<< " ancestor invariant = " << values[ancestorInvariant]<< " ancestor end = " << values[ancestorEnd]<< " skip = " << values[skip]<< " start = " << values[start]<< " pre = " << values[pre]<< "\n destination state is " << nodeStateName(destState)); - -260MSG=:UnitTest:waitingTransition -260:1SRC=/Users/cfry/src/plexil-4/src/exec/test/exec-test-module.cc : 320 -260:1DEF=debugMsg("UnitTest:waitingTransition","Testing node type " << types[i] << " with "<< " ancestor exit = " << values[ancestorExit]<< " ancestor invariant = " << values[ancestorInvariant]<< " ancestor end = " << values[ancestorEnd]<< " skip = " << values[skip]<< " start = " << values[start]<< " pre = " << values[pre]); - -261MSG=:UniversalExec -261:1SRC=/Users/cfry/src/plexil-4/src/universal-exec/UniversalExec.cc : 169 -261:1DEF=debugMsg("UniversalExec", " got configuration XML starting with " << configDoc.document_element().name()); - -262MSG=:Update:addPair -262:1SRC=/Users/cfry/src/plexil-4/src/intfc/Update.cc : 65 -262:1DEF=debugMsg("Update:addPair", " name = \"" << name << "\", exp = " << *exp); - -263MSG=:Update:fixValues -263:1SRC=/Users/cfry/src/plexil-4/src/intfc/Update.cc : 79 -263:1DEF=debugMsg("Update:fixValues"," fixing pair \"" << it->first << "\", "<< *it->second << " = " << it->second->toValue()); - -264MSG=:UpdateNode:cleanUpNodeBody -264:1SRC=/Users/cfry/src/plexil-4/src/exec/UpdateNode.cc : 100 -264:1DEF=debugMsg("UpdateNode:cleanUpNodeBody", " removing update for " << m_nodeId); - -265MSG=:UpdateNode:~UpdateNode -265:1SRC=/Users/cfry/src/plexil-4/src/exec/UpdateNode.cc : 87 -265:1DEF=debugMsg("UpdateNode:~UpdateNode", " destructor for " << m_nodeId); - -266MSG=:UtilityAdapter -266:1SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 44 -266:1DEF=debugMsg("UtilityAdapter", " created."); -266:2SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 51 -266:2DEF=debugMsg("UtilityAdapter", " initialized."); -266:3SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 57 -266:3DEF=debugMsg("UtilityAdapter", " started."); -266:4SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 63 -266:4DEF=debugMsg("UtilityAdapter", " stopped."); -266:5SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 69 -266:5DEF=debugMsg("UtilityAdapter", " reset."); -266:6SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 75 -266:6DEF=debugMsg("UtilityAdapter", " shut down."); -266:7SRC=/Users/cfry/src/plexil-4/src/app-framework/UtilityAdapter.cc : 82 -266:7DEF=debugMsg("UtilityAdapter", "Received executeCommand for " << name); - -267MSG=:constructPlexilValueMsg -267:1SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 157 -267:1DEF=debugMsg("constructPlexilValueMsg", "Boolean value is " << b); -267:2SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 166 -267:2DEF=debugMsg("constructPlexilValueMsg", "Integer value is " << intMsg->intValue); -267:3SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 175 -267:3DEF=debugMsg("constructPlexilValueMsg", "Real value is " << realMsg->doubleValue); -267:4SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 186 -267:4DEF=debugMsg("constructPlexilValueMsg", "String value is \"" << *sp << "\""); -267:5SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 216 -267:5DEF=debugMsg("constructPlexilValueMsg", "First parameter of Boolean array is " << (bool) boolArrayMsg->boolArray[0]); -267:6SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 233 -267:6DEF=debugMsg("constructPlexilValueMsg", "First parameter of Integer array is " << intArrayMsg->intArray[0]); -267:7SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 250 -267:7DEF=debugMsg("constructPlexilValueMsg", "First parameter of Real array is " << realArrayMsg->doubleArray[0]); -267:8SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 270 -267:8DEF=debugMsg("constructPlexilValueMsg","First parameter of String array is \"" << strArrayMsg->stringArray[0] << "\""); -267:9SRC=/Users/cfry/src/plexil-4/src/interfaces/IpcUtils/IpcFacade.cc : 285 -267:9DEF=debugMsg("constructPlexilValueMsg", " Unknown value"); - -268MSG=:createExpression -268:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/ExpressionFactory.cc : 94 -268:1DEF=debugMsg("createExpression", " name = " << name); -268:2SRC=/Users/cfry/src/plexil-4/src/xml-parser/ExpressionFactory.cc : 99 -268:2DEF=debugMsg("createExpression"," Created " << (wasCreated ? "" : "reference to ") << retval->toString()); - -269MSG=:finalizeAlias -269:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseLibraryCall.cc : 110 -269:1DEF=debugMsg("finalizeAlias"," caller " << node->getNodeId() << ", constructing alias " << name); - -270MSG=:finalizeLibraryCall -270:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseLibraryCall.cc : 129 -270:1DEF=debugMsg("finalizeLibraryCall", " caller " << node->getNodeId()); -270:2SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseLibraryCall.cc : 137 -270:2DEF=debugMsg("finalizeLibraryCall", " finalizing alias"); - -271MSG=:finalizeNode -271:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 696 -271:1DEF=debugMsg("finalizeNode", " node " << node->getNodeId()); -271:2SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 701 -271:2DEF=debugMsg("finalizeNode", " constructing variable initializers"); -271:3SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 711 -271:3DEF=debugMsg("finalizeNode", " linking interface variables"); -271:4SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 719 -271:4DEF=debugMsg("finalizeNode", " processing condition " << tag); -271:5SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 745 -271:5DEF=debugMsg("finalizeNode", " processing node body"); -271:6SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 787 -271:6DEF=debugMsg("finalizeNode", " for " << node->getNodeId() << " complete."); - -272MSG=:linkAndInitializeInterface -272:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 607 -272:1DEF=debugMsg("linkAndInitializeInterface", " node " << node->getNodeId()); - -273MSG=:linkInVar -273:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 479 -273:1DEF=debugMsg("linkInVar"," node " << node->getNodeId() << ", In variable " << name); -273:2SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 487 -273:2DEF=debugMsg("linkInVar", " found ancestor variable"); -273:3SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 496 -273:3DEF=debugMsg("linkInVar"," constructing read-only alias for ancestor variable " << name); -273:4SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 513 -273:4DEF=debugMsg("linkInVar", " no ancestor variable found"); -273:5SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 521 -273:5DEF=debugMsg("linkInVar", " constructing default value"); -273:6SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 538 -273:6DEF=debugMsg("linkInVar", " constructing read-only alias for default value"); - -274MSG=:main1 -274:1SRC=/Users/cfry/src/plexil-4/src/utils/test/util-test-module.cc : 255 -274:1DEF=debugMsg("main1", "done opening files"); - -275MSG=:main1a -275:1SRC=/Users/cfry/src/plexil-4/src/utils/test/util-test-module.cc : 256 -275:1DEF=condDebugMsg(std::cout.good(), "main1a", "std::cout is good"); - -276MSG=:main2 -276:1SRC=/Users/cfry/src/plexil-4/src/utils/test/util-test-module.cc : 258 -276:1DEF=debugMsg("main2", "primary testing done"); - -277MSG=:main2a -277:1SRC=/Users/cfry/src/plexil-4/src/utils/test/util-test-module.cc : 257 -277:1DEF=debugStmt("main2a", int s = 0; for (int i = 0; i < 5; i++) { s += i; } debugOutput << "Sum is " << s << '\n'; ); - -278MSG=:parseNode -278:1SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 243 -278:1DEF=debugMsg("parseNode", " of type " << typeAttr.value()); -278:2SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 259 -278:2DEF=debugMsg("parseNode", " parsing element " << tag); -278:3SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 386 -278:3DEF=debugMsg("parseNode", " constructing node"); -278:4SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 388 -278:4DEF=debugMsg("parseNode", " Node " << name << " created"); -278:5SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 405 -278:5DEF=debugMsg("parseNode", " parsing variable declarations"); -278:6SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 411 -278:6DEF=debugMsg("parseNode", " parsing interface declarations"); -278:7SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 416 -278:7DEF=debugMsg("parseNode", " constructing body"); -278:8SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 456 -278:8DEF=debugMsg("parseNode", " recovering from parse error, deleting node"); -278:9SRC=/Users/cfry/src/plexil-4/src/xml-parser/parseNode.cc : 460 -278:9DEF=debugMsg("parseNode", " done."); diff --git a/doc/DebugFlags.txt b/doc/DebugFlags.txt new file mode 100644 index 00000000..b0beb135 --- /dev/null +++ b/doc/DebugFlags.txt @@ -0,0 +1,21 @@ +This file is meant to document the PLEXIL debugging flags listed in +AllDebugFlags.cfg. It is under construction! + +Debug flag descriptions +----------------------- + +PlanDebug:candidates - reports every node which the Exec algorithm +identifies as a candidate to be evaluated for potential transition. + +PlanDebug:check - reports either that a node can transition now, that +it has potential conflicts which need to be evaluated, or that it is +actively blocked on such a conflict. + +PlanDebug:conflicts - reports on the conflict resolution logic, for +both assignment variables and mutexes. + +Notes +----- + +PlanDebug:transition is meant to be redundant with Node:transition, +because the latter was intended as an Exec developer debugging tool. diff --git a/doc/README b/doc/README index d829df3f..71c22bd4 100644 --- a/doc/README +++ b/doc/README @@ -1,72 +1,9 @@ -This directory contains two unrelated sets of files. +This directory supplements the PLEXIL User Guide found at: -1. Documentation of the debug flags used in PLEXIL source code. +https://plexil-group.github.io/plexil_docs/ - CompleteDebugFlags.cfg - a complete listing, automatically generated. - DebugFlagComments.txt - an annotated listing, source unknown. - DebugFlagDefinitions - a more detailed annotated listing, source unknown. +Current contents: -2. Scripts that collectively generate a PDF version of Plexil's documentation - wiki at plexil.sourceforge.net. Not sure if these scripts still work - (2/10/16) as they haven't been tried in a while, and the Sourceforge wiki - installation has changed. The remainder of this file documents these scripts. +AllDebugFlags.cfg - a complete listing of supported debugging flags. - -The PDF generator described in (2) above requires the following tools: - -htmldoc (http://www.htmldoc.org/software.php) - last working version: HTMLDOC 1.8.27 -bash - wget - sed - exec - -Related directory contents: - -docHtmlPull - main bash script to automate all features - also has feature to remove cleaned html and htmldoc template - -parse - sed script to clean links into usable formats based upon sourceforge - index - -PictureMan.book (generated file?) - configuration file for htmldoc to produce standardized pdf file - -process - sed script to remove extraneous details from html pages - - -Instructions ------------- - -First, do this: - -cd $PLEXIL_HOME/doc/ -./docHtmlPull - -Output file should be man.pdf - -To clean up, type: - -cd $PLEXIL_HOME/doc/ -./docHtmlPull clean - -This step: - - - Pulls all relevant links from Plexil sourceforge website index - - downloads relevant pages based upon index into sourceforge root folder - - builds pre-configured htmldoc template - - cleans links based upon names - - formats html files to build a usable index for dochtml in a clean folder - - configures a pre-configured htmldoc template - - passes html to htmldoc to produce PDF - - -CAVEAT: Wiki must NOT contain Level 1 entries, which confuse HtmlDoc. - -TODO: - Convert bad php links to useable links by hmtldoc as references witin PDF - simplify process sed script to use less lines of code (possibly using - functions and variables). +DebugFlags.txt - descriptions of the debugging flags. diff --git a/doc/docHtmlPull b/doc/docHtmlPull deleted file mode 100755 index 89fc0c5a..00000000 --- a/doc/docHtmlPull +++ /dev/null @@ -1,162 +0,0 @@ -#! /usr/bin/env bash - -# Copyright (c) 2006-2015, Universities Space Research Association (USRA). -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# * Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# * Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# * Neither the name of the Universities Space Research Association nor the -# names of its contributors may be used to endorse or promote products -# derived from this software without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY USRA ``AS IS'' AND ANY EXPRESS OR IMPLIED -# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -# DISCLAIMED. IN NO EVENT SHALL USRA BE LIABLE FOR ANY DIRECT, INDIRECT, -# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, -# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS -# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR -# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE -# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -cleanFld="clean" -bookTemplate="./PictureMan.book" -if [ "$1" = "clean" ]; then - if [ -d $cleanFld ]; then - rm $cleanFld -r - fi - if [ -e $bookTemplate ]; then - rm $bookTemplate - fi - echo "cleaned /$cleanFld and $bookTemplate" - exit 1 -fi - -parse="./parse" -if [ -e $parse ]; then - : -else - echo "$parse does not exists" - exit 1 -fi - -process="./process" -if [ -e $process ]; then - : -else - echo "$process does not exists" - exit 1 -fi - -if [ -e $bookTemplate ]; then - echo "Warning: Re-writing existing $bookTemplate" -fi - -echo '#HTMLDOC 1.8.27 --t pdf14 -f "plexil-manual.pdf" --book --toclevels 4 --no-numbered --toctitle "Table of Contents" --title --textcolor #000000 --linkstyle underline --size Universal --left 1.00in --right 0.50in --top 0.50in --bottom 0.50in --header .c. --header1 d.. --footer ..1 --nup 1 --tocheader .C. --tocfooter ..i --portrait --color --no-pscommands --no-xrxcomments --compression=1 --jpeg=90 --fontsize 11.0 --fontspacing 1.2 --headingfont Helvetica --bodyfont Times --headfootsize 11.0 --headfootfont Helvetica --charset iso-8859-1 --links --embedfonts --pagemode outline --pagelayout single --firstpage c1 --pageeffect none --pageduration 10 --effectduration 1.0 --no-encryption --permissions all --owner-password "" --user-password "" --browserwidth 680 --no-strict --no-overflow' > $bookTemplate - -wget -O intro -k http://plexil.sourceforge.net/wiki/index.php/Introduction - -touch plexil_links.txt -echo 'http://plexil.sourceforge.net/wiki/index.php/Introduction' >> plexil_links.txt - -sed -nf ./parse intro - -intro="./intro" -if [ -e $intro ]; then - rm intro -else - echo "$intro does not exists" -fi - -#wget -A.jpg -x --cut-dirs=12 -r -l1 -np -i plexil_links.txt -#wget -A.png -x --cut-dirs=12 -r -l1 -np -i plexil_links.txt -wget -x --convert-links --cut-dirs=12 -i plexil_links.txt -echo -echo -echo "----downloading completed----" -echo -echo -links="./plexil_links.txt" -if [ -e $links ]; then - rm plexil_links.txt - #echo "" > /dev/null -else - echo "$links does not exists" -fi - -mkdir clean -echo -echo -echo "----Cleaning links----" -echo -echo -sf="./sourceforge.net" -if [ -d $sf ]; then - for f in $(ls $sf); do - if [[ ( $f =~ ".*png" ) || ( $f =~ ".*jpg" ) ]] - then - echo "" > /dev/null - else - if [[ $f =~ ".*title=.*" ]] - then - sed -f $process $sf/$f > clean/$f - fi - fi - done -else - echo "$sf does not exists" -fi - -names="./naming.txt" -if [ -e $names ]; then - sed 's/[:]* names.txt - rm $names -else - echo "$names does not exists" -fi - -echo -echo -echo "----Formatting links----" -echo -echo -names="names.txt" - -chapters=$(wc -l $names | sed 's/ .*//') - -if [ -d $cleanFld ]; then - while read line - do - grab=$line - messy=$(echo $grab | sed 's/.*|//') - clean=$(echo $grab | sed 's/|.*//') - if [ -e $cleanFld/$messy ]; then - mv $cleanFld/$messy $cleanFld/"$clean".html - else - echo "Error: $messy does not exists" - fi - done < $names - if [ -d $sf ]; then - rm $sf/* - rmdir $sf - fi -else - echo "Error: $cleanFld does not exists" -fi - -if [ -e $names ]; then - while read line - do - echo clean/$(echo $line | sed 's/|.*//').html >> $bookTemplate - done < $names - rm $names -fi - -exec htmldoc --batch $bookTemplate diff --git a/doc/parse b/doc/parse deleted file mode 100644 index ec3e28fd..00000000 --- a/doc/parse +++ /dev/null @@ -1,32 +0,0 @@ -#sed -nf /root/parse intro - -#pull chapters -/Chapter/{ -#remove garbage tags -s/