default TraceExecutionState getExecutionState(long snap) {
		TraceObject stateful = findSuitableInterface(TraceObjectExecutionStateful.class);
		if (stateful == null) {
			return null;
		}
		TraceObjectValue stateVal =
			stateful.getAttribute(snap, TraceObjectExecutionStateful.KEY_STATE);
		if (stateVal == null) {
			return TraceExecutionState.INACTIVE;
		}
		return TraceExecutionState.valueOf(stateVal.castValue());
	}
Get the execution state, if applicable, of this object

<p>
This searches for the conventional stateful object defining this object's execution state. If
such an object does not exist, null is returned. If one does exist, then its execution state
at the given snap is returned. If that state is null, it is assumed
{@link TraceExecutionState#INACTIVE}.

@param snap the snap
@return the state or null
Ghidra/Debug/Framework-TraceModeling/src/main/java/ghidra/trace/model/target/TraceObject.java