<P>Hi Kevin,</P>
<P>I would hold off on analyzing IGSTK till after the current release as it is under major refactoring (tracker and view hierarchies), and the conclusions will be invalid. The tables will be filled before the release.</P>
<P>As to the state machines, these are a double edged sword. When fully populated they provide safety. When partially populated they are dangerous, as they can leave the invoking program in the dark. This easily crashes the external program as no error or success events are generated, yet the class may not have performed the requested task (after a couple hours of debugging I got the point).</P>
<P>Currently the tables are populated manually. For more complex classes this can lead to incomplete tables as there are many InvalidRequestEvent() entries which are tedious to code. </P>
<P><BR>                             Ziv<BR><BR><BR>-----Original Message-----<BR>From: "Luis Ibanez" <luis.ibanez@kitware.com><BR>Sent 9/20/2007 3:08:08 PM<BR>To: "Kevin Gary" <kgary@asu.edu><BR>Cc: "IGSTK developers" <igstk-developers@public.kitware.com>, "Benjamin Muffih" <Benjamin.Muffih@asu.edu><BR>Subject: Re: [IGSTK-Developers] Questions on TrackerTool<BR><BR></P><PRE>Hi Kevin,

We were discussing this morning some of the issues with the
state machine of the tracker tool, and following on Ziv's
request for completing the transition tables of all state
machine based classes.

You are right regarding the fact that the TrackerTool has not
an operational State Machine.  This is in part due to the way
in which the Tracker Tool was being used from the Tracker,
mostly as an internal helper class, instead of being exposed
to the user as a full IGSTK class the application developers.

We are currently modifying the API of the Tracker and TrackerTool
classes, and in the process we will reorganize the SM of both
classes. We have been stumbling on the actual definition of the
API, and how it will relate to the multiple reference systems
existing in the operating room.

Ziv may have more detailed comments on the status of the
state-machine-completeness review.


    Thanks


       Luis


====================
Kevin Gary wrote:
> Greeting all,

> We have been looking at defining rule-based constraints on state 
> machines to check for during unit testing. We are looking at defining 
> rules that involve multiple components, so one place we started was with 
> Tracker and TrackerTool. But, when looking at TrackerTool, the state 
> machine neither makes sense nor is used?

> On a more general note, I haven't been on the tcons so I am wondering 
> what the status of the quality control / state machine transition table 
> completeness effort? We have written a simple tool out here to check for 
> this and are trying to integrate it into Dart (unfortunately we are 
> really struggling with getting Dart going).

> Thanks,
> K2

> _______________________________________________
> IGSTK-Developers mailing list
> IGSTK-Developers@public.kitware.com
> <A href="http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers" target=_blank>http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers</A>
_______________________________________________
IGSTK-Developers mailing list
IGSTK-Developers@public.kitware.com
<A href="http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers" target=_blank>http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-developers</A>
</PRE>