protected internal override void ReportHeartbeatPulseTransition(PingClientProtocolContext context)
                {
                    PingClientProtocol ctxt = context.Owner;


#if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : PingClientProtocol_SM.Ready.ReportHeartbeatPulseTransition()");
#endif

                    PingClientProtocolState endState = context.State;

                    context.ClearState();

                    try
                    {
                        ctxt.printToScreenAction();
                    }
                    finally
                    {
                        context.State = endState;
                    }

                    return;
                }
 public PingClientProtocol()
 {
     /*
      * If there are other variables, context must be constructed last so that all
      * class variables are available if an EntryAction of the InitialState of the
      * statemachine needs them.
      */
     context = new PingClientProtocolContext(this);
 }
		public PingClientProtocol()
	{

		/*
	 * If there are other variables, context must be constructed last so that all 
	 * class variables are available if an EntryAction of the InitialState of the 
	 * statemachine needs them. 
		 */
		context = new PingClientProtocolContext(this);
	}
                protected internal override void ReportHeartbeatPulseTransition(PingClientProtocolContext context)
                {
#if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : PingClientProtocol_SM.Internally_Generated_State_DO_NOT_USE.ReportHeartbeatPulseTransition()");
#endif


                    return;
                }
            protected internal virtual void Default(PingClientProtocolContext context)
            {
#if TRACE
                Trace.WriteLine(
                    "TRANSITION : Default");
#endif
                throw (
                          new statemap.TransitionUndefinedException(
                              "State: " +
                              context.State.Name +
                              ", Transition: " +
                              context.GetTransition()));
            }
                protected internal override void ReportHeartbeatPulseTransition(PingClientProtocolContext context)
                {
                    PingClientProtocol ctxt = context.Owner;

                    #if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : PingClientProtocol_SM.Ready.ReportHeartbeatPulseTransition()");
                    #endif

                    PingClientProtocolState endState = context.State;

                    context.ClearState();

                    try
                    {
                        ctxt.printToScreenAction();
                    }
                    finally
                    {
                        context.State = endState;
                    }

                    return;
                }
                protected internal override void ReportHeartbeatPulseTransition(PingClientProtocolContext context)
                {
                    #if TRACE
                    Trace.WriteLine(
                        "TRANSITION   : PingClientProtocol_SM.Internally_Generated_State_DO_NOT_USE.ReportHeartbeatPulseTransition()");
                    #endif

                    return;
                }
 protected internal virtual void ReportHeartbeatPulseTransition(PingClientProtocolContext context)
 {
     Default(context);
 }
 protected internal virtual void Exit(PingClientProtocolContext context)
 {
 }
 protected internal virtual void Default(PingClientProtocolContext context)
 {
     #if TRACE
     Trace.WriteLine(
         "TRANSITION : Default");
     #endif
     throw (
         new statemap.TransitionUndefinedException(
             "State: " +
             context.State.Name +
             ", Transition: " +
             context.GetTransition()));
 }
 protected internal virtual void ReportHeartbeatPulseTransition(PingClientProtocolContext context)
 {
     Default(context);
 }
 protected internal virtual void Exit(PingClientProtocolContext context)
 {
 }