diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/.setup smixx/.setup
--- smixx_web/.setup	2005-05-26 14:32:56.000000000 +0200
+++ smixx/.setup	1970-01-01 01:00:00.000000000 +0100
@@ -1,95 +0,0 @@
-
-set POSSOSVALUES = HP-UX,AIX,OSF1,SunOS,Solaris,LynxOS,Linux,Darwin,
-
-if ($?OS) then
-    echo Variable OS is set to $OS
-    set TEMP = $OS,
-    echo $POSSOSVALUES | grep $TEMP>/dev/null
-    if ( ! $status == 0) then
-        echo Unknown OS....setup failed
-        echo Possible values are : $POSSOSVALUES
-        exit 1
-    endif
-else
-    echo Variable OS must be defined ... setup failed
-    echo Possible values are : $POSSOSVALUES
-    exit 1
-endif
-
-if(-d ./src/stateManager) then
-	setenv SMIDIR `pwd`
-	echo Variable SMIDIR is set to $SMIDIR
-else
-if ($?SMIDIR) then
-	echo Variable SMIDIR is set to $SMIDIR
-else
-	echo You are not in the right directory... setup failed
-endif
-endif
-
-setenv SMIRTLDIR $SMIDIR
-
-if ($?DIMDIR) then
-    echo Variable DIMDIR is set to $DIMDIR
-else
-    echo Variable DIMDIR has to be defined... setup failed
-    exit 1
-endif
-
-if ($?ODIR) then
-    echo Variable ODIR is set to $ODIR
-else
-	switch ($OS)
-		case HP-UX:
-			setenv ODIR hp
-			breaksw
-		case AIX:
-			setenv ODIR aix
-			breaksw
-		case OSF1:
-			setenv ODIR osf
-			breaksw
-		case SunOS:
-			setenv ODIR sunos
-			breaksw
-		case Solaris
-			setenv ODIR solaris
-			breaksw
-		case LynxOS:
-			setenv ODIR lynxos
-			breaksw
-		case Linux:
-			setenv ODIR linux
-			breaksw
-		case Darwin:
-			setenv ODIR darwin
-			breaksw
-		default:
-			echo OS variable $OS is not known... setup failed
-                	exit 1
-	endsw
-    echo Variable ODIR is set to $ODIR
-endif
-
-if ( ${OS} == Linux ) then
-if (! $?LD_LIBRARY_PATH) then
-    setenv LD_LIBRARY_PATH $SMIDIR/$ODIR
-else
-    setenv LD_LIBRARY_PATH $SMIDIR/$ODIR\:$LD_LIBRARY_PATH
-endif
-endif
-
-alias smiTrans $SMIDIR/$ODIR/smiTrans
-alias smiGen   $SMIDIR/$ODIR/smiGen
-alias smiSM    $SMIDIR/$ODIR/smiSM
-alias smiSendCommand    $SMIDIR/$ODIR/smiSendCommand
-alias smiPreproc $SMIDIR/$ODIR/smiPreproc
-alias smiMake  $SMIDIR/$ODIR/smiMake
-alias smiKill  $SMIDIR/$ODIR/smiKill
-alias smiGUI   $SMIDIR/$ODIR/smiGUI
-#
-if (! -d $SMIDIR/$ODIR) then
-   echo Created Directory : $SMIDIR/$ODIR
-   mkdir $SMIDIR/$ODIR
-endif
-exit
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Makefile.am smixx/Makefile.am
--- smixx_web/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ smixx/Makefile.am	2007-03-29 17:28:06.000000000 +0200
@@ -0,0 +1,48 @@
+#
+#
+#
+AUTOMAKE_OPTIONS        = foreign subdir-objects
+ACLOCAL_AMFLAGS         = -I .
+SUBDIRS			= src smixx support debian Visual
+EXTRA_DIST		= README		\
+			  Visual
+
+origtar		       = $(distdir:@PACKAGE@-%=@PACKAGE@_%).orig.tar.gz
+
+rpm: dist
+	sudo rpmbuild -ta $(distdir).tar.gz
+
+orig:	distdir
+	mv $(distdir) $(distdir).orig
+	tardir=$(distdir).orig && $(am__tar) | \
+		GZIP=$(GZIP_ENV) gzip -c >$(origtar)
+	rm -rf $(distdir).orig
+
+deb: orig
+	$(MAKE) -C debian prep
+	mv $(origtar) ../
+	DEB_BUILD_OPTIONS="nostrip noopt" debuild -us -uc  -ICVS -i
+
+release:
+	@if test "x$(MSG)" = "x" ; then \
+	  echo "No MSG specified, please run 'make $@ MSG=\"...\"'" ; false ;\
+	fi
+	@dch -i "$(MSG)" 
+	@r=`head -n1 debian/changelog |sed 's/$(PACKAGE) ($(VERSION)-\([0-9][0-9]*\)).*/\1/'` ; \
+	  sed "s/\(Release:[[:space:]]*\)\([0-9][0-9]*\)/\1$${r}/" \
+		< support/$(PACKAGE).spec.in > support/$(PACKAGE).spec.tmp ; \
+	  echo "New release is $(VERSION)-$$r" 
+	@csplit -s -f support/$(PACKAGE).spec. support/$(PACKAGE).spec.tmp \
+		'/%changelog/+1' 
+	@d=`date "+%a %b %d %Y"` ; \
+	  m=`perl -e 'my @pw=getpwuid $$<;$$pw[6]=~s/,.*//;print $$pw[6]'`; \
+	  e=`perl -e 'my $$addr; open MAILNAME, "/etc/mailname" ; chomp($$addr=<MAILNAME>); close MAILNAME; my $$user=getpwuid $$<; $$addr="$$user\@$$addr"; print $$addr;'` ; \
+	  echo "* $$d $$m <$$e>" >> support/$(PACKAGE).spec.00 ; \
+	  echo "- $(MSG)"        >> support/$(PACKAGE).spec.00 ; \
+	  echo ""                >> support/$(PACKAGE).spec.00 ; 
+	cat support/$(PACKAGE).spec.0? > support/$(PACKAGE).spec.in
+	rm -f support/$(PACKAGE).spec.0? support/$(PACKAGE).spec.tmp
+
+#
+# EOF
+#
\ No newline at end of file
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/README smixx/README
--- smixx_web/README	2005-08-15 18:31:26.000000000 +0200
+++ smixx/README	2007-03-19 09:55:41.000000000 +0100
@@ -705,3 +705,54 @@
 
   - Commented out some prints in: scheduler.cxx, doins.cxx and insertins.cxx
     They are marked with: //CG
+
+  28-Sep-2005 (Boda Franek)
+  
+     modified stateManager/scheduler.cxx, doins.cxx and insertins.cxx
+     to handle 'suspension' of some prints properly in order to make it
+     compatible with BaBar
+=== 28-September-2005:15:35 ==========  v28r1  =================
+
+ 28-Sep-2005 --> 06-Oct-2005 (Boda Franek)
+ 
+     Many various changes to State Manager described in detail in the History
+     file. Mostly to do with removing fixed declarations. Unfortunately
+     this is not finished yet. It has become more important to have a release
+     for SLAC at the end of the months.
+ 
+=== 06-October-2005:15:38 ==========  v29  =================
+
+      Many various changes to State Manager described in detail in the History
+     file. Mostly to do with removing fixed declarations. 
+=== 20-January-2006:14:46 ==========  v29r1  =================
+
+ 31-Mar-2006  (Boda Franek)
+ 
+    - slacMake updated from SLAC
+    
+    - src/commonSource   changes to NmdPtnr class
+    
+    - src/stateManager  changes to instantiation of is_of_class type objects
+    
+    - src/translator minor changes to is_of_class type objects
+            
+    - src/tclTkGUI  new directory with an embryonic version
+
+=== 31-March-2006:17:27 ==========  v30  =================
+
+ 19-May-2006  (Boda Franek)
+ 
+  -src/stateManager  various changes to State Manager described in detail
+        in History file. Mostly to do with removing fixed declarations.
+	This concludes the removal of the important fixed declarations.
+	This justifies to have a new major tag.
+=== 19-May-2006:20:34 ==========  v31  =================
+
+ 21-May-2006 (Boda Franek)
+ 
+  -src/stateManager/ifhandler.cxx  made diagnostic prints conditional on the 
+                 value of dbg
+ 
+  -src/utilities/monObjects.cxx minor change to satisfy SLAC compiler
+  
+=== 21-May-2006:21:01 ==========  v31r1  =================
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/Makefile.am smixx/Visual/Makefile.am
--- smixx_web/Visual/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ smixx/Visual/Makefile.am	2007-03-19 10:08:38.000000000 +0100
@@ -0,0 +1,13 @@
+EXTRA_DIST	=  domainExists.dsp		\
+		   generator.dsp		\
+		   getDomains.dsp		\
+		   getdomainobjects.dsp		\
+		   monObjects.dsp		\
+		   preprocessor.dsp		\
+		   smi_send_command.dsp		\
+		   smirtl.dsp			\
+		   smiuirtl.dsp			\
+		   smixx.dsw			\
+		   state_manager.dsp		\
+		   tellMonObjects.dsp		\
+		   translator.dsp		
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/getDomains.dsp smixx/Visual/getDomains.dsp
--- smixx_web/Visual/getDomains.dsp	1970-01-01 01:00:00.000000000 +0100
+++ smixx/Visual/getDomains.dsp	2006-11-30 18:56:33.000000000 +0100
@@ -0,0 +1,97 @@
+# Microsoft Developer Studio Project File - Name="getDomains" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=getDomains - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE 
+!MESSAGE NMAKE /f "getDomains.mak".
+!MESSAGE 
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "getDomains.mak" CFG="getDomains - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "getDomains - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "getDomains - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "getDomains - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "../bin"
+# PROP Intermediate_Dir "../tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Release/" /compile_only /nologo
+# ADD F90 /include:"Release/" /compile_only /nologo
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
+
+!ELSEIF  "$(CFG)" == "getDomains - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "..\bin"
+# PROP Intermediate_Dir "..\tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Debug/" /compile_only /nologo /debug:full /optimize:0
+# ADD F90 /include:"exe/" /compile_only /nologo /debug:full /optimize:0
+# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# SUBTRACT LINK32 /pdb:none
+
+!ENDIF 
+
+# Begin Target
+
+# Name "getDomains - Win32 Release"
+# Name "getDomains - Win32 Debug"
+# Begin Source File
+
+SOURCE=..\src\utilities\getDomains.cxx
+# End Source File
+# End Target
+# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/getdomainobjects.dsp smixx/Visual/getdomainobjects.dsp
--- smixx_web/Visual/getdomainobjects.dsp	1970-01-01 01:00:00.000000000 +0100
+++ smixx/Visual/getdomainobjects.dsp	2006-11-30 18:56:33.000000000 +0100
@@ -0,0 +1,97 @@
+# Microsoft Developer Studio Project File - Name="getdomainobjects" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=getdomainobjects - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE 
+!MESSAGE NMAKE /f "getdomainobjects.mak".
+!MESSAGE 
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "getdomainobjects.mak" CFG="getdomainobjects - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "getdomainobjects - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "getdomainobjects - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "getdomainobjects - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "../bin"
+# PROP Intermediate_Dir "../tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Release/" /compile_only /nologo
+# ADD F90 /include:"Release/" /compile_only /nologo
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
+
+!ELSEIF  "$(CFG)" == "getdomainobjects - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "..\bin"
+# PROP Intermediate_Dir "..\tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Debug/" /compile_only /nologo /debug:full /optimize:0
+# ADD F90 /include:"exe/" /compile_only /nologo /debug:full /optimize:0
+# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# SUBTRACT LINK32 /pdb:none
+
+!ENDIF 
+
+# Begin Target
+
+# Name "getdomainobjects - Win32 Release"
+# Name "getdomainobjects - Win32 Debug"
+# Begin Source File
+
+SOURCE=..\src\utilities\getdomainobjects.cxx
+# End Source File
+# End Target
+# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/monObjects.dsp smixx/Visual/monObjects.dsp
--- smixx_web/Visual/monObjects.dsp	1970-01-01 01:00:00.000000000 +0100
+++ smixx/Visual/monObjects.dsp	2006-11-30 18:56:33.000000000 +0100
@@ -0,0 +1,97 @@
+# Microsoft Developer Studio Project File - Name="monObjects" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=monObjects - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE 
+!MESSAGE NMAKE /f "monObjects.mak".
+!MESSAGE 
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "monObjects.mak" CFG="monObjects - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "monObjects - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "monObjects - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "monObjects - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "../bin"
+# PROP Intermediate_Dir "../tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Release/" /compile_only /nologo
+# ADD F90 /include:"Release/" /compile_only /nologo
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
+
+!ELSEIF  "$(CFG)" == "monObjects - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "..\bin"
+# PROP Intermediate_Dir "..\tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Debug/" /compile_only /nologo /debug:full /optimize:0
+# ADD F90 /include:"exe/" /compile_only /nologo /debug:full /optimize:0
+# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# SUBTRACT LINK32 /pdb:none
+
+!ENDIF 
+
+# Begin Target
+
+# Name "monObjects - Win32 Release"
+# Name "monObjects - Win32 Debug"
+# Begin Source File
+
+SOURCE=..\src\utilities\monObjects.cxx
+# End Source File
+# End Target
+# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/preprocessor.dsp smixx/Visual/preprocessor.dsp
--- smixx_web/Visual/preprocessor.dsp	2004-11-11 15:09:40.000000000 +0100
+++ smixx/Visual/preprocessor.dsp	2004-03-25 15:37:58.000000000 +0100
@@ -26,7 +26,6 @@
 # PROP Scc_ProjName ""
 # PROP Scc_LocalPath ""
 CPP=cl.exe
-F90=df.exe
 RSC=rc.exe
 
 !IF  "$(CFG)" == "preprocessor - Win32 Release"
@@ -42,8 +41,9 @@
 # PROP Intermediate_Dir "../tmp"
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
+F90=df.exe
 # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /I "$(SMIDIR)/smixx" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
 # ADD BASE RSC /l 0x409 /d "NDEBUG"
 # ADD RSC /l 0x409 /d "NDEBUG"
 BSC32=bscmake.exe
@@ -66,6 +66,7 @@
 # PROP Intermediate_Dir "..\tmp"
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
+F90=df.exe
 # ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
 # ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
 # ADD BASE RSC /l 0x409 /d "_DEBUG"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/smixx.dsw smixx/Visual/smixx.dsw
--- smixx_web/Visual/smixx.dsw	2005-05-26 14:04:50.000000000 +0200
+++ smixx/Visual/smixx.dsw	2007-03-19 09:55:41.000000000 +0100
@@ -15,6 +15,42 @@
 
 ###############################################################################
 
+Project: "getDomains"=.\getDomains.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "getdomainobjects"=.\getdomainobjects.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "monObjects"=.\monObjects.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
 Project: "preprocessor"=.\preprocessor.dsp - Package Owner=<4>
 
 Package=<5>
@@ -35,12 +71,6 @@
 
 Package=<4>
 {{{
-    Begin Project Dependency
-    Project_Dep_Name smirtl
-    End Project Dependency
-    Begin Project Dependency
-    Project_Dep_Name smiuirtl
-    End Project Dependency
 }}}
 
 ###############################################################################
@@ -81,7 +111,31 @@
 
 ###############################################################################
 
-Project: "test"=.\test.dsp - Package Owner=<4>
+Project: "tellMonObjects"=.\tellMonObjects.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "testCXXui"=.\testCXXui.dsp - Package Owner=<4>
+
+Package=<5>
+{{{
+}}}
+
+Package=<4>
+{{{
+}}}
+
+###############################################################################
+
+Project: "testCui"=.\testCui.dsp - Package Owner=<4>
 
 Package=<5>
 {{{
Binary files smixx_web/Visual/smixx.ncb and smixx/Visual/smixx.ncb differ
Binary files smixx_web/Visual/smixx.opt and smixx/Visual/smixx.opt differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/tellMonObjects.dsp smixx/Visual/tellMonObjects.dsp
--- smixx_web/Visual/tellMonObjects.dsp	1970-01-01 01:00:00.000000000 +0100
+++ smixx/Visual/tellMonObjects.dsp	2006-11-30 18:56:33.000000000 +0100
@@ -0,0 +1,97 @@
+# Microsoft Developer Studio Project File - Name="tellMonObjects" - Package Owner=<4>
+# Microsoft Developer Studio Generated Build File, Format Version 6.00
+# ** DO NOT EDIT **
+
+# TARGTYPE "Win32 (x86) Console Application" 0x0103
+
+CFG=tellMonObjects - Win32 Debug
+!MESSAGE This is not a valid makefile. To build this project using NMAKE,
+!MESSAGE use the Export Makefile command and run
+!MESSAGE 
+!MESSAGE NMAKE /f "tellMonObjects.mak".
+!MESSAGE 
+!MESSAGE You can specify a configuration when running NMAKE
+!MESSAGE by defining the macro CFG on the command line. For example:
+!MESSAGE 
+!MESSAGE NMAKE /f "tellMonObjects.mak" CFG="tellMonObjects - Win32 Debug"
+!MESSAGE 
+!MESSAGE Possible choices for configuration are:
+!MESSAGE 
+!MESSAGE "tellMonObjects - Win32 Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "tellMonObjects - Win32 Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE 
+
+# Begin Project
+# PROP AllowPerConfigDependencies 0
+# PROP Scc_ProjName ""
+# PROP Scc_LocalPath ""
+CPP=cl.exe
+RSC=rc.exe
+
+!IF  "$(CFG)" == "tellMonObjects - Win32 Release"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 0
+# PROP BASE Output_Dir "Release"
+# PROP BASE Intermediate_Dir "Release"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 0
+# PROP Output_Dir "../bin"
+# PROP Intermediate_Dir "../tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Release/" /compile_only /nologo
+# ADD F90 /include:"Release/" /compile_only /nologo
+# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "NDEBUG"
+# ADD RSC /l 0x409 /d "NDEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
+
+!ELSEIF  "$(CFG)" == "tellMonObjects - Win32 Debug"
+
+# PROP BASE Use_MFC 0
+# PROP BASE Use_Debug_Libraries 1
+# PROP BASE Output_Dir "Debug"
+# PROP BASE Intermediate_Dir "Debug"
+# PROP BASE Target_Dir ""
+# PROP Use_MFC 0
+# PROP Use_Debug_Libraries 1
+# PROP Output_Dir "..\bin"
+# PROP Intermediate_Dir "..\tmp"
+# PROP Ignore_Export_Lib 0
+# PROP Target_Dir ""
+F90=df.exe
+# ADD BASE F90 /include:"Debug/" /compile_only /nologo /debug:full /optimize:0
+# ADD F90 /include:"exe/" /compile_only /nologo /debug:full /optimize:0
+# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_MBCS" /YX /FD /c
+# ADD BASE RSC /l 0x409 /d "_DEBUG"
+# ADD RSC /l 0x409 /d "_DEBUG"
+BSC32=bscmake.exe
+# ADD BASE BSC32 /nologo
+# ADD BSC32 /nologo
+LINK32=link.exe
+# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
+# SUBTRACT LINK32 /pdb:none
+
+!ENDIF 
+
+# Begin Target
+
+# Name "tellMonObjects - Win32 Release"
+# Name "tellMonObjects - Win32 Debug"
+# Begin Source File
+
+SOURCE=..\src\utilities\tellMonObjects.cxx
+# End Source File
+# End Target
+# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/test.dsp smixx/Visual/test.dsp
--- smixx_web/Visual/test.dsp	2004-08-02 14:44:34.000000000 +0200
+++ smixx/Visual/test.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,101 +0,0 @@
-# Microsoft Developer Studio Project File - Name="test" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=test - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "test.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "test.mak" CFG="test - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "test - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "test - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "test - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "Release"
-# PROP Intermediate_Dir "Release"
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-
-!ELSEIF  "$(CFG)" == "test - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "Debug"
-# PROP Intermediate_Dir "Debug"
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ  /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ  /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-
-!ENDIF 
-
-# Begin Target
-
-# Name "test - Win32 Release"
-# Name "test - Win32 Debug"
-# Begin Group "Source Files"
-
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
-# End Group
-# Begin Group "Header Files"
-
-# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# End Group
-# Begin Group "Resource Files"
-
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
-# End Group
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/testCXXui.dsp smixx/Visual/testCXXui.dsp
--- smixx_web/Visual/testCXXui.dsp	2003-03-20 16:45:16.000000000 +0100
+++ smixx/Visual/testCXXui.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,97 +0,0 @@
-# Microsoft Developer Studio Project File - Name="testCXXui" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=testCXXui - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXui.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXui.mak" CFG="testCXXui - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "testCXXui - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "testCXXui - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "testCXXui - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /machine:I386
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "testCXXui - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "testCXXui - Win32 Release"
-# Name "testCXXui - Win32 Debug"
-# Begin Source File
-
-SOURCE=..\src\examples\testCXXui.cxx
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/testCui.dsp smixx/Visual/testCui.dsp
--- smixx_web/Visual/testCui.dsp	2003-08-21 14:58:00.000000000 +0200
+++ smixx/Visual/testCui.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,97 +0,0 @@
-# Microsoft Developer Studio Project File - Name="testCui" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=testCui - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "testCui.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "testCui.mak" CFG="testCui - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "testCui - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "testCui - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "testCui - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /machine:I386
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "testCui - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "testCui - Win32 Release"
-# Name "testCui - Win32 Debug"
-# Begin Source File
-
-SOURCE=..\src\examples\testCui.c
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/Visual/translator.dsp smixx/Visual/translator.dsp
--- smixx_web/Visual/translator.dsp	2005-05-26 14:04:50.000000000 +0200
+++ smixx/Visual/translator.dsp	2004-03-25 15:38:00.000000000 +0100
@@ -43,7 +43,7 @@
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
 # ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /I "$(SMIDIR)/smixx" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /MLd /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
 # ADD BASE RSC /l 0x409 /d "NDEBUG"
 # ADD RSC /l 0x409 /d "NDEBUG"
 BSC32=bscmake.exe
@@ -67,7 +67,7 @@
 # PROP Ignore_Export_Lib 0
 # PROP Target_Dir ""
 # ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /I "$(SMIDIR)/smixx" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
+# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/src/commonSource" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
 # ADD BASE RSC /l 0x409 /d "_DEBUG"
 # ADD RSC /l 0x409 /d "_DEBUG"
 BSC32=bscmake.exe
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/acinclude.m4 smixx/acinclude.m4
--- smixx_web/acinclude.m4	1970-01-01 01:00:00.000000000 +0100
+++ smixx/acinclude.m4	2006-05-16 02:29:10.000000000 +0200
@@ -0,0 +1,127 @@
+dnl -*- mode: Autoconf -*- 
+dnl
+dnl ------------------------------------------------------------------
+AC_DEFUN([AC_DEBUG],
+[
+  AC_REQUIRE([AC_PROG_CC])
+  AC_REQUIRE([AC_PROG_CXX])
+  AC_MSG_CHECKING(whether to make debug objects)
+  AC_ARG_ENABLE(debug,
+    [AC_HELP_STRING([--enable-debug],[Enable debugging symbols in objects])])
+  if test "x$enable_debug" = "xno" ; then
+    CFLAGS=`echo $CFLAGS | sed 's,-g,,'`
+    CXXFLAGS=`echo $CXXFLAGS | sed 's,-g,,'`
+  else
+    case $CXXFLAGS in
+    *-g*) ;;
+    *)    CXXFLAGS="$CXXFLAGS -g" ;;
+    esac
+    case $CFLAGS in
+    *-g*) ;;
+    *)    CFLAGS="$CFLAGS -g" ;;
+    esac
+  fi
+  AC_MSG_RESULT($enable_debug 'CFLAGS=$CFLAGS')
+])
+
+dnl ------------------------------------------------------------------
+AC_DEFUN([AC_OPTIMIZATION],
+[
+  AC_REQUIRE([AC_PROG_CC])
+  AC_REQUIRE([AC_PROG_CXX])
+
+  AC_ARG_ENABLE(optimization,
+    [AC_HELP_STRING([--enable-optimization],[Enable optimization of objects])])
+
+  AC_MSG_CHECKING(for optimiztion level)
+
+  changequote(<<, >>)dnl
+  if test "x$enable_optimization" = "xno" ; then
+    CFLAGS=`echo   $CFLAGS   | sed 's,-O\([0-9][0-9]*\|\),,'`
+    CXXFLAGS=`echo $CXXFLAGS | sed 's,-O\([0-9][0-9]*\|\),,'`
+  elif test "x$enable_optimization" = "xyes" ; then
+    case $CXXFLAGS in
+    *-O*) ;;
+    *)    CXXFLAGS="$CXXFLAGS -O2" ;;
+    esac
+    case $CFLAGS in
+    *-O*) ;;
+    *)    CFLAGS="$CXXFLAGS -O2" ;;
+    esac
+  else
+    CFLAGS=`echo   $CFLAGS   | sed "s,-O\([0-9][0-9]*\|\),-O$enable_optimization,"`
+    CXXFLAGS=`echo $CXXFLAGS | sed "s,-O\([0-9][0-9]*\|\),-O$enable_optimization,"`
+  fi
+  changequote([, ])dnl
+  AC_MSG_RESULT($enable_optimization 'CFLAGS=$CFLAGS')
+])
+
+dnl ------------------------------------------------------------------
+dnl
+dnl AC_ROOT_DIM([MINIMUM-VERSION 
+dnl                   [,ACTION-IF_FOUND 
+dnl                    [, ACTION-IF-NOT-FOUND]])
+AC_DEFUN([AC_ROOT_DIM],
+[
+    AC_ARG_WITH([dim-prefix],
+        [AC_HELP_STRING([--with-dim-prefix],
+		[Prefix where DIM is installed])],
+        dim_prefix=$withval, dim_prefix="")
+
+    if test "x${DIM_CONFIG+set}" != xset ; then 
+        if test "x$dim_prefix" != "x" ; then 
+	    DIM_CONFIG=$dim_prefix/bin/dim-config
+	fi
+    fi   
+    if test "x${DIM_CONFIG+set}" != xset ; then 
+        if test "x$dim_prefix" != "x" ; then 
+	    DIM_CONFIG=$dim_prefix/bin/dim-config
+	fi
+    fi   
+    AC_PATH_PROG(DIM_CONFIG, dim-config, no)
+    dim_min_version=ifelse([$1], ,0.1,$1)
+    
+    AC_MSG_CHECKING(for DIM version >= $dim_min_version)
+
+    dim_found=no    
+    if test "x$DIM_CONFIG" != "xno" ; then 
+       DIM_CFLAGS=`$DIM_CONFIG --cflags`
+       DIM_CPPFLAGS=`$DIM_CONFIG --cppflags`
+       DIM_INCLUDEDIR=`$DIM_CONFIG --includedir`
+       DIM_LIBS=`$DIM_CONFIG --libs`
+       DIM_LIBDIR=`$DIM_CONFIG --libdir`
+       DIM_LDFLAGS=`$DIM_CONFIG --ldflags`
+       DIM_PREFIX=`$DIM_CONFIG --prefix`
+       DIM_JNILIBS=`$DIM_CONFIG --libs`
+       
+       dim_version=`$DIM_CONFIG -V` 
+       dim_vers=`echo $dim_version | \
+         awk 'BEGIN { FS = " "; } \
+	   { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
+       dim_regu=`echo $dim_min_version | \
+         awk 'BEGIN { FS = " "; } \
+	   { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
+       if test $dim_vers -ge $dim_regu ; then 
+            dim_found=yes
+       fi
+    fi
+    AC_MSG_RESULT($dim_found - is $dim_version) 
+  
+    if test "x$dim_found" = "xyes" ; then 
+        ifelse([$2], , :, [$2])
+    else 
+        ifelse([$3], , :, [$3])
+    fi
+    AC_SUBST(DIM_PREFIX)
+    AC_SUBST(DIM_CFLAGS)
+    AC_SUBST(DIM_CPPFLAGS)
+    AC_SUBST(DIM_INCLUDEDIR)
+    AC_SUBST(DIM_LDFLAGS)
+    AC_SUBST(DIM_LIBDIR)
+    AC_SUBST(DIM_LIBS)
+    AC_SUBST(DIM_JNILIBS)
+])
+
+dnl
+dnl EOF
+dnl 
Binary files smixx_web/bin/smiGen.exe and smixx/bin/smiGen.exe differ
Binary files smixx_web/bin/smiPreproc.exe and smixx/bin/smiPreproc.exe differ
Binary files smixx_web/bin/smiSM.exe and smixx/bin/smiSM.exe differ
Binary files smixx_web/bin/smiTrans.exe and smixx/bin/smiTrans.exe differ
Binary files smixx_web/bin/smi_send_command.exe and smixx/bin/smi_send_command.exe differ
Binary files smixx_web/bin/smirtl.dll and smixx/bin/smirtl.dll differ
Binary files smixx_web/bin/smirtl.exp and smixx/bin/smirtl.exp differ
Binary files smixx_web/bin/smirtl.lib and smixx/bin/smirtl.lib differ
Binary files smixx_web/bin/smiuirtl.dll and smixx/bin/smiuirtl.dll differ
Binary files smixx_web/bin/smiuirtl.exp and smixx/bin/smiuirtl.exp differ
Binary files smixx_web/bin/smiuirtl.lib and smixx/bin/smiuirtl.lib differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/changes smixx/changes
--- smixx_web/changes	1970-01-01 01:00:00.000000000 +0100
+++ smixx/changes	2007-03-19 09:51:44.000000000 +0100
@@ -0,0 +1,407 @@
+Index: src/EXAMPLES/run_control/evt_builder.c
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/EXAMPLES/run_control/evt_builder.c,v
+retrieving revision 1.1
+diff -w -u -r1.1 evt_builder.c
+--- src/EXAMPLES/run_control/evt_builder.c	7 May 2002 15:58:46 -0000	1.1
++++ src/EXAMPLES/run_control/evt_builder.c	19 Mar 2007 08:51:34 -0000
+@@ -12,7 +12,10 @@
+ 	char proxy_name[64];
+ 	void handle_command();
+ 	smi_volatile();
++	if (argc > 1) 
+ 	sprintf(proxy_name,"%s::EVT_BUILDER",argv[1]);
++	else 
++	  sprintf(proxy_name, "MINI_RUN::EVT_BUILDER");
+ 	smi_attach(proxy_name, handle_command);
+ 	num = 1;
+ 	smi_set_par("NUMBER_T", &num, SMI_INTEGER);
+@@ -35,6 +38,7 @@
+ set_in_error(tag)
+ int tag;
+ {
++  	printf("Setting error due to timeout\n");
+ 	smi_set_state("ERROR");
+ 	Timer_on = 0;
+ }
+Index: src/EXAMPLES/run_control/evt_builder_cpp.cxx
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/EXAMPLES/run_control/evt_builder_cpp.cxx,v
+retrieving revision 1.1
+diff -w -u -r1.1 evt_builder_cpp.cxx
+Index: src/EXAMPLES/run_control/logger.c
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/EXAMPLES/run_control/logger.c,v
+retrieving revision 1.2
+diff -w -u -r1.2 logger.c
+--- src/EXAMPLES/run_control/logger.c	27 May 2004 14:33:02 -0000	1.2
++++ src/EXAMPLES/run_control/logger.c	19 Mar 2007 08:51:34 -0000
+@@ -9,7 +9,10 @@
+ 	char proxy_name[64];
+ 	void handle_command();
+ 	smi_volatile();
++	if (argc > 1)
+ 	sprintf(proxy_name,"%s::LOGGER",argv[1]);
++	else 
++	  sprintf(proxy_name,"MINI_RUN::LOGGER");
+ 	smi_attach(proxy_name, handle_command);
+ 	smi_set_state("NOT_LOGGING");
+ /*
+Index: src/EXAMPLES/run_control/run_con.smi
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/EXAMPLES/run_control/run_con.smi,v
+retrieving revision 1.1
+diff -w -u -r1.1 run_con.smi
+--- src/EXAMPLES/run_control/run_con.smi	7 May 2002 15:58:47 -0000	1.1
++++ src/EXAMPLES/run_control/run_con.smi	19 Mar 2007 08:51:34 -0000
+@@ -1,3 +1,31 @@
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "EXAMPLES/run_control/run_con.smi"
++# 1 "<built-in>"
++# 1 "<command line>"
++# 1 "EXAMPLES/run_control/run_con.smi"
+ object: AUTO_PILOT
+ 	state: off
+ 		action: ACTIVATE			
+@@ -93,4 +121,3 @@
+ 		action: STOP
+ 	state: ERROR
+ 		action: RECOVER
+-
+Index: src/generator/generator.c
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/generator/generator.c,v
+retrieving revision 1.2
+diff -w -u -r1.2 generator.c
+--- src/generator/generator.c	7 May 2002 15:51:03 -0000	1.2
++++ src/generator/generator.c	19 Mar 2007 08:51:34 -0000
+@@ -352,7 +352,9 @@
+ */
+ 	for(i = 0; i < (int)strlen(Curr_object); i++)
+ 	{
++#ifndef unix
+ 		aux[i] = tolower(Curr_object[i]);
++#endif
+ 	}	
+ 	aux[i] = '\0';
+ /*
+@@ -790,7 +792,9 @@
+ 
+ 	for(i = 0; i < (int)strlen(Curr_object); i++)
+ 	{
++#ifndef unix
+ 		file_name[i] = tolower(Curr_object[i]);
++#endif
+ 	}	
+ 	file_name[i] = '\0';
+ 	strcpy(str,file_name);
+@@ -938,7 +942,9 @@
+ 	}
+ 	for(i = 0; i < (int)strlen(Curr_object); i++)
+ 	{
++#ifndef unix
+ 		file_name[i] = tolower(Curr_object[i]);
++#endif
+ 	}	
+ 	file_name[i] = '\0';
+ 
+@@ -1079,6 +1085,21 @@
+ 	return(0);
+ }
+ 
++void usage()
++{
++	printf("\nsmiGen [options] file\n\n");
++	printf("DESCRIPTION:\n");
++	printf("\tsmiGen Generates Proxy skelettons from the SML code \".SMI\"\n");
++	printf("\tand include files containing SMI object headers\n");
++	printf("\tPossible Options:\n");
++	printf("\t\t-p\tGenerate Proxies\n");
++	printf("\t\t-c\tGenerate Proxies in \"C\"\n");
++	printf("\t\t-C\tGenerate Proxies in \"C++\" (default)\n");
++	printf("\t\t-m\tGenerate a makefile for the proxies\n");
++	printf("\t\t-i\tGenerate include files for SMI objects\n");
++	exit(0);
++}
++
+ int main(argc,argv)
+ int argc;
+ char **argv;										
+@@ -1092,17 +1113,7 @@
+ 
+ 	if(argc < 2)
+ 	{
+-		printf("\nsmiGen [options] file\n\n");
+-		printf("DESCRIPTION:\n");
+-		printf("\tsmiGen Generates Proxy skelettons from the SML code \".SMI\"\n");
+-		printf("\tand include files containing SMI object headers\n");
+-		printf("\tPossible Options:\n");
+-		printf("\t\t-p\tGenerate Proxies\n");
+-		printf("\t\t-c\tGenerate Proxies in \"C\"\n");
+-		printf("\t\t-C\tGenerate Proxies in \"C++\" (default)\n");
+-		printf("\t\t-m\tGenerate a makefile for the proxies\n");
+-		printf("\t\t-i\tGenerate include files for SMI objects\n");
+-		exit(0);
++	  	usage();
+ 	}
+ 	for(i = 1; i < argc; i++)
+ 	{
+@@ -1111,6 +1122,7 @@
+ 		{
+ 			switch(strin[1])
+ 			{
++				case 'h': usage(); break;
+ 				case 'p':
+ 					Proxy_flag = 1;
+ 					break;
+@@ -1138,7 +1150,9 @@
+ 	}
+ 	for(i = 0; i < (int)strlen(path); i++)
+ 	{
++#ifndef unix
+ 		path[i] = tolower(path[i]);
++#endif
+ 		if((path[i] == '/') || (path[i] == ']'))
+ 			index = i+1;
+ 	}	
+Index: src/generator/smimake.c
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/generator/smimake.c,v
+retrieving revision 1.1.1.1
+diff -w -u -r1.1.1.1 smimake.c
+--- src/generator/smimake.c	16 May 2001 07:13:23 -0000	1.1.1.1
++++ src/generator/smimake.c	19 Mar 2007 08:51:34 -0000
+@@ -1,4 +1,22 @@
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++
++void usage()
++{
++  	printf("\nsmiMake [options] file\n\n");
++	printf("DESCRIPTION:\n");
++	printf("\tsmiMake Optionally generates Proxy skelettons\n"); 
++	printf("\tand include files containing SMI object headers\n");
++	printf("\tthen preprocesses and translates the \".SML\" code\n");
++	printf("\tPossible Options:\n");
++	printf("\t\t-gp\tGenerate Proxies\n");
++	printf("\t\t-gi\tGenerate include files for SMI objects\n");
++	printf("\t\t-c\t(if -gp)Generate Proxies in \"C\" \n");
++	printf("\t\t-C\t(if -gp)Generate Proxies in \"C++\" (default)\n");
++	printf("\t\t-m\t(if -gp)Generate a makefile for the proxies\n");
++	exit(1);
++}
+ 
+ main(argc,argv)
+ int argc;
+@@ -15,37 +33,12 @@
+ char cmnd_path[128];
+ int gen_flag = 0;
+ int ret;
++int verbose = 0;
+ 
+ 	if(argc < 2)
+ 	{
+-		printf("\nsmiMake [options] file\n\n");
+-		printf("DESCRIPTION:\n");
+-		printf("\tsmiMake Optionally generates Proxy skelettons\n"); 
+-		printf("\tand include files containing SMI object headers\n");
+-		printf("\tthen preprocesses and translates the \".SML\" code\n");
+-		printf("\tPossible Options:\n");
+- 		printf("\t\t-gp\tGenerate Proxies\n");
+- 		printf("\t\t-gi\tGenerate include files for SMI objects\n");
+- 		printf("\t\t-c\t(if -gp)Generate Proxies in \"C\" \n");
+-		printf("\t\t-C\t(if -gp)Generate Proxies in \"C++\" (default)\n");
+-		printf("\t\t-m\t(if -gp)Generate a makefile for the proxies\n");
+- 		exit(1);
++	  	usage();
+ 	}
+-#ifdef unix 
+-
+-	if( (ptr = getenv("SMIDIR")) == NULL )
+-	{
+-		printf("Environment variable SMIDIR not defined\n");
+-		exit(0);
+-	}
+-	strcpy(smidir,ptr);
+-	if( (ptr = getenv("XDIR")) == NULL )
+-	{
+-		printf("Environment variable XDIR not defined\n");
+-		exit(0);
+-	}
+-	strcpy(xdir,ptr);
+-#endif
+ 	strcpy(cmnd,"smiGen");
+ 	for(i = 1; i < argc; i++)
+ 	{
+@@ -54,6 +47,8 @@
+ 		{
+ 			switch(strin[1])
+ 			{
++			  	case 'v': verbose = 1; break;	
++			  	case 'h': usage(); break;
+ 				case 'g':
+ 					if(strin[2] == 'p')
+ 					{
+@@ -85,7 +80,9 @@
+ 	}
+ 	for(i = 0; i < strlen(path); i++)
+ 	{
++#ifndef unix
+ 		path[i] = tolower(path[i]);
++#endif
+ 		if((path[i] == '/') || (path[i] == ']'))
+ 			index = i+1;
+ 	}	
+@@ -101,18 +98,13 @@
+ 	strcat(cmnd,path);
+ 	strcat(cmnd,in_file);
+ 	strcat(cmnd,ext);
+-/*
+-	printf("Executing : %s\n",cmnd);
+-*/
+-#ifdef unix
+-	sprintf(cmnd_path,"%s/generator/%s/%s",smidir,xdir,cmnd);
+-	ret = system(cmnd_path);
+-#else
++
++	if (verbose) printf("Executing : %s\n",cmnd);
+ 	ret = system(cmnd);
+-#endif
++
+ 	if(ret > 1)
+ 		exit(0);
+-	printf("Creating : %s%s.sobj\n",path,in_file);
++	if (verbose) printf("Creating : %s%s.sobj\n",path,in_file);
+ 	strcpy(cmnd,"smiPreproc ");
+ 	strcat(cmnd,path);
+ 	strcat(cmnd,in_file);
+@@ -121,36 +113,24 @@
+ 	strcat(cmnd,path);
+ 	strcat(cmnd,in_file);
+ 	strcat(cmnd,".smi");
+-/*
+-	printf("Executing : %s\n",cmnd);
+-*/
+-#ifdef unix
+-	sprintf(cmnd_path,"%s/preprocessor/%s/%s",smidir,xdir,cmnd);
+-	ret = system(cmnd_path);
+-#else
++
++	if (verbose) printf("Executing : %s\n",cmnd);
+ 	ret = system(cmnd);
+-#endif
+-#ifdef unix
+-	strcpy(cmnd,"smiTransf ");
+-#else
++
+ 	strcpy(cmnd,"smiTrans ");
+-#endif
+ 	strcat(cmnd,path);
+ 	strcat(cmnd,in_file);
+ 	strcat(cmnd,".smi");
+-/*
+-	printf("Executing : %s\n",cmnd);
+-*/
++
+ #ifdef unix
+ 	sprintf(cmnd_path,"rm %s%s.sobj",path,in_file);
++	if (verbose) printf("Executing : %s\n",cmnd_path);
+ 	ret = system(cmnd_path);
+ #endif
+-#ifdef unix
+-	sprintf(cmnd_path,"%s/ftranslator/%s/%s",smidir,xdir,cmnd);
+-	ret = system(cmnd_path);
+-#else
++
++	if (verbose) printf("Executing : %s\n",cmnd);
+ 	ret = system(cmnd);
+-#endif
++
+ 	if(strcmp(ext,".smi"))
+ 	{
+ #ifdef unix
+@@ -158,6 +138,7 @@
+ #else
+ 		sprintf(cmnd_path,"del %s%s.smi",path,in_file);
+ #endif
++		if (verbose) printf("Executing : %s\n",cmnd_path);
+ 		ret = system(cmnd_path);
+ 	}
+ }
+Index: src/utilities/getObjectState.cxx
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/utilities/getObjectState.cxx,v
+retrieving revision 1.1
+diff -w -u -r1.1 getObjectState.cxx
+--- src/utilities/getObjectState.cxx	25 Nov 2004 15:58:19 -0000	1.1
++++ src/utilities/getObjectState.cxx	19 Mar 2007 08:51:34 -0000
+@@ -22,6 +22,9 @@
+         cerr << "Error No object specified" << endl;
+         exit(1);
+     }
++    if ( argc > 2) {
++        putenv("DIM_DNS_NODE", argv[2]);
++    }
+     
+     if ( getenv("DIM_DNS_NODE") == 0 ) {
+         cerr << "***Error getObjectState DIM_DNS_NODE is undefined" << endl;
+Index: src/utilities/monObjectState.cxx
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/utilities/monObjectState.cxx,v
+retrieving revision 1.1
+diff -w -u -r1.1 monObjectState.cxx
+--- src/utilities/monObjectState.cxx	25 Nov 2004 15:58:19 -0000	1.1
++++ src/utilities/monObjectState.cxx	19 Mar 2007 08:51:34 -0000
+@@ -46,6 +46,10 @@
+         exit(1);
+     }
+     
++    if ( argc > 2) {
++        putenv("DIM_DNS_NODE", argv[2]);
++    }
++    
+     if ( getenv("DIM_DNS_NODE") == 0 ) {
+         cerr << "***Error getObjectState DIM_DNS_NODE is undefined" << endl;
+         exit(11);
+Index: src/utilities/monObjects.cxx
+===================================================================
+RCS file: /local/reps/lhcbonline/smixx/src/utilities/monObjects.cxx,v
+retrieving revision 1.5
+diff -w -u -r1.5 monObjects.cxx
+--- src/utilities/monObjects.cxx	20 Jan 2006 13:45:43 -0000	1.5
++++ src/utilities/monObjects.cxx	19 Mar 2007 08:51:34 -0000
+@@ -247,6 +247,10 @@
+     }
+ // This is the real thing...check the dns server
+     
++    if ( argc > 3) {
++        putenv("DIM_DNS_NODE", argv[3]);
++    }
++    
+     if ( getenv("DIM_DNS_NODE") == 0 ) {
+         cerr << "***Error monObjects DIM_DNS_NODE is undefined" << endl;
+         exit(11);
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/configure.ac smixx/configure.ac
--- smixx_web/configure.ac	1970-01-01 01:00:00.000000000 +0100
+++ smixx/configure.ac	2007-03-19 10:12:50.000000000 +0100
@@ -0,0 +1,95 @@
+dnl
+dnl
+dnl
+AC_INIT([State Management Interface], [31.01], [Clara.Gaspar@cern.ch], smixx)
+AC_PREREQ(2.50)
+AC_CONFIG_AUX_DIR(config)
+AC_CANONICAL_TARGET
+AM_INIT_AUTOMAKE([foreign subdir-objects])
+sovers=1
+AC_SUBST(sovers)
+
+dnl
+dnl __________________________________________________________________
+AC_PROG_CC
+AM_PROG_CC_C_O
+AC_PROG_CXX
+AC_PROG_LIBTOOL
+
+case $target_os in 
+sun*)
+	AC_DEFINE([sunos])
+	;;
+solaris*)
+	AC_DEFINE([solaris])
+	;;
+hp-ux*)
+	AC_DEFINE([hpux])
+	AC_DEFINE([defBool])
+	CXXFLAGS="$CXXFLAGS +a1"
+	;;		      
+osf*)
+	AC_DEFINE([osf])
+	;;
+aix*)	
+	AC_DEFINE([aix])
+	AC_DEFINE([unix])
+	AC_DEFINE([_BSD])
+	;;
+lynxos*)
+	AC_DEFINE([LYNXOS])
+	AC_DEFINE([unix])
+	case $target_cpu in 
+	rs6000)
+		AC_DEFINE([RAID])
+		;;
+	esac
+	;;
+linux*)
+	AC_DEFINE([unix])
+	AC_DEFINE([linux])
+	;;
+*)
+	;;
+esac
+
+dnl
+dnl __________________________________________________________________
+AC_ROOT_DIM([15.0],,[AC_MSG_ERROR([I need DIM])])
+AC_PATH_XTRA
+
+# should be 3101
+SMIXX_VERSION=`echo $VERSION | \
+         awk 'BEGIN { FS = "."; } \
+	   { printf "%d", ($''1 * 100 + $''2);}'`
+# should be v31r1
+SMIXX_TAG=`echo $VERSION | \
+         awk 'BEGIN { FS = "."; } { printf "v%dr%d", $''1, $''2;}'`
+SMIXX_DATE=`date +%d-%B-%Y:%H:%M`
+AC_SUBST(SMIXX_VERSION)
+AC_SUBST(SMIXX_TAG)
+AC_SUBST(SMIXX_DATE)
+AC_MSG_NOTICE(SMIXX_VERSION=$SMIXX_VERSION SMIXX_TAG=$SMIXX_TAG)
+
+AC_OPTIMIZATION
+AC_DEBUG
+
+dnl __________________________________________________________________
+AC_CONFIG_FILES([Makefile 
+		 src/Makefile 
+		 smixx/Makefile 
+		 smixx/version.h
+		 src/preprocessor/version.hxx
+		 src/stateManager/version.hxx
+		 src/tclTkGUI/smiTclGui
+		 src/tclTkGUI/main.tcl
+		 src/EXAMPLES/run_control/runit
+		 support/Makefile
+		 support/smixx-config
+		 support/smixx.spec
+		 debian/Makefile
+		 Visual/Makefile])
+AC_OUTPUT
+dnl
+dnl EOF
+dnl
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/Makefile.am smixx/debian/Makefile.am
--- smixx_web/debian/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/Makefile.am	2007-03-29 17:32:23.000000000 +0200
@@ -0,0 +1,45 @@
+#
+#
+#
+EXTRA_DIST	= Makefile.am				\
+		  README.Debian				\
+		  changelog				\
+		  compat				\
+		  control				\
+		  copyright				\
+		  docs					\
+		  $(PACKAGE)-bin.install		\
+		  $(PACKAGE)-bin.dirs			\
+		  lib$(PACKAGE)-dev.examples		\
+		  lib$(PACKAGE)-dev.install		\
+		  lib$(PACKAGE)-dev.dirs		\
+		  lib$(PACKAGE)$(sovers).install	\
+		  lib$(PACKAGE)$(sovers).dirs		\
+		  rules
+
+prep:	
+	rm -f 	control				\
+		lib$(PACKAGE)?.dirs		\
+		lib$(PACKAGE)?.install
+	$(MAKE)	control 			\
+		lib$(PACKAGE)$(sovers).dirs	\
+		lib$(PACKAGE)$(sovers).install
+
+control:control.in
+	sed 's/<sovers>/$(sovers)/g' < $< > $@ 
+
+lib$(PACKAGE)$(sovers).dirs:lib$(PACKAGE).dirs.in 
+	sed 's/<sovers>/$(sovers)/g' < $< > $@ 
+
+lib$(PACKAGE)$(sovers).install:lib$(PACKAGE).install.in 
+	sed 's/<sovers>/$(sovers)/g' < $< > $@ 
+
+clean-local:
+	rm -rf 	lib$(PACKAGE)? 		\
+		lib$(PACKAGE)-dev 	\
+		$(PACKAGE)-bin		\
+		tmp
+
+#
+#
+# 
\ No newline at end of file
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/README.Debian smixx/debian/README.Debian
--- smixx_web/debian/README.Debian	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/README.Debian	2006-05-14 19:10:29.000000000 +0200
@@ -0,0 +1,7 @@
+smixx for Debian
+----------------
+
+- Documentation is available at the SMI++ web-site at http://cern.ch/smi
+
+
+ -- Christian Holm Christensen <cholm@nbi.dk>, Sun, 14 May 2006 19:01:33 +0200
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/changelog smixx/debian/changelog
--- smixx_web/debian/changelog	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/changelog	2007-03-19 10:44:08.000000000 +0100
@@ -0,0 +1,12 @@
+smixx (31.01-1) unstable; urgency=low
+
+  * New upstream version  
+
+ -- Christian Holm Christensen <cholm@nbi.dk>  Mon, 19 Mar 2007 10:43:54 +0100
+
+smixx (13.0-1) unstable; urgency=low
+
+  * Initial release Closes: #nnnn  (nnnn is the bug number of your ITP)
+
+ -- Christian Holm Christensen <cholm@nbi.dk>  Sun, 14 May 2006 19:01:33 +0200
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/compat smixx/debian/compat
--- smixx_web/debian/compat	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/compat	2006-05-14 19:01:34.000000000 +0200
@@ -0,0 +1 @@
+4
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/control smixx/debian/control
--- smixx_web/debian/control	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/control	2007-03-29 17:51:36.000000000 +0200
@@ -0,0 +1,65 @@
+Source: smixx
+Section: misc
+Priority: optional
+Maintainer: Christian Holm Christensen <cholm@nbi.dk>
+Build-Depends: debhelper (>= 4.0.0), autotools-dev, lesstif2-dev | libmotif-dev, libx11-dev, libxt-dev, libdim-dev, c++-compiler
+Standards-Version: 3.7.2
+
+Package: smixx-bin
+Architecture: any
+Section: misc
+Depends: ${shlibs:Depends}
+Description: Framework distributed control systems - tools
+ SMI++ is a framework for designing and implementing distributed
+ control systems. SMI++ is based on the original State Manager concept
+ which was developed by the DELPHI experiment in collaboration with
+ the DD/OC group of CERN. 
+ .
+ In this concept, a real-world system is described in terms of objects
+ behaving as Finite State Machines. SMI++ objects can run in a variety
+ of platforms all communications being handled transparently by an
+ underlying communication system - DIM.
+ .
+ This package provides run-time and development tools.
+ .
+ Web-page: http://cern.ch/smi
+ 
+Package: libsmixx1
+Architecture: any
+Section: libs
+Depends: ${shlibs:Depends}
+Description: Framework distributed control systems - libraries
+ SMI++ is a framework for designing and implementing distributed
+ control systems. SMI++ is based on the original State Manager concept
+ which was developed by the DELPHI experiment in collaboration with
+ the DD/OC group of CERN. 
+ .
+ In this concept, a real-world system is described in terms of objects
+ behaving as Finite State Machines. SMI++ objects can run in a variety
+ of platforms all communications being handled transparently by an
+ underlying communication system - DIM.
+ .
+ This package provides the run-time libraries.
+ .
+ Web-page: http://cern.ch/smi
+
+Package: libsmixx-dev
+Architecture: any
+Section: libdevel
+Depends: libsmixx1  (= ${Source-Version}), ${shlibs:Depends}, libdim-dev
+Description: Framework distributed control systems - development files
+ SMI++ is a framework for designing and implementing distributed
+ control systems. SMI++ is based on the original State Manager concept
+ which was developed by the DELPHI experiment in collaboration with
+ the DD/OC group of CERN. 
+ .
+ In this concept, a real-world system is described in terms of objects
+ behaving as Finite State Machines. SMI++ objects can run in a variety
+ of platforms all communications being handled transparently by an
+ underlying communication system - DIM.
+ .
+ This package provides the development files and tools.
+ .
+ Web-page: http://cern.ch/smi
+
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/control.in smixx/debian/control.in
--- smixx_web/debian/control.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/control.in	2007-03-29 17:34:12.000000000 +0200
@@ -0,0 +1,65 @@
+Source: smixx
+Section: misc
+Priority: optional
+Maintainer: Christian Holm Christensen <cholm@nbi.dk>
+Build-Depends: debhelper (>= 4.0.0), autotools-dev, lesstif2-dev | libmotif-dev, libx11-dev, libxt-dev, libdim-dev, c++-compiler
+Standards-Version: 3.7.2
+
+Package: smixx-bin
+Architecture: any
+Section: misc
+Depends: ${shlibs:Depends}
+Description: Framework distributed control systems - tools
+ SMI++ is a framework for designing and implementing distributed
+ control systems. SMI++ is based on the original State Manager concept
+ which was developed by the DELPHI experiment in collaboration with
+ the DD/OC group of CERN. 
+ .
+ In this concept, a real-world system is described in terms of objects
+ behaving as Finite State Machines. SMI++ objects can run in a variety
+ of platforms all communications being handled transparently by an
+ underlying communication system - DIM.
+ .
+ This package provides run-time and development tools.
+ .
+ Web-page: http://cern.ch/smi
+ 
+Package: libsmixx<sovers>
+Architecture: any
+Section: libs
+Depends: ${shlibs:Depends}
+Description: Framework distributed control systems - libraries
+ SMI++ is a framework for designing and implementing distributed
+ control systems. SMI++ is based on the original State Manager concept
+ which was developed by the DELPHI experiment in collaboration with
+ the DD/OC group of CERN. 
+ .
+ In this concept, a real-world system is described in terms of objects
+ behaving as Finite State Machines. SMI++ objects can run in a variety
+ of platforms all communications being handled transparently by an
+ underlying communication system - DIM.
+ .
+ This package provides the run-time libraries.
+ .
+ Web-page: http://cern.ch/smi
+
+Package: libsmixx-dev
+Architecture: any
+Section: libdevel
+Depends: libsmixx<sovers>  (= ${Source-Version}), ${shlibs:Depends}, libdim-dev
+Description: Framework distributed control systems - development files
+ SMI++ is a framework for designing and implementing distributed
+ control systems. SMI++ is based on the original State Manager concept
+ which was developed by the DELPHI experiment in collaboration with
+ the DD/OC group of CERN. 
+ .
+ In this concept, a real-world system is described in terms of objects
+ behaving as Finite State Machines. SMI++ objects can run in a variety
+ of platforms all communications being handled transparently by an
+ underlying communication system - DIM.
+ .
+ This package provides the development files and tools.
+ .
+ Web-page: http://cern.ch/smi
+
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/copyright smixx/debian/copyright
--- smixx_web/debian/copyright	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/copyright	2006-05-14 21:12:54.000000000 +0200
@@ -0,0 +1,28 @@
+This package was debianized by Christian Holm Christensen <cholm@nbi.dk> on
+Sun, 14 May 2006 19:01:33 +0200.
+
+It was downloaded from http://cern.ch/smi
+
+Copyright Holder: Bohumil Franek <b.franek@rl.ac.uk> and Clara
+		  Gaspar <Clara.Gaspar@cern.ch>
+
+
+License:
+
+   This package is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This package is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this package; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
+
+On Debian systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL'.
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/docs smixx/debian/docs
--- smixx_web/debian/docs	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/docs	2006-05-14 19:01:34.000000000 +0200
@@ -0,0 +1 @@
+README
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/files smixx/debian/files
--- smixx_web/debian/files	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/files	2007-03-29 18:09:00.000000000 +0200
@@ -0,0 +1,3 @@
+smixx-bin_31.01-1_i386.deb misc optional
+libsmixx1_31.01-1_i386.deb libs optional
+libsmixx-dev_31.01-1_i386.deb libdevel optional
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx-dev.dirs smixx/debian/libsmixx-dev.dirs
--- smixx_web/debian/libsmixx-dev.dirs	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx-dev.dirs	2007-03-29 17:31:29.000000000 +0200
@@ -0,0 +1,6 @@
+usr/lib
+usr/include
+usr/bin
+usr/share/man/man1
+usr/lib/pkgconfig
+usr/share/aclocal
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx-dev.examples smixx/debian/libsmixx-dev.examples
--- smixx_web/debian/libsmixx-dev.examples	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx-dev.examples	2006-05-15 00:01:22.000000000 +0200
@@ -0,0 +1,9 @@
+src/EXAMPLES/run_control/config_MINI_RUN.dat
+src/EXAMPLES/run_control/evt_builder.c
+src/EXAMPLES/run_control/evt_builder_cpp.cxx
+src/EXAMPLES/run_control/logger.c
+src/EXAMPLES/run_control/logger.hxx
+src/EXAMPLES/run_control/logger_cpp.cxx
+src/EXAMPLES/run_control/run_con.smi
+src/EXAMPLES/run_control/runit
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx-dev.install smixx/debian/libsmixx-dev.install
--- smixx_web/debian/libsmixx-dev.install	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx-dev.install	2006-05-14 22:39:53.000000000 +0200
@@ -0,0 +1,16 @@
+usr/lib/lib*.so
+usr/lib/lib*.a
+usr/lib/lib*.la
+usr/include/smixx/*
+usr/bin/smixx-config
+usr/bin/smiGen
+usr/bin/smiTrans
+usr/bin/smiPreproc
+usr/bin/smimake
+usr/share/man/man1/smixx-config.1
+usr/share/man/man1/smiGen.1
+usr/share/man/man1/smiTrans.1
+usr/share/man/man1/smiPreproc.1
+usr/share/man/man1/smimake.1
+usr/share/aclocal/smixx.m4
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx-dev.substvars smixx/debian/libsmixx-dev.substvars
--- smixx_web/debian/libsmixx-dev.substvars	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx-dev.substvars	2007-03-29 18:08:56.000000000 +0200
@@ -0,0 +1 @@
+shlibs:Depends=libc6 (>= 2.3.6-6), libdim1, libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12)
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx.dirs.in smixx/debian/libsmixx.dirs.in
--- smixx_web/debian/libsmixx.dirs.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx.dirs.in	2007-03-29 17:30:44.000000000 +0200
@@ -0,0 +1 @@
+usr/lib
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx.install.in smixx/debian/libsmixx.install.in
--- smixx_web/debian/libsmixx.install.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx.install.in	2006-05-14 19:10:59.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/lib*.so.*
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx1.dirs smixx/debian/libsmixx1.dirs
--- smixx_web/debian/libsmixx1.dirs	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx1.dirs	2007-03-29 17:51:36.000000000 +0200
@@ -0,0 +1 @@
+usr/lib
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx1.install smixx/debian/libsmixx1.install
--- smixx_web/debian/libsmixx1.install	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx1.install	2007-03-29 17:51:36.000000000 +0200
@@ -0,0 +1 @@
+usr/lib/lib*.so.*
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx1.postinst.debhelper smixx/debian/libsmixx1.postinst.debhelper
--- smixx_web/debian/libsmixx1.postinst.debhelper	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx1.postinst.debhelper	2007-03-29 18:06:58.000000000 +0200
@@ -0,0 +1,5 @@
+# Automatically added by dh_makeshlibs
+if [ "$1" = "configure" ]; then
+	ldconfig
+fi
+# End automatically added section
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx1.postrm.debhelper smixx/debian/libsmixx1.postrm.debhelper
--- smixx_web/debian/libsmixx1.postrm.debhelper	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx1.postrm.debhelper	2007-03-29 18:06:58.000000000 +0200
@@ -0,0 +1,5 @@
+# Automatically added by dh_makeshlibs
+if [ "$1" = "remove" ]; then
+	ldconfig
+fi
+# End automatically added section
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/libsmixx1.substvars smixx/debian/libsmixx1.substvars
--- smixx_web/debian/libsmixx1.substvars	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/libsmixx1.substvars	2007-03-29 18:08:12.000000000 +0200
@@ -0,0 +1 @@
+shlibs:Depends=libc6 (>= 2.3.6-6), libdim1, libgcc1 (>= 1:4.1.1-12), libstdc++6 (>= 4.1.1-12)
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/rules smixx/debian/rules
--- smixx_web/debian/rules	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/rules	2007-03-29 17:34:21.000000000 +0200
@@ -0,0 +1,143 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+#
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+#
+# Modified to make a template file for a multi-binary package with separated
+# build-arch and build-indep targets  by Bill Allombert 2001
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# This has to be exported to make some magic below work.
+export DH_OPTIONS
+
+# These are used for cross-compiling and for saving the configure script
+# from having to guess our platform (since we know it already)
+DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+	CFLAGS += -O0
+else
+	CFLAGS += -O2
+endif
+
+config.status: configure
+	dh_testdir
+	# Add here commands to configure the package.
+	CFLAGS="$(CFLAGS) -Wl,-z,defs" \
+		./configure --host=$(DEB_HOST_GNU_TYPE) 	\
+			    --build=$(DEB_BUILD_GNU_TYPE) 	\
+			    --prefix=/usr 			\
+			    --mandir=\$${prefix}/share/man 	\
+			    --infodir=\$${prefix}/share/info
+
+
+#Architecture 
+build: build-arch build-indep
+
+build-arch: build-arch-stamp
+build-arch-stamp:  config.status
+
+	# Add here commands to compile the arch part of the package.
+	#$(MAKE) 
+	touch build-arch-stamp
+
+build-indep: build-indep-stamp
+build-indep-stamp:  config.status
+
+	# Add here commands to compile the indep part of the package.
+	#$(MAKE) doc
+	touch build-indep-stamp
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -f build-arch-stamp build-indep-stamp #CONFIGURE-STAMP#
+
+	# Add here commands to clean up after the build process.
+	-$(MAKE) distclean
+ifneq "$(wildcard /usr/share/misc/config.sub)" ""
+	cp -f /usr/share/misc/config.sub config.sub
+endif
+ifneq "$(wildcard /usr/share/misc/config.guess)" ""
+	cp -f /usr/share/misc/config.guess config.guess
+endif
+
+
+	dh_clean 
+
+install: install-indep install-arch
+install-indep:
+	dh_testdir
+	dh_testroot
+	dh_clean -k -i 
+	dh_installdirs -i
+
+	# Add here commands to install the indep part of the package into
+	# debian/<package>-doc.
+	#INSTALLDOC#
+
+	dh_install -i
+
+install-arch:
+	dh_testdir
+	dh_testroot
+	dh_clean -k -s 
+	dh_installdirs -s
+
+	# Add here commands to install the arch part of the package into 
+	# debian/tmp.
+	$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+
+	dh_install -s --sourcedir=$(CURDIR)/debian/tmp --list-missing
+
+# Must not depend on anything. This is to be called by
+# binary-arch/binary-indep
+# in another 'make' thread.
+binary-common:
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs 
+	dh_installdocs
+	dh_installexamples
+#	dh_installmenu
+#	dh_installdebconf	
+#	dh_installlogrotate	
+#	dh_installemacsen
+#	dh_installpam
+#	dh_installmime
+#	dh_installinit
+#	dh_installcron
+#	dh_installinfo
+	dh_installman
+	dh_link
+	dh_strip
+	dh_compress 
+	dh_fixperms
+#	dh_perl
+#	dh_python
+	dh_makeshlibs -V
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+# Build architecture independant packages using the common target.
+binary-indep: build-indep install-indep
+#	$(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
+
+# Build architecture dependant packages using the common target.
+binary-arch: build-arch install-arch
+	$(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
+
+binary: binary-arch binary-indep
+.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/smixx-bin.dirs smixx/debian/smixx-bin.dirs
--- smixx_web/debian/smixx-bin.dirs	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/smixx-bin.dirs	2007-03-29 17:34:47.000000000 +0200
@@ -0,0 +1,2 @@
+usr/bin
+usr/share/man/man1
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/smixx-bin.install smixx/debian/smixx-bin.install
--- smixx_web/debian/smixx-bin.install	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/smixx-bin.install	2006-05-14 23:37:46.000000000 +0200
@@ -0,0 +1,8 @@
+usr/bin/smiSM
+usr/bin/smiGUI
+usr/bin/smiSendCommand
+usr/bin/smiKill
+usr/share/man/man1/smiSM.1
+usr/share/man/man1/smiGUI.1
+usr/share/man/man1/smiSendCommand.1
+usr/share/man/man1/smiKill.1
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/debian/smixx-bin.substvars smixx/debian/smixx-bin.substvars
--- smixx_web/debian/smixx-bin.substvars	1970-01-01 01:00:00.000000000 +0100
+++ smixx/debian/smixx-bin.substvars	2007-03-29 18:07:45.000000000 +0200
@@ -0,0 +1 @@
+shlibs:Depends=lesstif2, libc6 (>= 2.3.6-6), libdim1, libgcc1 (>= 1:4.1.1-12), libsmixx1 (>= 31.01), libstdc++6 (>= 4.1.1-12), libx11-6, libxt6
Binary files smixx_web/linux/dnsDebugging and smixx/linux/dnsDebugging differ
Binary files smixx_web/linux/dnsExists and smixx/linux/dnsExists differ
Binary files smixx_web/linux/dnsRunning and smixx/linux/dnsRunning differ
Binary files smixx_web/linux/getDimVersions and smixx/linux/getDimVersions differ
Binary files smixx_web/linux/getObjectState and smixx/linux/getObjectState differ
Binary files smixx_web/linux/libsmi.a and smixx/linux/libsmi.a differ
Binary files smixx_web/linux/libsmi.so and smixx/linux/libsmi.so differ
Binary files smixx_web/linux/libsmiui.a and smixx/linux/libsmiui.a differ
Binary files smixx_web/linux/libsmiui.so and smixx/linux/libsmiui.so differ
Binary files smixx_web/linux/monObjectState and smixx/linux/monObjectState differ
Binary files smixx_web/linux/shellcmd and smixx/linux/shellcmd differ
Binary files smixx_web/linux/smiGUI and smixx/linux/smiGUI differ
Binary files smixx_web/linux/smiGen and smixx/linux/smiGen differ
Binary files smixx_web/linux/smiKill and smixx/linux/smiKill differ
Binary files smixx_web/linux/smiPreproc and smixx/linux/smiPreproc differ
Binary files smixx_web/linux/smiSM and smixx/linux/smiSM differ
Binary files smixx_web/linux/smiSendCommand and smixx/linux/smiSendCommand differ
Binary files smixx_web/linux/smiTrans and smixx/linux/smiTrans differ
Binary files smixx_web/linux/smi_send_command and smixx/linux/smi_send_command differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile smixx/makefile
--- smixx_web/makefile	2002-07-30 13:51:04.000000000 +0200
+++ smixx/makefile	1970-01-01 01:00:00.000000000 +0100
@@ -1,31 +0,0 @@
-#
-# global makefile
-#
-
-
-all:
-	echo " "; echo " " ; echo ==rtl==; gmake -f makefile_rtl all
-	echo " "; echo " " ; echo ==generator==; gmake -f makefile_generator all
-	echo " "; echo " " ; echo ==preprocessor==; gmake -f makefile_preprocessor all
-	echo " "; echo " " ; echo ==stateManager==; gmake -f makefile_stateManager all
-	echo " "; echo " " ; echo ==translator==; gmake -f makefile_translator all
-	echo " "; echo " " ; echo ==gui==; gmake -f makefile_gui all
-	echo " "; echo " " ; echo ==utilities==; gmake -f makefile_utilities all
-
-
-clean:
-	gmake -f makefile_rtl clean
-	gmake -f makefile_generator clean
-	gmake -f makefile_preprocessor clean
-	gmake -f makefile_stateManager clean
-	gmake -f makefile_translator clean
-	gmake -f makefile_gui clean
-	gmake -f makefile_utilities clean
-
-
-
-
-
-
-
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_generator smixx/makefile_generator
--- smixx_web/makefile_generator	2002-07-29 16:32:18.000000000 +0200
+++ smixx/makefile_generator	1970-01-01 01:00:00.000000000 +0100
@@ -1,39 +0,0 @@
-#
-CC = cc
-MAKE = gmake
-
-CFLAGS = $(FLAGS) -g -I$(SMIDIR)/smixx -I$(DIMDIR)/dim
-SDIR = ./src/generator
-GEN_EXTRALIBS =
-
-ifeq ($(OS),SunOS)
-	CFLAGS += -Dsunos 
-endif
-ifeq ($(OS),Solaris)
-	CFLAGS += -Dsolaris 
-	GEN_EXTRALIBS = -lpthread -lposix4 -lsocket -lnsl
-endif
-ifeq ($(OS),HP-UX)
-	CFLAGS += -Dhpux
-endif
-ifeq ($(OS),OSF1)
-	CFLAGS += -Dosf
-endif
-ifeq ($(OS),AIX)
-	CFLAGS += -Dunix -D_BSD -Daix
-endif
-ifeq ($(OS),Linux)
-	CFLAGS += -Dunix -Dlinux
-	GEN_EXTRALIBS = -lpthread
-endif
-
-all:	clean $(ODIR)/smiGen
-
-$(ODIR)/smiGen: $(SDIR)/generator.c
-	$(CC) $(CFLAGS) $(SDIR)/generator.c -o $(ODIR)/smiGen -L$(DIMDIR)/$(ODIR) -ldim $(GEN_EXTRALIBS)
-
-$(ODIR)/smiMake: $(SDIR)/smimake.c
-	$(CC) $(CFLAGS) $(SDIR)/smimake.c -o $(ODIR)/smiMake
-
-clean:
-	rm -f $(ODIR)/*.o $(ODIR)/smiGen $(ODIR)/smiMake
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_gui smixx/makefile_gui
--- smixx_web/makefile_gui	2004-09-20 19:32:30.000000000 +0200
+++ smixx/makefile_gui	1970-01-01 01:00:00.000000000 +0100
@@ -1,76 +0,0 @@
-CC = cc
-MAKE = gmake
-CFLAGS = -g -I./source -I./smixx -I$(DIMDIR)/dim -I$(MOTIFINC) -I$(X11INC) -L$(MOTIFLIB) -L$(X11LIB) $(EXTRAMOTIFFLAGS)
-UILC = uil
-EXTRALIBS =
-MORE_FLAGS = -lMrm 
-SDIR = ./src/gui
-#
-GUI_EXTRALIBS = $(EXTRALIBS)
-EXTRAMOTIFFLAGS = 
-
-ifeq ($(OS),SunOS)
-	MOTIFINC = /usr/motif/include
-	MOTIFLIB = /usr/motif/lib
-	X11INC = /usr/X11R5/include/X11
-	X11LIB = /usr/X11R5/lib
-	UILC = /usr/motif/bin/uil
-	override CFLAGS += -Dsunos 
-endif
-ifeq ($(OS),Solaris)
-	MOTIFINC = /usr/dt/include
-	MOTIFLIB = /usr/dt/lib
-	X11INC = /usr/openwin/include
-	X11LIB = /usr/openwin/lib
-#	UILC = /usr/local/motif/bin/uil
-#	UILC = /usr/dt/bin/uil
-	override CFLAGS += -mt -Dsolaris 
-	MORE_FLAGS = -R$(MOTIFLIB):$(X11LIB) -lMrm
-	GUI_EXTRALIBS += -lpthread -lposix4 -lsocket -lnsl
-endif
-ifeq ($(OS),HP-UX)
-	MOTIFINC = /usr/include/Motif1.2
-	MOTIFLIB = /usr/lib/Motif1.2
-	X11INC = /usr/include/X11R5
-	X11LIB = /usr/lib/X11R5
-	MORE_FLAGS = -l:libMrm.a
-	override CFLAGS += -Dhpux
-endif
-ifeq ($(OS),OSF1)
-	MOTIFINC = .
-	MOTIFLIB = .
-	X11INC = .
-	X11LIB = .
-	CFLAGS = -g -I. -I$(DIMDIR) -Dosf
-endif
-ifeq ($(OS),AIX)
-	MOTIFINC = /usr/include/Motif1.2
-	MOTIFLIB = /usr/lib/Motif1.2
-	X11INC = /usr/include/X11R5
-	X11LIB = /usr/lib/X11R5
-	override CFLAGS += -Dunix -D_BSD -Daix
-endif
-ifeq ($(OS),Linux)
-	MOTIFINC = /usr/local/include
-	MOTIFLIB = /usr/local/lib
-	X11INC = /usr/X11R6/include
-	X11LIB = /usr/X11R6/lib
-	MORE_FLAGS = -lXp -lXext -lMrm
-	GUI_EXTRALIBS += -lpthread
-	override CFLAGS += -Dlinux
-endif
-
-all:	clean $(ODIR)/smiGUI
-
-$(ODIR)/dui_util.o:	$(SDIR)/dui_util.c $(SDIR)/dui_util.h
-	$(CC) $(CFLAGS) -o $(ODIR)/dui_util.o -c $(SDIR)/dui_util.c
-
-$(ODIR)/smid.o:	$(SDIR)/smid.c $(SDIR)/smid.h
-	$(CC) $(CFLAGS) -o $(ODIR)/smid.o -c $(SDIR)/smid.c
-
-$(ODIR)/smiGUI: $(ODIR)/smid.o $(ODIR)/dui_util.o 
-	$(CC) $(CFLAGS) $(ODIR)/smid.o $(ODIR)/dui_util.o -L$(SMIDIR)/$(ODIR) -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(MORE_FLAGS) -lXm -lXt -lX11 $(GUI_EXTRALIBS) -o $(ODIR)/smiGUI
-
-.PHONY : clean
-clean :
-	rm -f $(ODIR)/*.o $(ODIR)/smiGUI
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_gui_old smixx/makefile_gui_old
--- smixx_web/makefile_gui_old	2003-12-15 15:27:38.000000000 +0100
+++ smixx/makefile_gui_old	1970-01-01 01:00:00.000000000 +0100
@@ -1,75 +0,0 @@
-CC = cc
-MAKE = gmake
-CFLAGS = -g -I./source -I./smixx -I$(DIMDIR)/dim -I$(MOTIFINC) -I$(X11INC) -L$(MOTIFLIB) -L$(X11LIB)
-UILC = uil
-EXTRALIBS =
-MORE_FLAGS = -lMrm 
-SDIR = ./src/gui
-#
-GUI_EXTRALIBS = $(EXTRALIBS)
-
-ifeq ($(OS),SunOS)
-	MOTIFINC = /usr/motif/include
-	MOTIFLIB = /usr/motif/lib
-	X11INC = /usr/X11R5/include/X11
-	X11LIB = /usr/X11R5/lib
-	UILC = /usr/motif/bin/uil
-	override CFLAGS += -Dsunos 
-endif
-ifeq ($(OS),Solaris)
-	MOTIFINC = /usr/dt/include
-	MOTIFLIB = /usr/dt/lib
-	X11INC = /usr/openwin/include
-	X11LIB = /usr/openwin/lib
-#	UILC = /usr/local/motif/bin/uil
-#	UILC = /usr/dt/bin/uil
-	override CFLAGS += -mt -Dsolaris 
-	MORE_FLAGS = -R$(MOTIFLIB):$(X11LIB) -lMrm
-	GUI_EXTRALIBS += -lpthread -lposix4 -lsocket -lnsl
-endif
-ifeq ($(OS),HP-UX)
-	MOTIFINC = /usr/include/Motif1.2
-	MOTIFLIB = /usr/lib/Motif1.2
-	X11INC = /usr/include/X11R5
-	X11LIB = /usr/lib/X11R5
-	MORE_FLAGS = -l:libMrm.a
-	override CFLAGS += -Dhpux
-endif
-ifeq ($(OS),OSF1)
-	MOTIFINC = .
-	MOTIFLIB = .
-	X11INC = .
-	X11LIB = .
-	CFLAGS = -g -I. -I$(DIMDIR) -Dosf
-endif
-ifeq ($(OS),AIX)
-	MOTIFINC = /usr/include/Motif1.2
-	MOTIFLIB = /usr/lib/Motif1.2
-	X11INC = /usr/include/X11R5
-	X11LIB = /usr/lib/X11R5
-	override CFLAGS += -Dunix -D_BSD -Daix
-endif
-ifeq ($(OS),Linux)
-	MOTIFINC = /usr/local/include
-	MOTIFLIB = /usr/local/lib
-	X11INC = /usr/X11R6/include
-	X11LIB = /usr/X11R6/lib
-	MORE_FLAGS = -lXp -lXext -lMrm
-	GUI_EXTRALIBS += -lpthread
-	override CFLAGS += -Dlinux
-endif
-
-all:	clean $(ODIR)/smiGUI
-
-$(ODIR)/dui_util.o:	$(SDIR)/dui_util.c $(SDIR)/dui_util.h
-	$(CC) $(CFLAGS) -o $(ODIR)/dui_util.o -c $(SDIR)/dui_util.c
-
-$(ODIR)/smid.o:	$(SDIR)/smid.c $(SDIR)/smid.h
-	$(CC) $(CFLAGS) -o $(ODIR)/smid.o -c $(SDIR)/smid.c
-
-$(ODIR)/smiGUI: $(ODIR)/smid.o $(ODIR)/dui_util.o 
-	$(CC) $(CFLAGS) $(ODIR)/smid.o $(ODIR)/dui_util.o -L$(SMIDIR)/$(ODIR) -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(MORE_FLAGS) -lXm -lXt -lX11 $(GUI_EXTRALIBS) -o $(ODIR)/smiGUI
-
-.PHONY : clean
-clean :
-	rm -f $(ODIR)/*.o $(ODIR)/smiGUI
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_preprocessor smixx/makefile_preprocessor
--- smixx_web/makefile_preprocessor	2004-11-11 14:40:56.000000000 +0100
+++ smixx/makefile_preprocessor	1970-01-01 01:00:00.000000000 +0100
@@ -1,41 +0,0 @@
-
-FLAGS =
-EXTRALIBS =
-CXX = CC
-
-CXXFLAGS = -g -I./smixx -I./src/commonSource $(FLAGS)
-
-ifeq ($(OS),HP-UX) 
-	CXXFLAGS += +a1 -DdefBool
-endif
-
-ifeq ($(OS),Linux)
-        CXX = g++
-endif
-
-srcdir := ./src/preprocessor
-srcs := $(wildcard $(srcdir)/*.cxx)
-objstemp := $(srcs:.cxx=.o)
-objs := $(subst $(srcdir),$(ODIR),$(objstemp))
-
-comsrcdir = ./src/commonSource
-COMODIR := $(ODIR)
-
-comsrcs := $(comsrcdir)/name.cxx $(comsrcdir)/utilities.cxx $(comsrcdir)/nmdptnr.cxx \
-          $(comsrcdir)/nmdptnrvector.cxx $(comsrcdir)/registrar.cxx \
-          $(comsrcdir)/smlline.cxx $(comsrcdir)/smllinevector.cxx
-	  
-comobjstemp := $(comsrcs:.cxx=.o)
-comobjs := $(subst $(comsrcdir),$(COMODIR),$(comobjstemp))
-
-
-$(ODIR)/%.o: $(srcdir)/%.cxx; $(CXX) -c $(CXXFLAGS) $< -o $@
-$(COMODIR)/%.o: $(comsrcdir)/%.cxx; $(CXX) -c $(CXXFLAGS) $< -o $@  
-
-all: clean $(objs) $(comobjs)
-	$(CXX) $(CXXFLAGS) -o $(ODIR)/smiPreproc $(objs) $(comobjs)  $(EXTRALIBS)
-
-.PHONY : clean	
-clean :
-	rm -f $(ODIR)/*.o $(ODIR)/smiPreproc
-	rm -f $(COMODIR)/*.o	
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_rtl smixx/makefile_rtl
--- smixx_web/makefile_rtl	2004-06-24 17:54:22.000000000 +0200
+++ smixx/makefile_rtl	1970-01-01 01:00:00.000000000 +0100
@@ -1,101 +0,0 @@
-#
-#
-CC = cc
-CXX = CC
-MAKE = gmake
-
-RANLIB = ranlib
-EXTRALIBS =
-SDIR = ./src/rtl
-SHAREABLE =
-LIBFLAGS =
-
-OBJS =  $(ODIR)/smirtl.o $(ODIR)/smirtlcpp.o
-OBJSUI =  $(ODIR)/smiuirtl.o $(ODIR)/smiuirtlcpp.o
-
-CFLAGS = $(FLAGS) -g -I./smixx -I$(DIMDIR)/dim
-ifeq ($(OS),SunOS)
-	SHAREABLE = no
-	CFLAGS += -Dsunos 
-endif
-ifeq ($(OS),Solaris)
-	SHAREABLE = no
-	EXTRALIBS = -lpthread -lposix4 -lsocket -lnsl
-	CFLAGS += -mt -Dsolaris -xs
-	RANLIB = echo
-endif
-ifeq ($(OS),HP-UX)
-	SHAREABLE = no
-	CFLAGS += -Dhpux
-endif
-ifeq ($(OS),OSF1)
-	SHAREABLE = no
-	CFLAGS += -Dosf
-endif
-ifeq ($(OS),AIX)
-	SHAREABLE = no
-	CFLAGS += -Dunix -D_BSD -Daix
-endif
-ifeq ($(OS),Linux)
-	CC = gcc
-	CXX = g++
-	CFLAGS += -Dunix -Dlinux
-	EXTRALIBS = -lpthread
-ifneq ($(SHAREABLE),no)
-	SHAREABLE = yes
-	LIBFLAGS += -shared
-endif
-endif
-
-ifeq ($(SHAREABLE),no)
-all:	$(ODIR)/libsmi.a $(ODIR)/libsmiui.a $(ODIR)/smiSendCommand \
-        $(ODIR)/smiKill
-else
-all:	$(ODIR)/libsmi.a $(ODIR)/libsmi.so $(ODIR)/libsmiui.a \
-	$(ODIR)/libsmiui.so $(ODIR)/smiSendCommand $(ODIR)/smiKill
-endif
-
-$(ODIR)/libsmi.a:	$(OBJS)
-	ar crv $(ODIR)/libsmi.a $(OBJS)
-	$(RANLIB) $(ODIR)/libsmi.a
-
-$(ODIR)/libsmiui.a:	$(OBJSUI)
-	ar crv $(ODIR)/libsmiui.a $(OBJSUI) 
-	$(RANLIB) $(ODIR)/libsmiui.a
-
-$(ODIR)/libsmi.so:	$(OBJS)
-	$(CXX) $(LIBFLAGS) $(OBJS) -o $(ODIR)/libsmi.so
-
-$(ODIR)/libsmiui.so:	$(OBJSUI)
-	$(CXX) $(LIBFLAGS) $(OBJSUI) -o $(ODIR)/libsmiui.so
-
-$(ODIR)/smiSendCommand: $(SDIR)/smi_send_command.c $(ODIR)/libsmiui.a
-	$(CC) $(CFLAGS) $(SDIR)/smi_send_command.c -L$(ODIR) \
-              -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) \
-              -o $(ODIR)/smiSendCommand
-	cp $(ODIR)/smiSendCommand $(ODIR)/smi_send_command
-
-$(ODIR)/smiKill: $(SDIR)/smi_kill.c $(ODIR)/libsmiui.a
-	$(CC) $(CFLAGS) $(SDIR)/smi_kill.c -L$(ODIR) \
-              -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) \
-              -o $(ODIR)/smiKill
-
-$(ODIR)/smirtl.o:  $(SDIR)/smirtl.c
-	$(CC) $(CFLAGS) -o $(ODIR)/smirtl.o -c $(SDIR)/smirtl.c
-
-$(ODIR)/smirtlcpp.o:		$(SDIR)/smirtlcpp.cxx
-	$(CXX) $(CFLAGS) -o $(ODIR)/smirtlcpp.o -c $(SDIR)/smirtlcpp.cxx
-
-$(ODIR)/smiuirtl.o:		$(SDIR)/smiuirtl.c
-	$(CC) $(CFLAGS) -o $(ODIR)/smiuirtl.o -c $(SDIR)/smiuirtl.c
-
-$(ODIR)/smiuirtlcpp.o:		$(SDIR)/smiuirtlcpp.cxx
-	$(CXX) $(CFLAGS) -o $(ODIR)/smiuirtlcpp.o -c $(SDIR)/smiuirtlcpp.cxx
-
-
-
-.PHONY : clean
-clean :
-	rm -f $(ODIR)/*.o $(ODIR)/libsmi.a $(ODIR)/libsmiui.a \
-                           $(ODIR)/smiSendCommand $(ODIR)/smiKill
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_stateManager smixx/makefile_stateManager
--- smixx_web/makefile_stateManager	2003-11-14 12:09:08.000000000 +0100
+++ smixx/makefile_stateManager	1970-01-01 01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-FLAGS =
-EXTRALIBS =
-CXX = CC
-
-
-CXXFLAGS = -g -O0 $(FLAGS) -I./src/commonSource -I./smixx -I$(DIMDIR)/dim
-SM_EXTRALIBS = $(EXTRALIBS)
-
-
-ifeq ($(OS),HP-UX) 
-	CXXFLAGS += +a1 -DdefBool
-endif
-
-ifeq ($(OS),Solaris)
-	CXXFLAGS += -mt -xs
-        SM_EXTRALIBS += -lpthread -lposix4 -lsocket -lnsl
-endif
-
-ifeq ($(OS),Linux)
-        SM_EXTRALIBS += -lpthread
-        CXX = g++
-endif
-
-srcdir := ./src/stateManager
-srcs := $(wildcard $(srcdir)/*.cxx)
-objstemp := $(srcs:.cxx=.o)
-objs := $(subst $(srcdir),$(ODIR),$(objstemp))
-
-
-comsrcdir = ./src/commonSource
-COMODIR := $(ODIR)
-
-comsrcs := $(comsrcdir)/name.cxx $(comsrcdir)/namevector.cxx \
-           $(comsrcdir)/registrar.cxx $(comsrcdir)/namelist.cxx \
-           $(comsrcdir)/nmdptnr.cxx $(comsrcdir)/nmdptnrvector.cxx \
-          $(comsrcdir)/smlline.cxx $(comsrcdir)/smllinevector.cxx \
-           $(comsrcdir)/utilities.cxx $(comsrcdir)/nmdptnrlist.cxx
-	  
-comobjstemp := $(comsrcs:.cxx=.o)
-comobjs := $(subst $(comsrcdir),$(COMODIR),$(comobjstemp))
-
-$(ODIR)/%.o: $(srcdir)/%.cxx; $(CXX) -c $(CXXFLAGS) $< -o $@
-$(COMODIR)/%.o: $(comsrcdir)/%.cxx; $(CXX) -c $(CXXFLAGS) $< -o $@  
-
-all:  clean $(objs) $(comobjs)
-	$(CXX) $(CXXFLAGS) -o $(ODIR)/smiSM $(objs) $(comobjs) -L$(DIMDIR)/$(ODIR) -ldim $(SM_EXTRALIBS)
-	
-.PHONY : clean	
-clean :
-	rm -f $(ODIR)/*.o $(ODIR)/smiSM
-	rm -f $(COMODIR)/*.o
-
-
-
-
-
-
-
-
-
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_translator smixx/makefile_translator
--- smixx_web/makefile_translator	2004-11-11 14:40:56.000000000 +0100
+++ smixx/makefile_translator	1970-01-01 01:00:00.000000000 +0100
@@ -1,46 +0,0 @@
-FLAGS =
-EXTRALIBS =
-CXX = CC
-
-CXXFLAGS = -g $(FLAGS) -I./smixx -I./src/commonSource $(FLAGS)
-
-ifeq ($(OS),HP-UX) 
-	CXXFLAGS += +a1 -DdefBool
-endif
-
-ifeq ($(OS),Linux)
-        CXX = g++
-endif
-
-srcdir := ./src/translator
-srcs := $(wildcard $(srcdir)/*.cxx)
-objstemp := $(srcs:.cxx=.o)
-objs := $(subst $(srcdir),$(ODIR),$(objstemp))
-
-
-comsrcdir = ./src/commonSource
-COMODIR := $(ODIR)
-
-comsrcs := $(comsrcdir)/name.cxx $(comsrcdir)/namevector.cxx \
-          $(comsrcdir)/namelist.cxx \
-          $(comsrcdir)/smlline.cxx $(comsrcdir)/smllinevector.cxx \
-          $(comsrcdir)/utilities.cxx $(comsrcdir)/nmdptnr.cxx \
-          $(comsrcdir)/nmdptnrvector.cxx $(comsrcdir)/registrar.cxx
-	  
-comobjstemp := $(comsrcs:.cxx=.o)
-comobjs := $(subst $(comsrcdir),$(COMODIR),$(comobjstemp))
-
-
-$(ODIR)/%.o: $(srcdir)/%.cxx; $(CXX) -c $(CXXFLAGS) $< -o $@
-$(COMODIR)/%.o: $(comsrcdir)/%.cxx; $(CXX) -c $(CXXFLAGS) $< -o $@  
-
-all: clean $(objs) $(comobjs)
-	$(CXX) $(CXXFLAGS) -o $(ODIR)/smiTrans $(objs) $(comobjs)  $(EXTRALIBS)
-
-
-
-	
-.PHONY : clean	
-clean :
-	rm -f $(ODIR)/*.o $(ODIR)/smiTrans
-	rm -f $(COMODIR)/*.o	
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/makefile_utilities smixx/makefile_utilities
--- smixx_web/makefile_utilities	2004-11-25 20:58:18.000000000 +0100
+++ smixx/makefile_utilities	1970-01-01 01:00:00.000000000 +0100
@@ -1,87 +0,0 @@
-FLAGS =
-EXTRALIBS =
-CXX = CC
-
-CXXFLAGS = -g $(FLAGS) -I./smixx -I$(DIMDIR)/dim
-MAKE = gmake
-
-ifeq ($(OS),HP-UX) 
-	CXXFLAGS += +a1 -DdefBool
-endif
-ifeq ($(OS),Solaris)
-	CXXFLAGS += -mt -xs
-	EXTRALIBS = -lpthread -lposix4 -lsocket -lnsl
-endif
-ifeq ($(OS),Linux) 
-	EXTRALIBS = -lpthread
-	CXX = g++
-endif
-
-srcdir = ./src/utilities
-
-all: $(ODIR)/listDomain  $(ODIR)/domainExists \
-     $(ODIR)/proxyExists $(ODIR)/dnsExists $(ODIR)/dnsDebugging \
-     $(ODIR)/shellcmd $(ODIR)/getDimVersions $(ODIR)/getSmiVersions \
-     $(ODIR)/dnsRunning $(ODIR)/getDomains \
-     $(ODIR)/getObjectState $(ODIR)/monObjectState 
-
-$(ODIR)/listDomain: $(srcdir)/listdomain.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/listdomain.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/listDomain 
-
-$(ODIR)/domainExists: $(srcdir)/domainexists.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/domainexists.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/domainExists 
-
-$(ODIR)/proxyExists: $(srcdir)/proxyexists.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/proxyexists.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/proxyExists 
-
-$(ODIR)/dnsExists: $(srcdir)/dnsexists.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/dnsexists.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/dnsExists
-
-$(ODIR)/dnsDebugging: $(srcdir)/dnsdebugging.cxx
-	$(CXX) $(CXXFLAGS) $(srcdir)/dnsdebugging.cxx -L$(DIMDIR)/$(ODIR) \
-        -ldim $(EXTRALIBS) -o $(ODIR)/dnsDebugging 
-
-$(ODIR)/shellcmd: $(srcdir)/shellcmd.c 
-	$(CC)  $(CXXFLAGS) $(srcdir)/shellcmd.c -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmi -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/shellcmd 
-
-$(ODIR)/getDimVersions: $(srcdir)/getDimVersions.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/getDimVersions.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/getDimVersions 
-
-$(ODIR)/getSmiVersions: $(srcdir)/getSmiVersions.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/getSmiVersions.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/getSmiVersions 
-
-$(ODIR)/dnsRunning: $(srcdir)/dnsRunning.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/dnsRunning.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/dnsRunning
-
-$(ODIR)/getDomains: $(srcdir)/getDomains.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/getDomains.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/getDomains 
-
-$(ODIR)/getObjectState: $(srcdir)/getObjectState.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/getObjectState.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/getObjectState 
-
-$(ODIR)/monObjectState: $(srcdir)/monObjectState.cxx 
-	$(CXX)  $(CXXFLAGS) $(srcdir)/monObjectState.cxx -L$(SMIRTLDIR)/$(ODIR) \
-        -lsmiui -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/monObjectState 
-	
- 
-
-
-.PHONY : clean
-clean:
-	rm -f $(ODIR)/*.o $(ODIR)/listDomain $(ODIR)/getOrcDomain \
-                         $(ODIR)/domainExists $(ODIR)/dnsDebugging \
-                         $(ODIR)/proxyExists $(ODIR)/dnsExists $(ODIR)/shellcmd \
-                         $(ODIR)/getDimVersions $(ODIR)/getSmiVersions \
-			 $(ODIR)/dnsRunning $(ODIR)/getDomains
-			 
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/slacMake smixx/slacMake
--- smixx_web/slacMake	2005-08-09 17:57:46.000000000 +0200
+++ smixx/slacMake	1970-01-01 01:00:00.000000000 +0100
@@ -1,63 +0,0 @@
-#! /bin/tcsh -f
-
-setenv DIMDIR /afs/slac.stanford.edu/g/babar/package/dim/v15r3
-
-if ( ${HOST} == bbr-dev20 || ${HOST} == tersk-old ) then
-   setenv OS Solaris
-   setenv BFARCH SunOS58_sparc_WS6U1
-   set CCVAL = /opt/SUNWspro.WS6U1/bin/cc
-   set CXXVAL = /opt/SUNWspro.WS6U1/bin/CC
-else if ( ${HOST} == bbr-dev100 || ${HOST} == noric ) then
-   setenv OS Linux
-   setenv BFARCH Linux24RH72_i386_gcc2953
-   set CCVAL = /afs/slac.stanford.edu/package/gcc/i386_linux2/gcc-2.95.3/bin/gcc
-   set CXXVAL = /afs/slac.stanford.edu/package/gcc/i386_linux2/gcc-2.95.3/bin/g++
-else if ( ${HOST} == bbr-dev101 || ${HOST} == noric-new ) then
-   setenv OS Linux
-   setenv BFARCH Linux24RHEL3_i386_gcc323
-   set CCVAL = /usr/bin/gcc
-   set CXXVAL = /usr/bin/g++
-else if ( ${HOST} == bbr-srv07 || ${HOST} == tersk ) then
-   setenv OS Solaris
-   setenv BFARCH SunOS59_sparc_Studio9
-   set CCVAL = /opt/SUNWspro.Studio9/bin/cc
-   set CXXVAL = /opt/SUNWspro.Studio9/bin/CC
-else if ( ${HOST} == bbr-dev104 ) then
-   setenv OS Linux
-   setenv BFARCH Linux24SL3_i386_gcc323
-   set CCVAL = /usr/bin/gcc
-   set CXXVAL = /usr/bin/g++
-else
-   echo Unknown host
-   exit
-endif
-
-
-set LOGFILE = gmake_${BFARCH}.log
-rm -i ${LOGFILE}
-
-echo " OS $OS" |cat > ${LOGFILE}
-echo " BFARCH $BFARCH" |cat >> ${LOGFILE}
-echo " CC $CCVAL" |cat >> ${LOGFILE}
-echo " CXX $CXXVAL" |cat >> ${LOGFILE}
-
-setenv ODIR ${BFARCH}
-source .setup
-
-if ( ${OS} == Linux ) then
-    gmake SHAREABLE=no \
-          CC=${CCVAL} \
-          CXX=${CXXVAL} \
-          X11INC='/usr/X11R6/LessTif/Motif1.2/include' \
-          EXTRAMOTIFFLAGS='-L/usr/X11R6/LessTif/Motif1.2/lib' \
-          all >>& ${LOGFILE}
-else if ( ${OS} == Solaris ) then
-    gmake SHARABLE=no \
-          CC=${CCVAL} \
-          CXX=${CXXVAL} \
-          all >>& ${LOGFILE}     
-else
-    echo Unknown Operating system ${OS}
-endif
-
-exit
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/smixx/Makefile.am smixx/smixx/Makefile.am
--- smixx_web/smixx/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ smixx/smixx/Makefile.am	2007-03-19 10:55:52.000000000 +0100
@@ -0,0 +1,17 @@
+#
+#
+#
+pkginclude_HEADERS	= parameters.h		\
+			  smirtl.h		\
+			  smirtl.hxx		\
+			  smirtl_core.hxx	\
+			  smiuirtl.h		\
+			  smiuirtl.hxx		\
+			  smiuirtl_core.hxx	\
+			  smixx_common.hxx	\
+			  smixx_parstring_util.h \
+			  version.h		
+
+#
+# EOF
+#
\ No newline at end of file
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/smixx/smirtl.hxx smixx/smixx/smirtl.hxx
--- smixx_web/smixx/smirtl.hxx	2003-12-15 16:27:38.000000000 +0100
+++ smixx/smixx/smirtl.hxx	2007-03-19 09:55:42.000000000 +0100
@@ -28,6 +28,7 @@
 	char *itsName;
 	int itsType;
 	char *itsData;
+	char *itsEscData;
 	char itsTypeStr[8];
 public:
 	ParInfo(char *name, int type);
@@ -37,8 +38,10 @@
 	char *getName() { return itsName; }
 	int getType() { return itsType; }
 	int getDataSize() { return strlen(itsData)+1; }
+	int getEscDataSize() { return strlen(itsEscData)+1; }
 	char *getTypeStr() { return itsTypeStr; }
 	char *getData() { return itsData; }
+	char *getEscData() { return itsEscData; }
 	
 };
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/smixx/smiuirtl.hxx smixx/smixx/smiuirtl.hxx
--- smixx_web/smixx/smiuirtl.hxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/smixx/smiuirtl.hxx	2007-03-19 09:55:42.000000000 +0100
@@ -36,6 +36,8 @@
 	int itsValueSize;
 	int itsType;
 	int itisObj;
+	void *itsEscValue;
+	int itsEscValueSize;
 public:
 	SmiParam(char *name);
 	~SmiParam();
@@ -44,6 +46,8 @@
 	int getValueInt() { return *(int *)itsValue; };
 	double getValueFloat() { return *(double *)itsValue; };
 	char *getValueString() { return (char *)itsValue; };
+	char *getEscValueString() { return (char *)itsEscValue; }
+	void convertToEsc();
 	int hasValue() {return itsDefault; };
 	int setValue(int val);
 	int setValue(double val);
@@ -62,6 +66,7 @@
 public:
 	virtual ~ParamHandler() {};
 	int getNParams() { return itsNParams; };
+	virtual SmiParam *getFirstParam();
 	virtual SmiParam *getNextParam();
 };
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/smixx/smixx_parstring_util.h smixx/smixx/smixx_parstring_util.h
--- smixx_web/smixx/smixx_parstring_util.h	1970-01-01 01:00:00.000000000 +0100
+++ smixx/smixx/smixx_parstring_util.h	2006-12-28 14:41:37.000000000 +0100
@@ -0,0 +1,110 @@
+/*======================== Parametr String handling functions ============
+
+                                                   Author: Boda Franek
+                                                   Date : July 2006
+ Copyright Information:
+      Copyright (C) 1996-2006 CCLRC. All Rights Reserved.
+==========================================================================*/
+
+#ifndef SMIXX_PARSTRING_UTIL
+#define SMIXX_PARSTRING_UTIL
+/*=============================================================================*/
+int smixx_escape_slash(char* outstr, char* instr, int max);
+/*  Description:
+   The function is meant to process string parameters encountered in SML code.
+   They should follow the normal C/C++ rules for escaping non-printable and
+   other special characters. In addition to these, there are other special
+   characters with a special meaning in SMI system and so these have to be
+   protected by escaping. They are:
+   '/', '|',  '=',  '(', ')' and ' '. They are escaped by \ followed by
+   their octal code.
+   Extra special case is doublequote. This is already escaped in the input
+   string by \", but this is not enough and \" has to be converted to \042.
+   
+
+  At the same time it also checks that string does not contain
+  any non-printable characters. If it does, it returns -1.
+   
+    Input:
+      instr ... pointer to the input string.
+	      
+      max ... max no of characters allowed to be output into outstr. When exceeded,
+              message is printed and zero returned.
+              
+         when max=0, then there is no output string
+              however the number of characters in the potential output string is
+              calculated and returned
+      
+    Output:
+      outstr ... pointer to the resulting string
+      return value ... when everything is ok, number of output characters. Otherwise
+                       -1.
+*/
+int smixx_unescape(char* outstr, char* instr, int max);
+/*
+  The function processes the input string and unescapes all the escape sequences
+ Input:
+      instr ... a string that is assumed to contain only escaped special characters.
+               (both C and SMI). Also the unprintable characters must be
+	       escaped, If a solitary special or unprintable character is found,
+	        -1 is returned
+	      If instr string contains enclosing ", these will be removed.
+	      
+      max ... max no of characters allowed to be output into outstr. When exceeded,
+              message is printed and -1 returned. Do not forget to reserve space for
+	      terminating zero.
+              
+          PS  when max=0, then all checks on instr are performed, but no output string.
+              However, the number of characters in the potential output string is
+              calculated and returned
+      
+   Output:
+      outstr ... resulting unescaped string
+      return value ... when everything ok, number of output characters. Otherwise
+                       zero.  See also PS for max above.
+*/
+/*=============================================================================*/
+int smixx_escape(char* outstr, char* instr, int max);
+/* Input:
+      instr ... a string that is assumed to contain only the original characters.
+	      When the value of the character is greater then 127, -1 is returned and 
+	      a message printed.
+	      
+      max ... max no of characters allowed to be output into outstr. When exceeded,
+              message is printed and -1 returned. Do not forget to reserve space for
+	      terminating zero.
+              
+          PS  when max=0, then all checks on instr are performed, but no output string.
+              However, the number of characters in the potential output string is
+              calculated and returned
+      
+   Output:
+      outstr ... resulting smixx (in addition to C escaping, / is escaped by \s) escaped
+                 string
+      return value ... when everything ok, number of output characters. Otherwise
+                       zero.  See also PS for max above.
+*/
+/*=============================================================================*/
+int smixx_escape_toprint(char* outstr, char* instr, int max);
+/* Input:
+      instr ... a string that is assumed to contain only the original characters.
+	      When the value of the character is greater then 127, -1 is returned and 
+	      a message printed.
+	      
+      max ... max no of characters allowed to be output into outstr. When exceeded,
+              message is printed and -1 returned. Do not forget to reserve space for
+	      terminating zero.
+              
+          PS  when max=0, then all checks on instr are performed, but no output string.
+              However, the number of characters in the potential output string is
+              calculated and returned
+      
+   Output:
+      outstr ... resulting string that is OK to print. Some of them have to be escaped, but it
+                 is a subset
+		 
+      return value ... when everything ok, number of output characters. Otherwise
+                       zero.  See also PS for max above.
+*/
+
+#endif
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/smixx/version.h smixx/smixx/version.h
--- smixx_web/smixx/version.h	2005-08-09 18:42:58.000000000 +0200
+++ smixx/smixx/version.h	1970-01-01 01:00:00.000000000 +0100
@@ -1,4 +0,0 @@
-#ifndef __SMIXXDEFS
-#define __SMIXXDEFS
-#define SMIXX_VERSION 2801
-#endif
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/smixx/version.h.in smixx/smixx/version.h.in
--- smixx_web/smixx/version.h.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/smixx/version.h.in	2006-05-11 22:09:55.000000000 +0200
@@ -0,0 +1,5 @@
+/* -*- mode: C -*- */
+#ifndef __SMIXXDEFS
+#define __SMIXXDEFS
+#define SMIXX_VERSION @SMIXX_VERSION@
+#endif
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/.deps/smiDomainExists.Po smixx/src/.deps/smiDomainExists.Po
--- smixx_web/src/.deps/smiDomainExists.Po	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/.deps/smiDomainExists.Po	2006-05-19 17:07:12.000000000 +0200
@@ -0,0 +1 @@
+# dummy
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/.deps/smiGetDomains.Po smixx/src/.deps/smiGetDomains.Po
--- smixx_web/src/.deps/smiGetDomains.Po	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/.deps/smiGetDomains.Po	2006-05-19 17:07:12.000000000 +0200
@@ -0,0 +1 @@
+# dummy
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/.deps/smiGetVersions.Po smixx/src/.deps/smiGetVersions.Po
--- smixx_web/src/.deps/smiGetVersions.Po	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/.deps/smiGetVersions.Po	2006-05-19 17:07:12.000000000 +0200
@@ -0,0 +1 @@
+# dummy
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/.deps/smiListDomain.Po smixx/src/.deps/smiListDomain.Po
--- smixx_web/src/.deps/smiListDomain.Po	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/.deps/smiListDomain.Po	2006-05-19 17:07:12.000000000 +0200
@@ -0,0 +1 @@
+# dummy
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/.deps/smiProxyExists.Po smixx/src/.deps/smiProxyExists.Po
--- smixx_web/src/.deps/smiProxyExists.Po	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/.deps/smiProxyExists.Po	2006-05-19 17:07:12.000000000 +0200
@@ -0,0 +1 @@
+# dummy
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/CLEAN_ROOM.sml smixx/src/EXAMPLES/CLEAN_ROOM.sml
--- smixx_web/src/EXAMPLES/CLEAN_ROOM.sml	2004-06-28 18:57:50.000000000 +0200
+++ smixx/src/EXAMPLES/CLEAN_ROOM.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,275 +0,0 @@
-class: TOP_CIC_CLASS
-    state: READY	!color: FwStateOKPhysics
-        when ( ( any_in CLEANROOMHUMIDITY_FWSETSTATES in_state NOT_READY ) or
-               ( any_in STATUS_FWSETSTATES in_state NOT_READY ) or
-               ( any_in STATUSTOP_FWSETSTATES in_state NOT_READY ) or
-               ( any_in CLEANROOMTEMP_FWSETSTATES in_state NOT_READY ) ) move_to NOT_READY
-    state: NOT_READY	!color: FwStateOKNotPhysics
-        when ( ( all_in CLEANROOMHUMIDITY_FWSETSTATES not_in_state NOT_READY ) and
-               ( all_in STATUS_FWSETSTATES not_in_state NOT_READY ) and
-               ( all_in STATUSTOP_FWSETSTATES not_in_state NOT_READY ) and
-               ( all_in CLEANROOMTEMP_FWSETSTATES not_in_state NOT_READY ) ) move_to READY
-
-object: CLEAN_ROOM is_of_class TOP_CIC_CLASS
-
-class: FwChildrenMode_CLASS
-    state: Complete	!color: _3DFace
-        when ( ( any_in FWCHILDRENMODE_FWSETSTATES not_in_state Complete ) ) move_to INCOMPLETE
-        when ( ( any_in FWCHILDMODE_FWSETSTATES not_in_state Included ) ) move_to INCOMPLETE
-    state: Incomplete	!color: FwStateAttention1
-        when ( ( all_in FWCHILDMODE_FWSETSTATES in_state Included ) ) and 
-         ( ( all_in FWCHILDRENMODE_FWSETSTATES in_state Complete ) ) move_to COMPLETE
-
-object: CLEAN_ROOM_FWCNM is_of_class FwChildrenMode_CLASS
-
-class: ASS_FwChildrenMode_CLASS/associated
-    state: Complete	!color: _3DFace
-    state: Incomplete	!color: FwStateAttention1
-
-object: HUMIDITY::HUMIDITY_FWCNM is_of_class ASS_FwChildrenMode_CLASS
-
-object: TEMPERATURE::TEMPERATURE_FWCNM is_of_class ASS_FwChildrenMode_CLASS
-
-objectset: FWCHILDRENMODE_FWSETSTATES {HUMIDITY::HUMIDITY_FWCNM,
-	TEMPERATURE::TEMPERATURE_FWCNM }
-
-class: FwMode_CLASS
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-            do Include all_in FWCHILDMODE_FWSETACTIONS
-            move_to InLocal
-        action: Include
-            do Include all_in FWCHILDMODE_FWSETACTIONS
-            move_to Included
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-            do Exclude all_in FWCHILDMODE_FWSETACTIONS
-            move_to Excluded
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Return
-            do Exclude all_in FWCHILDMODE_FWSETACTIONS
-            move_to Excluded
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Take
-            move_to InManual
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Return
-            move_to Manual
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-
-object: CLEAN_ROOM_FWM is_of_class FwMode_CLASS
-
-class: ASS_FwMode_CLASS/associated
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-        action: Include
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-        action: Manual
-        action: Ignore
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Return
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-        action: Take
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Return
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-
-object: HUMIDITY::HUMIDITY_FWM is_of_class ASS_FwMode_CLASS
-
-object: TEMPERATURE::TEMPERATURE_FWM is_of_class ASS_FwMode_CLASS
-
-class: HUMIDITY_FwChildMode_CLASS
-
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Include
-            if ( HUMIDITY::HUMIDITY_FWM not_in_state Excluded ) then
-                if ( HUMIDITY::HUMIDITY_FWM in_state Manual ) then
-                    do Take HUMIDITY::HUMIDITY_FWM
-                    insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-                    insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-                else
-                    move_to Excluded
-                endif
-            else
-                do Include HUMIDITY::HUMIDITY_FWM
-                insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-                insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-            endif
-            move_to Included
-    state: Included	!color: FwStateOKPhysics
-        when ( HUMIDITY::HUMIDITY_FWM in_state Excluded ) move_to EXCLUDED
-        when ( HUMIDITY::HUMIDITY_FWM in_state Ignored ) move_to IGNORED
-        when ( HUMIDITY::HUMIDITY_FWM in_state Manual ) move_to MANUAL
-        action: Exclude
-            if ( HUMIDITY::HUMIDITY_FWM not_in_state Included ) then
-                if ( HUMIDITY::HUMIDITY_FWM in_state InManual ) then
-                    do Return HUMIDITY::HUMIDITY_FWM
-                    remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETSTATES
-                    remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETACTIONS
-                else
-                    move_to Included
-                endif
-            else
-                do Exclude HUMIDITY::HUMIDITY_FWM
-                remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETSTATES
-                remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETACTIONS
-            endif
-            move_to Excluded
-        action: Manual
-            do Manual HUMIDITY::HUMIDITY_FWM
-            remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETACTIONS
-            move_to Manual
-        action: Ignore
-            do Ignore HUMIDITY::HUMIDITY_FWM
-            remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETSTATES
-            move_to Ignored
-    state: Manual	!color: FwStateOKNotPhysics
-        when ( HUMIDITY::HUMIDITY_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include HUMIDITY::HUMIDITY_FWM
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-            move_to Included
-    state: Ignored	!color: FwStateOKNotPhysics
-        when ( HUMIDITY::HUMIDITY_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include HUMIDITY::HUMIDITY_FWM
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-            move_to Included
-
-object: HUMIDITY_FWM is_of_class HUMIDITY_FwChildMode_CLASS
-
-class: TEMPERATURE_FwChildMode_CLASS
-
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Include
-            if ( TEMPERATURE::TEMPERATURE_FWM not_in_state Excluded ) then
-                if ( TEMPERATURE::TEMPERATURE_FWM in_state Manual ) then
-                    do Take TEMPERATURE::TEMPERATURE_FWM
-                    insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-                    insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-                else
-                    move_to Excluded
-                endif
-            else
-                do Include TEMPERATURE::TEMPERATURE_FWM
-                insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-                insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-            endif
-            move_to Included
-    state: Included	!color: FwStateOKPhysics
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Excluded ) move_to EXCLUDED
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Ignored ) move_to IGNORED
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Manual ) move_to MANUAL
-        action: Exclude
-            if ( TEMPERATURE::TEMPERATURE_FWM not_in_state Included ) then
-                if ( TEMPERATURE::TEMPERATURE_FWM in_state InManual ) then
-                    do Return TEMPERATURE::TEMPERATURE_FWM
-                    remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETSTATES
-                    remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETACTIONS
-                else
-                    move_to Included
-                endif
-            else
-                do Exclude TEMPERATURE::TEMPERATURE_FWM
-                remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETSTATES
-                remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETACTIONS
-            endif
-            move_to Excluded
-        action: Manual
-            do Manual TEMPERATURE::TEMPERATURE_FWM
-            remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETACTIONS
-            move_to Manual
-        action: Ignore
-            do Ignore TEMPERATURE::TEMPERATURE_FWM
-            remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETSTATES
-            move_to Ignored
-    state: Manual	!color: FwStateOKNotPhysics
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include TEMPERATURE::TEMPERATURE_FWM
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-            move_to Included
-    state: Ignored	!color: FwStateOKNotPhysics
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include TEMPERATURE::TEMPERATURE_FWM
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-            move_to Included
-
-object: TEMPERATURE_FWM is_of_class TEMPERATURE_FwChildMode_CLASS
-
-objectset: FWCHILDMODE_FWSETSTATES {HUMIDITY_FWM,
-	TEMPERATURE_FWM }
-objectset: FWCHILDMODE_FWSETACTIONS {HUMIDITY_FWM,
-	TEMPERATURE_FWM }
-
-class: ASS_CleanRoomHumidity_CLASS/associated
-    state: READY	!color: FwStateOKPhysics
-    state: NOT_READY	!color: FwStateOKNotPhysics
-
-object: HUMIDITY::HUMIDITY is_of_class ASS_CleanRoomHumidity_CLASS
-
-objectset: CLEANROOMHUMIDITY_FWSETSTATES
-objectset: CLEANROOMHUMIDITY_FWSETACTIONS
-
-class: ASS_Status_CLASS/associated
-    parameters: string status = "OK"
-    state: OK	!color: FwStateOKPhysics
-    state: WARNING	!color: FwStateAttention1
-    state: ALARM	!color: FwStateAttention2
-    state: FATAL	!color: FwStateAttention3
-
-object: HUMIDITY::StatusHumidity is_of_class ASS_Status_CLASS
-
-object: TEMPERATURE::StatusTemperature is_of_class ASS_Status_CLASS
-
-objectset: STATUS_FWSETSTATES {HUMIDITY::StatusHumidity,
-	TEMPERATURE::StatusTemperature }
-objectset: STATUS_FWSETACTIONS {HUMIDITY::StatusHumidity,
-	TEMPERATURE::StatusTemperature }
-
-class: StatusTop_CLASS
-    state: OK	!color: FwStateOKPhysics
-        when ( ( any_in STATUS_FWSETSTATES in_state FATAL ) ) or 
-        when ( ( any_in STATUS_FWSETSTATES in_state ALARM ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state WARNING ) ) or 
-    state: WARNING	!color: FwStateAttention1
-        when ( ( any_in STATUS_FWSETSTATES in_state FATAL ) ) or 
-        when ( ( any_in STATUS_FWSETSTATES in_state ALARM ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state OK ) ) or 
-    state: ALARM	!color: FwStateAttention2
-        when ( ( any_in STATUS_FWSETSTATES in_state FATAL ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state WARNING ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state OK ) ) or 
-    state: FATAL	!color: FwStateAttention3
-        when ( ( all_in STATUS_FWSETSTATES not_in_state FATAL ) ) or 
-
-object: StatusCleanRoom is_of_class StatusTop_CLASS
-
-objectset: STATUSTOP_FWSETSTATES {StatusCleanRoom }
-objectset: STATUSTOP_FWSETACTIONS {StatusCleanRoom }
-
-class: ASS_CleanRoomTemp_CLASS/associated
-    state: READY	!color: FwStateOKPhysics
-    state: NOT_READY	!color: FwStateOKNotPhysics
-
-object: TEMPERATURE::TEMPERATURE is_of_class ASS_CleanRoomTemp_CLASS
-
-objectset: CLEANROOMTEMP_FWSETSTATES
-objectset: CLEANROOMTEMP_FWSETACTIONS
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/CLEAN_ROOM.sobj smixx/src/EXAMPLES/CLEAN_ROOM.sobj
--- smixx_web/src/EXAMPLES/CLEAN_ROOM.sobj	2004-06-29 16:44:22.000000000 +0200
+++ smixx/src/EXAMPLES/CLEAN_ROOM.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,1250 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*CLASS
-TOP_CIC_CLASS
-    0    0
-*STATE
-READY
-    0
-*WHEN
- ( ( ANY_IN CLEANROOMHUMIDITY_FWSETST......_FWSETSTATES IN_STATE NOT_READY ) )
-    4    3
-    2
-CLEANROOMHUMIDITY_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-    2
-STATUS_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-    2
-STATUSTOP_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-    2
-CLEANROOMTEMP_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-or    T001  T002
-or    X001  T003
-or    X002  T004
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_READY
-*END_ACTION
-*END_STATE
-*STATE
-NOT_READY
-    0
-*WHEN
- ( ( ALL_IN CLEANROOMHUMIDITY_FWSETST......ETSTATES NOT_IN_STATE NOT_READY ) )
-    4    3
-    2
-CLEANROOMHUMIDITY_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-    2
-STATUS_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-    2
-STATUSTOP_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-    2
-CLEANROOMTEMP_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-and   T001  T002
-and   X001  T003
-and   X002  T004
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-READY
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-CLEAN_ROOM
-    1    0    0
-TOP_CIC_CLASS
-*END_OBJECT
-*CLASS
-FWCHILDRENMODE_CLASS
-    0    0
-*STATE
-COMPLETE
-    0
-*WHEN
- ( ( ANY_IN FWCHILDRENMODE_FWSETSTATES NOT_IN_STATE COMPLETE ) )
-    1    0
-    2
-FWCHILDRENMODE_FWSETSTATES
-any_in
-not_in_state
-    1
-COMPLETE
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( ( ANY_IN FWCHILDMODE_FWSETSTATES NOT_IN_STATE INCLUDED ) )
-    1    0
-    2
-FWCHILDMODE_FWSETSTATES
-any_in
-not_in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCOMPLETE
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-INCOMPLETE
-*END_ACTION
-*END_STATE
-*STATE
-INCOMPLETE
-    0
-*WHEN
- ( ( ALL_IN FWCHILDMODE_FWSETSTATES I......E_FWSETSTATES IN_STATE COMPLETE ) )
-    2    1
-    2
-FWCHILDMODE_FWSETSTATES
-all_in
-in_state
-    1
-INCLUDED
-    2
-FWCHILDRENMODE_FWSETSTATES
-all_in
-in_state
-    1
-COMPLETE
-and   T001  T002
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-COMPLETE
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-CLEAN_ROOM_FWCNM
-    1    0    0
-FWCHILDRENMODE_CLASS
-*END_OBJECT
-*CLASS
-ASS_FWCHILDRENMODE_CLASS
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-COMPLETE
-    0
-*END_STATE
-*STATE
-INCOMPLETE
-    0
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::HUMIDITY_FWCNM
-    1    0    1
-ASS_FWCHILDRENMODE_CLASS
-*END_OBJECT
-*OBJECT
-TEMPERATURE::TEMPERATURE_FWCNM
-    1    0    1
-ASS_FWCHILDRENMODE_CLASS
-*END_OBJECT
-*OBJECTSET
-FWCHILDRENMODE_FWSETSTATES
-    0    2
-HUMIDITY::HUMIDITY_FWCNM
-TEMPERATURE::TEMPERATURE_FWCNM
-*END_OBJECTSET
-*CLASS
-FWMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-INLOCAL
-*END_ACTION
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-EXCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INLOCAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-do
-EXCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-terminate
-INMANUAL
-*END_ACTION
-*END_STATE
-*STATE
-INMANUAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-CLEAN_ROOM_FWM
-    1    0    0
-FWMODE_CLASS
-*END_OBJECT
-*CLASS
-ASS_FWMODE_CLASS
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-EXCLUDED
-    0
-*ACTION
-TAKE
-    0    0
-*END_ACTION
-*ACTION
-INCLUDE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*ACTION
-EXCLUDE
-    0    0
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-INLOCAL
-    0
-*ACTION
-RETURN
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*ACTION
-INCLUDE
-    0    0
-*END_ACTION
-*ACTION
-TAKE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-INMANUAL
-    0
-*ACTION
-RETURN
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*ACTION
-INCLUDE
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::HUMIDITY_FWM
-    1    0    1
-ASS_FWMODE_CLASS
-*END_OBJECT
-*OBJECT
-TEMPERATURE::TEMPERATURE_FWM
-    1    0    1
-ASS_FWMODE_CLASS
-*END_OBJECT
-*CLASS
-HUMIDITY_FWCHILDMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM NOT_IN_STATE EXCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-not_in_state
-    1
-EXCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-INCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM IN_STATE MANUAL )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-MANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-INCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  3  2
-do
-TAKE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE EXCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-EXCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE IGNORED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-IGNORED
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE MANUAL )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-MANUAL
-do
-&END_IN_STATE_WHEN2
-    0
-&THIS_OBJECT
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM NOT_IN_STATE INCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-not_in_state
-    1
-INCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-EXCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM IN_STATE INMANUAL )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-INMANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-EXCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  3  2
-do
-RETURN
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-do
-MANUAL
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-do
-IGNORE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN2
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE INCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE INCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-HUMIDITY_FWM
-    1    0    0
-HUMIDITY_FWCHILDMODE_CLASS
-*END_OBJECT
-*CLASS
-TEMPERATURE_FWCHILDMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM NOT_IN_STATE EXCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-not_in_state
-    1
-EXCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-INCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE MANUAL )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-MANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-INCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  3  2
-do
-TAKE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE EXCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-EXCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE IGNORED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-IGNORED
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE MANUAL )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-MANUAL
-do
-&END_IN_STATE_WHEN2
-    0
-&THIS_OBJECT
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM NOT_IN_STATE INCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-not_in_state
-    1
-INCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-EXCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE INMANUAL )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-INMANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-EXCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  3  2
-do
-RETURN
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-do
-MANUAL
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-do
-IGNORE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN2
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE INCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE INCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-TEMPERATURE_FWM
-    1    0    0
-TEMPERATURE_FWCHILDMODE_CLASS
-*END_OBJECT
-*OBJECTSET
-FWCHILDMODE_FWSETSTATES
-    0    2
-HUMIDITY_FWM
-TEMPERATURE_FWM
-*END_OBJECTSET
-*OBJECTSET
-FWCHILDMODE_FWSETACTIONS
-    0    2
-HUMIDITY_FWM
-TEMPERATURE_FWM
-*END_OBJECTSET
-*CLASS
-ASS_CLEANROOMHUMIDITY_CLASS
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-READY
-    0
-*END_STATE
-*STATE
-NOT_READY
-    0
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::HUMIDITY
-    1    0    1
-ASS_CLEANROOMHUMIDITY_CLASS
-*END_OBJECT
-*OBJECTSET
-CLEANROOMHUMIDITY_FWSETSTATES
-    0    0
-*END_OBJECTSET
-*OBJECTSET
-CLEANROOMHUMIDITY_FWSETACTIONS
-    0    0
-*END_OBJECTSET
-*CLASS
-ASS_STATUS_CLASS
-    1    1
-ASSOCIATED
-*PARAMETERS
-STRING
-STATUS
-"OK"
-*END_PARAMETERS
-*SUBOBJECT
-&DUMMY
-*STATE
-OK
-    0
-*END_STATE
-*STATE
-WARNING
-    0
-*END_STATE
-*STATE
-ALARM
-    0
-*END_STATE
-*STATE
-FATAL
-    0
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::STATUSHUMIDITY
-    1    0    1
-ASS_STATUS_CLASS
-*END_OBJECT
-*OBJECT
-TEMPERATURE::STATUSTEMPERATURE
-    1    0    1
-ASS_STATUS_CLASS
-*END_OBJECT
-*OBJECTSET
-STATUS_FWSETSTATES
-    0    2
-HUMIDITY::STATUSHUMIDITY
-TEMPERATURE::STATUSTEMPERATURE
-*END_OBJECTSET
-*OBJECTSET
-STATUS_FWSETACTIONS
-    0    2
-HUMIDITY::STATUSHUMIDITY
-TEMPERATURE::STATUSTEMPERATURE
-*END_OBJECTSET
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/RACK_4Y_12.sml smixx/src/EXAMPLES/RACK_4Y_12.sml
--- smixx_web/src/EXAMPLES/RACK_4Y_12.sml	2004-11-09 19:26:52.000000000 +0100
+++ smixx/src/EXAMPLES/RACK_4Y_12.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,173 +0,0 @@
-class: TOP_Rack_CLASS
-    state: OK	!color: FwStateOKPhysics
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) )  move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) ) move_to ALARM
-        when (  ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state WARNING ) ) or
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state NON_PHYSICAL ) )  )  move_to WARNING
-    state: WARNING	!color: FwStateAttention1
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) ) move_to ALARM
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: ALARM	!color: FwStateAttention2
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: FATAL	!color: FwStateAttention3
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES not_in_state FATAL ) ) move_to ALARM
-
-object: RACK_4Y_12 is_of_class TOP_Rack_CLASS
-
-class: FwChildrenMode_CLASS
-    state: Complete	!color: _3DFace
-        when ( ( any_in FWDEVMODE_FWSETSTATES in_state DISABLED ) )  move_to IncompleteDev
-    state: Incomplete	!color: FwStateAttention2
-    state: IncompleteDev	!color: FwStateAttention1
-        when (  ( ( all_in FWDEVMODE_FWSETSTATES not_in_state DISABLED ) )  ) move_to Complete
-
-object: RACK_4Y_12_FWCNM is_of_class FwChildrenMode_CLASS
-
-class: FwMode_CLASS
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-            move_to InLocal
-        action: Include
-            move_to Included
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-        action: ExcludeAll
-            move_to Excluded
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Release
-            move_to Excluded
-        action: ReleaseAll
-            move_to Excluded
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Take
-            move_to InManual
-        action: Exclude
-            move_to Excluded
-        action: Ignore
-            move_to Ignored
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Release
-            move_to Manual
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-
-object: RACK_4Y_12_FWM is_of_class FwMode_CLASS
-
-class: Status_CLASS
-    parameters: string status = "OK"
-    state: OK	!color: FwStateOKPhysics
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) ) move_to ALARM
-        when (  ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state WARNING ) ) or
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state NON_PHYSICAL ) )  )  move_to WARNING
-    state: WARNING	!color: FwStateAttention1
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) )  move_to ALARM
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: ALARM	!color: FwStateAttention2
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when (  ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES not_in_state ALARM ) ) and
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state WARNING ) ) or
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state NON_PHYSICAL ) )  )  move_to WARNING
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: FATAL	!color: FwStateAttention3
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES not_in_state FATAL ) ) move_to ALARM
-
-object: STATUS-RACK_4Y_12 is_of_class Status_CLASS
-
-objectset: STATUS_FWSETSTATES {STATUS-RACK_4Y_12 }
-objectset: STATUS_FWSETACTIONS {STATUS-RACK_4Y_12 }
-
-class: FwElmbAi_srRacksTemp_FwDevMode_CLASS
-    state: READY
-        action: Disable(Device)
-            remove &VAL_OF_Device from FWELMBAI_SRRACKSTEMP_FWSETSTATES
-            remove &VAL_OF_Device from FWELMBAI_SRRACKSTEMP_FWSETACTIONS
-            move_to READY
-        action: Enable(Device)
-            insert &VAL_OF_Device in FWELMBAI_SRRACKSTEMP_FWSETSTATES
-            insert &VAL_OF_Device in FWELMBAI_SRRACKSTEMP_FWSETACTIONS
-            move_to READY
-
-object: FwElmbAi_srRacksTemp_FWDM is_of_class FwElmbAi_srRacksTemp_FwDevMode_CLASS
-
-class: FwElmbAi_srRacksTemp_CLASS/associated
-    state: OK	!color: FwStateOKPhysics
-    state: WARNING	!color: FwStateAttention1
-    state: ALARM	!color: FwStateAttention2
-    state: FATAL	!color: FwStateAttention3
-    state: NON_PHYSICAL	!color: FwStateAttention2
-
-object: 4Y_04_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_05_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_06_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_07_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_08_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_09_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_10_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_11_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-objectset: FWELMBAI_SRRACKSTEMP_FWSETSTATES {4Y_04_12_SR1,
-	4Y_05_12_SR1,
-	4Y_06_12_SR1,
-	4Y_07_12_SR1,
-	4Y_08_12_SR1,
-	4Y_09_12_SR1,
-	4Y_10_12_SR1,
-	4Y_11_12_SR1 }
-objectset: FWELMBAI_SRRACKSTEMP_FWSETACTIONS {4Y_04_12_SR1,
-	4Y_05_12_SR1,
-	4Y_06_12_SR1,
-	4Y_07_12_SR1,
-	4Y_08_12_SR1,
-	4Y_09_12_SR1,
-	4Y_10_12_SR1,
-	4Y_11_12_SR1 }
-
-class: FwDevMode_FwDevMode_CLASS
-    state: READY
-        action: Disable(Device)
-            remove &VAL_OF_Device from FWDEVMODE_FWSETSTATES
-            remove &VAL_OF_Device from FWDEVMODE_FWSETACTIONS
-            move_to READY
-        action: Enable(Device)
-            insert &VAL_OF_Device in FWDEVMODE_FWSETSTATES
-            insert &VAL_OF_Device in FWDEVMODE_FWSETACTIONS
-            move_to READY
-
-object: FwDevMode_FWDM is_of_class FwDevMode_FwDevMode_CLASS
-
-class: FwDevMode_CLASS/associated
-    state: ENABLED	!color: FwStateOKPhysics
-    state: DISABLED	!color: FwStateAttention1
-
-object: RACK_4Y_12_FWDM is_of_class FwDevMode_CLASS
-
-objectset: FWDEVMODE_FWSETSTATES {RACK_4Y_12_FWDM }
-objectset: FWDEVMODE_FWSETACTIONS {RACK_4Y_12_FWDM }
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/evt_builder.dsp smixx/src/EXAMPLES/evt_builder.dsp
--- smixx_web/src/EXAMPLES/evt_builder.dsp	2005-05-30 11:41:00.000000000 +0200
+++ smixx/src/EXAMPLES/evt_builder.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,96 +0,0 @@
-# Microsoft Developer Studio Project File - Name="evt_builder" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=evt_builder - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "evt_builder.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "evt_builder.mak" CFG="evt_builder - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "evt_builder - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "evt_builder - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "evt_builder - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "run_control/bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /include:"Release/"
-# ADD F90 /include:"Release/"
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
-
-!ELSEIF  "$(CFG)" == "evt_builder - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../src/examples/run_control/bin"
-# PROP Intermediate_Dir "../src/examples/run_control/tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /include:"Debug/"
-# ADD F90 /include:"exe/"
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /w /W0 /Gm /GX /ZI /Od /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none /incremental:no
-
-!ENDIF 
-
-# Begin Target
-
-# Name "evt_builder - Win32 Release"
-# Name "evt_builder - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\run_control\evt_builder.c
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/evt_builder_cpp.dsp smixx/src/EXAMPLES/evt_builder_cpp.dsp
--- smixx_web/src/EXAMPLES/evt_builder_cpp.dsp	2004-04-08 15:19:42.000000000 +0200
+++ smixx/src/EXAMPLES/evt_builder_cpp.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,92 +0,0 @@
-# Microsoft Developer Studio Project File - Name="evt_builder_cpp" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=evt_builder_cpp - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "evt_builder_cpp.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "evt_builder_cpp.mak" CFG="evt_builder_cpp - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "evt_builder_cpp - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "evt_builder_cpp - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "evt_builder_cpp - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "run_control/bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
-
-!ELSEIF  "$(CFG)" == "evt_builder_cpp - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../src/examples/run_control/bin"
-# PROP Intermediate_Dir "../src/examples/run_control/tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "evt_builder_cpp - Win32 Release"
-# Name "evt_builder_cpp - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\run_control\evt_builder_cpp.cxx
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/examples.dsw smixx/src/EXAMPLES/examples.dsw
--- smixx_web/src/EXAMPLES/examples.dsw	2004-11-18 19:08:08.000000000 +0100
+++ smixx/src/EXAMPLES/examples.dsw	1970-01-01 01:00:00.000000000 +0100
@@ -1,113 +0,0 @@
-Microsoft Developer Studio Workspace File, Format Version 6.00
-# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
-
-###############################################################################
-
-Project: "evt_builder"=.\evt_builder.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "evt_builder_cpp"=.\evt_builder_cpp.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "logger"=.\logger.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "logger_cpp"=.\logger_cpp.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "testCXXBoda"=.\testCXXBoda.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "testCXXdim"=.\testCXXdim.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "testCXXui"=.\testCXXui.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Project: "testCui"=.\testCui.dsp - Package Owner=<4>
-
-Package=<5>
-{{{
-}}}
-
-Package=<4>
-{{{
-}}}
-
-###############################################################################
-
-Global:
-
-Package=<5>
-{{{
-}}}
-
-Package=<3>
-{{{
-}}}
-
-###############################################################################
-
Binary files smixx_web/src/EXAMPLES/examples.ncb and smixx/src/EXAMPLES/examples.ncb differ
Binary files smixx_web/src/EXAMPLES/examples.opt and smixx/src/EXAMPLES/examples.opt differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/logger.dsp smixx/src/EXAMPLES/logger.dsp
--- smixx_web/src/EXAMPLES/logger.dsp	2004-04-08 15:19:42.000000000 +0200
+++ smixx/src/EXAMPLES/logger.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,96 +0,0 @@
-# Microsoft Developer Studio Project File - Name="logger" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=logger - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "logger.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "logger.mak" CFG="logger - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "logger - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "logger - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "logger - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "run_control/bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /include:"Release/"
-# ADD F90 /include:"Release/"
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
-
-!ELSEIF  "$(CFG)" == "logger - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../src/examples/run_control/bin"
-# PROP Intermediate_Dir "../src/examples/run_control/tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /include:"Debug/"
-# ADD F90 /include:"exe/"
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /w /W0 /Gm /GX /ZI /Od /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "logger - Win32 Release"
-# Name "logger - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\run_control\logger.c
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/logger_cpp.dsp smixx/src/EXAMPLES/logger_cpp.dsp
--- smixx_web/src/EXAMPLES/logger_cpp.dsp	2004-04-08 15:19:42.000000000 +0200
+++ smixx/src/EXAMPLES/logger_cpp.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,92 +0,0 @@
-# Microsoft Developer Studio Project File - Name="logger_cpp" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=logger_cpp - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "logger_cpp.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "logger_cpp.mak" CFG="logger_cpp - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "logger_cpp - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "logger_cpp - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "logger_cpp - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "run_control/bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /pdb:none /machine:I386
-
-!ELSEIF  "$(CFG)" == "logger_cpp - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "../src/examples/run_control/bin"
-# PROP Intermediate_Dir "../src/examples/run_control/tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(DIMDIR)/dim" /I "$(SMIDIR)/smixx" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "logger_cpp - Win32 Release"
-# Name "logger_cpp - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\run_control\logger_cpp.cxx
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/middle2.sml smixx/src/EXAMPLES/middle2.sml
--- smixx_web/src/EXAMPLES/middle2.sml	2004-08-10 10:29:26.000000000 +0200
+++ smixx/src/EXAMPLES/middle2.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,121 +0,0 @@
-class: TOP_Node_CLASS
-    state: NOT_READY	!color: FwStateOKNotPhysics
-        when ( ( any_in FWAIHV_FWSETSTATES in_state ERROR ) ) move_to ERROR
-        when ( ( all_in FWAIHV_FWSETSTATES in_state READY ) ) move_to READY
-        action: CONFIGURE
-            do CONFIGURE all_in FWAIHV_FWSETACTIONS
-            if ( ( all_in FWAIHV_FWSETSTATES not_in_state READY ) ) then
-            	move_to NOT_READY
-            endif
-            move_to READY
-    state: READY	!color: FwStateOKPhysics
-        when ( ( any_in FWAIHV_FWSETSTATES in_state ERROR ) ) move_to ERROR
-        when ( ( any_in FWAIHV_FWSETSTATES in_state NOT_READY ) ) move_to NOT_READY
-        action: RESET
-            do RESET all_in FWAIHV_FWSETACTIONS
-            if ( ( all_in FWAIHV_FWSETSTATES not_in_state NOT_READY ) ) then
-            	move_to READY
-            endif
-            move_to NOT_READY
-    state: ERROR	!color: FwStateAttention3
-        when ( ( all_in FWAIHV_FWSETSTATES not_in_state ERROR ) ) move_to NOT_READY
-        action: RECOVER
-            do RECOVER all_in FWAIHV_FWSETACTIONS
-            if ( ( all_in FWAIHV_FWSETSTATES not_in_state NOT_READY ) ) then
-            	move_to ERROR
-            endif
-            move_to NOT_READY
-
-object: middle2 is_of_class TOP_Node_CLASS
-
-class: FwChildrenMode_CLASS
-    state: Complete	!color: _3DFace
-    state: Incomplete	!color: FwStateAttention1
-
-object: middle2_FWCNM is_of_class FwChildrenMode_CLASS
-
-class: FwMode_CLASS
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-            move_to InLocal
-        action: Include
-            move_to Included
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Return
-            move_to Excluded
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Take
-            move_to InManual
-        action: Exclude
-            move_to Excluded
-        action: Ignore
-            move_to Ignored
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Return
-            move_to Manual
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-
-object: middle2_FWM is_of_class FwMode_CLASS
-
-class: FwAiHV_FwDevMode_CLASS
-    state: READY
-        action: Disable(Device)
-            remove &VAL_OF_Device from FWAIHV_FWSETSTATES
-            remove &VAL_OF_Device from FWAIHV_FWSETACTIONS
-            move_to READY
-        action: Enable(Device)
-            insert &VAL_OF_Device in FWAIHV_FWSETSTATES
-            insert &VAL_OF_Device in FWAIHV_FWSETACTIONS
-            move_to READY
-
-object: FwAiHV_FWDM is_of_class FwAiHV_FwDevMode_CLASS
-
-class: FwAiHV_CLASS/associated
-    state: READY	!color: FwStateOKPhysics
-        action: RESET
-        action: FAKE_ERROR
-    state: NOT_READY	!color: FwStateOKNotPhysics
-        action: CONFIGURE(string
-    state: ERROR	!color: FwStateAttention3
-        action: RECOVER
-
-object: AnalogDigital:myAi0 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi1 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi2 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi3 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi4 is_of_class FwAiHV_CLASS
-
-objectset: FWAIHV_FWSETSTATES {AnalogDigital:myAi0,
-	AnalogDigital:myAi1,
-	AnalogDigital:myAi2,
-	AnalogDigital:myAi3,
-	AnalogDigital:myAi4 }
-objectset: FWAIHV_FWSETACTIONS {AnalogDigital:myAi0,
-	AnalogDigital:myAi1,
-	AnalogDigital:myAi2,
-	AnalogDigital:myAi3,
-	AnalogDigital:myAi4 }
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/middle2.sobj smixx/src/EXAMPLES/middle2.sobj
--- smixx_web/src/EXAMPLES/middle2.sobj	2004-08-10 10:39:42.000000000 +0200
+++ smixx/src/EXAMPLES/middle2.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,497 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*CLASS
-TOP_NODE_CLASS
-    0    0
-*STATE
-NOT_READY
-    0
-*WHEN
- ( ( ANY_IN FWAIHV_FWSETSTATES IN_STATE ERROR ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-any_in
-in_state
-    1
-ERROR
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( ( ALL_IN FWAIHV_FWSETSTATES IN_STATE READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-in_state
-    1
-READY
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*ACTION
-CONFIGURE
-    0    0
-*BLOCK
-  0  0
-do
-CONFIGURE
-    0
-&ALL_IN_FWAIHV_FWSETACTIONS
-if
-  1
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-READY
-  1  1
-terminate
-READY
-*BLOCK
-  1  1
-terminate
-NOT_READY
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-ERROR
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-READY
-*END_ACTION
-*END_STATE
-*STATE
-READY
-    0
-*WHEN
- ( ( ANY_IN FWAIHV_FWSETSTATES IN_STATE ERROR ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-any_in
-in_state
-    1
-ERROR
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( ( ANY_IN FWAIHV_FWSETSTATES IN_STATE NOT_READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*ACTION
-RESET
-    0    0
-*BLOCK
-  0  0
-do
-RESET
-    0
-&ALL_IN_FWAIHV_FWSETACTIONS
-if
-  1
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE NOT_READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-  1  1
-terminate
-NOT_READY
-*BLOCK
-  1  1
-terminate
-READY
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-ERROR
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_READY
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*WHEN
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE ERROR ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-ERROR
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-RECOVER
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-&ALL_IN_FWAIHV_FWSETACTIONS
-if
-  1
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE NOT_READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-  1  1
-terminate
-NOT_READY
-*BLOCK
-  1  1
-terminate
-ERROR
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_READY
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-MIDDLE2
-    1    0    0
-TOP_NODE_CLASS
-*END_OBJECT
-*CLASS
-FWCHILDRENMODE_CLASS
-    0    0
-*STATE
-COMPLETE
-    0
-*END_STATE
-*STATE
-INCOMPLETE
-    0
-*END_STATE
-*END_CLASS
-*OBJECT
-MIDDLE2_FWCNM
-    1    0    0
-FWCHILDRENMODE_CLASS
-*END_OBJECT
-*CLASS
-FWMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-terminate
-INLOCAL
-*END_ACTION
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INLOCAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-terminate
-INMANUAL
-*END_ACTION
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INMANUAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-MIDDLE2_FWM
-    1    0    0
-FWMODE_CLASS
-*END_OBJECT
-*CLASS
-FWAIHV_FWDEVMODE_CLASS
-    0    0
-*STATE
-READY
-    0
-*ACTION
-DISABLE
-    1    0
-STRING
-DEVICE
-&nodefault
-*BLOCK
-  0  0
-insert
-    0
-&VAL_OF_DEVICE
-FWAIHV_FWSETSTATES
-insert
-    0
-&VAL_OF_DEVICE
-FWAIHV_FWSETACTIONS
-terminate
-READY
-*END_ACTION
-*ACTION
-ENABLE
-    1    0
-STRING
-DEVICE
-&nodefault
-*BLOCK
-  0  0
-insert
-    1
-&VAL_OF_DEVICE
-FWAIHV_FWSETSTATES
-insert
-    1
-&VAL_OF_DEVICE
-FWAIHV_FWSETACTIONS
-terminate
-READY
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-FWAIHV_FWDM
-    1    0    0
-FWAIHV_FWDEVMODE_CLASS
-*END_OBJECT
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/monObjectState.cxx smixx/src/EXAMPLES/monObjectState.cxx
--- smixx_web/src/EXAMPLES/monObjectState.cxx	2004-11-18 18:57:22.000000000 +0100
+++ smixx/src/EXAMPLES/monObjectState.cxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,104 +0,0 @@
-//----------------------   M a i n   P r o g r a m  --------------------------
-//extern "C" int smiui_connect_domain(char* smiDomainStr);
-#include <iostream>
-#include <string>
-using namespace std;
-#include <stdlib.h>
-#include <smiuirtl.hxx>
-#include "smixx_common.hxx"
-
-#include <ctype.h>
-
-//==========================================================================
-class MyObject: public SmiObject
-{    
-    void  smiStateChangeHandler();
-    void smiExecutingHandler();
-    
-public:
-    MyObject(char* fullObjName): SmiObject(fullObjName) { }
-};
-//==========================================================================
-void MyObject::smiStateChangeHandler() {
-	char *state = getState();
-	char *name = getName();
-
-	if(state != 0)
-		cout << getName() << " in state " << getState() << endl;
-	else
-		cout << getName() << " DEAD " << endl;
-}
-//===========================================================================
-void MyObject::smiExecutingHandler() {
-    cout << getName() << " Busy" << endl;
-}
-//===========================================================================
-int main(int argc, char* argv[]) {
-
-    string fullObjectName;
-    string smiDomain;
-    string objectName;
-
-    if ( argc <= 1 ) {
-        cerr << "Error No object specified" << endl;
-        exit(1);
-    }
-    
-    if ( getenv("DIM_DNS_NODE") == 0 ) {
-        cerr << "***Error getObjectState DIM_DNS_NODE is undefined" << endl;
-        exit(11);
-    } 
-    
-    DimCurrentInfo dns("DIS_DNS/VERSION_NUMBER",2,-1);
-    if ( dns.getInt() == -1 ) {
-        cerr << "***Error getObjectState Name server is not running" << endl;
-        exit(12);
-    }
-    
-    int i;
-    for(i = 0; i < strlen(argv[1]); i++) {
-          fullObjectName += toupper(argv[1][i]);
-    }
-
-    int ipos = fullObjectName.find("::");
-
-    if ( ipos < 0 ) {
-        cerr << "***Error Domain not specified" << endl;
-        exit(2);
-    }
-    
-    smiDomain = fullObjectName.substr(0,ipos);
-    
-    objectName = fullObjectName.substr(ipos+2,fullObjectName.length());
-
-    char* ptnr = const_cast<char*> (smiDomain.c_str());
-    int numOfObjects = smiui_connect_domain(ptnr);
-    if ( numOfObjects == 0 ) {
-        cerr << "***Error Domain is not running" << endl;
-        exit(3);
-    }
-
-    ptnr = const_cast<char*> (fullObjectName.c_str());
-    
-    MyObject object(ptnr);
-    
-
-    if ( object.getState() == 0 ) {
-        cerr << "***Error Object does not exists" << endl;
-        exit(4);
-    }
-
-/*    int busyflg = object.getBusy();
-    
-    if ( busyflg == 1 ) {
-        cout <<"Busy";
-        exit(0);
-    }
-    
-    cout << object.getState() ;*/
-    while ( 1 ) { pause();}
-    
-    exit(0);
-
-
-}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/.setup smixx/src/EXAMPLES/run_control/.setup
--- smixx_web/src/EXAMPLES/run_control/.setup	2002-05-07 17:58:46.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/.setup	1970-01-01 01:00:00.000000000 +0100
@@ -1,9 +0,0 @@
-if (! -d $SMIDIR/src/examples/run_control/$ODIR) then
-   echo Created Directory : $SMIDIR/src/examples/run_control/$ODIR
-   mkdir $SMIDIR/src/examples/run_control/$ODIR
-endif
-
-alias Logger "$SMIDIR/src/examples/run_control/$ODIR/logger MINI_RUN"
-alias Evt_builder "$SMIDIR/src/examples/run_control/$ODIR/evt_builder MINI_RUN"
-alias Run_con "smiSM MINI_RUN $SMIDIR/src/examples/run_control/run_con"
-alias Run_con_ui "smiGUI MINI_RUN $SMIDIR/src/examples/run_control/config_MINI_RUN.dat"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/Run_con_test.sobj smixx/src/EXAMPLES/run_control/Run_con_test.sobj
--- smixx_web/src/EXAMPLES/run_control/Run_con_test.sobj	2005-05-26 13:57:54.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/Run_con_test.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,506 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-AUTO_PILOT
-    0    0    0
-*STATE
-OFF
-    0
-*ACTION
-ACTIVATE
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-RUN
-do
-START_RUN
-    0
-RUN
-terminate
-ON
-*END_ACTION
-*END_STATE
-*STATE
-ON
-    0
-*WHEN
- (RUN NOT_IN_STATE RUNNING)
-    1    0
-    1
-RUN
-not_in_state
-    1
-RUNNING
-do
-X_ACTIVATE
-    0
-&THIS_OBJECT
-*ACTION
-DISACTIVATE
-    0    0
-*BLOCK
-  0  0
-terminate
-OFF
-*END_ACTION
-*ACTION
-X_ACTIVATE
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-RUN
-do
-START_RUN
-    0
-RUN
-terminate
-ON
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-RUN_TYPE
-    0    0    0
-*STATE
-TEST
-    0
-*ACTION
-PHYSICS
-    0    0
-*BLOCK
-  0  0
-do
-LOG
-    0
-LOGGER
-if
-  1
- (LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-LOGGING
-  1  1
-terminate
-TEST
-*BLOCK
-  1  1
-terminate
-PHYSICS
-*END_ACTION
-*END_STATE
-*STATE
-PHYSICS
-    0
-*ACTION
-TEST
-    0    0
-*BLOCK
-  0  0
-do
-NOLOG
-    0
-LOGGER
-if
-  1
- (LOGGER IN_STATE NOT_LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-NOT_LOGGING
-  1  1
-terminate
-PHYSICS
-*BLOCK
-  1  1
-terminate
-TEST
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-RUN
-    0    0    0
-*PARAMETERS
-INT
-NUMBER_T
-0
-INT
-NUMBER_P
-0
-*END_PARAMETERS
-*STATE
-STOPPED
-    0
-*ACTION
-START_RUN
-    0    0
-*BLOCK
-  0  0
-set
-    3
-NUMBER_T
-EVT_BUILDER
-NUMBER_T
-set
-    3
-NUMBER_P
-EVT_BUILDER
-NUMBER_P
-if
-  1
- (NOT EVT_BUILDER IN_STATE READY)
-    1    0
-    1
-EVT_BUILDER
-not_in_state
-    1
-READY
-  1  1
-if
-  1
- (RUN_TYPE IN_STATE PHYSICS)
-    1    0
-    1
-RUN_TYPE
-in_state
-    1
-PHYSICS
-  2  1
-if
-  1
- (LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-LOGGING
-  3  1
-if
-  2
- (RUN_TYPE IN_STATE PHYSICS)
-    1    0
-    1
-RUN_TYPE
-in_state
-    1
-PHYSICS
-  4  1
-else
-    0    0
-  5  1
-if
-  1
- (EVT_BUILDER IN_STATE RUNNING)
-    1    0
-    1
-EVT_BUILDER
-in_state
-    1
-RUNNING
-  6  1
-terminate
-STOPPED
-*BLOCK
-  1  1
-terminate
-STOPPED
-*BLOCK
-  2  1
-do
-LOG
-    0
-LOGGER
-if
-  1
- (NOT LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-not_in_state
-    1
-LOGGING
-  7  2
-*BLOCK
-  3  1
-do
-X_OPEN_FILE
-    0
-LOGGER
-*BLOCK
-  4  1
-do
-START
-    2
-TYPE
-"PHYSICS"
-NR
-NUMBER_P
-EVT_BUILDER
-*BLOCK
-  5  1
-do
-START
-    2
-TYPE
-"TEST"
-NR
-NUMBER_T
-EVT_BUILDER
-*BLOCK
-  6  1
-terminate
-RUNNING
-*BLOCK
-  7  2
-terminate
-STOPPED
-*END_ACTION
-*END_STATE
-*STATE
-RUNNING
-    0
-*WHEN
- (EVT_BUILDER IN_STATE ERROR)
-    1    0
-    1
-EVT_BUILDER
-in_state
-    1
-ERROR
-do
-X_SET_ERROR
-    0
-&THIS_OBJECT
-*ACTION
-STOP_RUN
-    0    0
-*BLOCK
-  0  0
-do
-STOP
-    0
-EVT_BUILDER
-if
-  1
- (LOGGER IN_STATE WRITING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-WRITING
-  1  1
-terminate
-STOPPED
-*BLOCK
-  1  1
-do
-X_CLOSE_FILE
-    0
-LOGGER
-*END_ACTION
-*ACTION
-X_SET_ERROR
-    0    0
-*BLOCK
-  0  0
-if
-  1
- (LOGGER IN_STATE WRITING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-WRITING
-  1  1
-terminate
-ERROR
-*BLOCK
-  1  1
-do
-X_CLOSE_FILE
-    0
-LOGGER
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*ACTION
-RECOVER
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-EVT_BUILDER
-terminate
-STOPPED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-LOGGER
-    0    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-DEAD
-    1
-DEAD_STATE
-*END_STATE
-*STATE
-NOT_LOGGING
-    0
-*ACTION
-LOG
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-LOGGING
-    0
-*ACTION
-NOLOG
-    0    0
-*END_ACTION
-*ACTION
-X_OPEN_FILE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-WRITING
-    0
-*ACTION
-X_CLOSE_FILE
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_OBJECT
-*OBJECT
-EVT_BUILDER
-    0    1    1
-ASSOCIATED
-*PARAMETERS
-INT
-NUMBER_T
-&nodefault
-INT
-NUMBER_P
-&nodefault
-*END_PARAMETERS
-*SUBOBJECT
-&DUMMY
-*STATE
-DEAD
-    1
-DEAD_STATE
-*END_STATE
-*STATE
-READY
-    0
-*ACTION
-START
-    2    0
-STRING
-TYPE
-&nodefault
-INT
-NR
-&nodefault
-*END_ACTION
-*END_STATE
-*STATE
-RUNNING
-    0
-*ACTION
-STOP
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*ACTION
-RECOVER
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_OBJECT
Binary files smixx_web/src/EXAMPLES/run_control/bin/evt_builder.exe and smixx/src/EXAMPLES/run_control/bin/evt_builder.exe differ
Binary files smixx_web/src/EXAMPLES/run_control/bin/evt_builder_cpp.exe and smixx/src/EXAMPLES/run_control/bin/evt_builder_cpp.exe differ
Binary files smixx_web/src/EXAMPLES/run_control/bin/logger.exe and smixx/src/EXAMPLES/run_control/bin/logger.exe differ
Binary files smixx_web/src/EXAMPLES/run_control/bin/logger_cpp.exe and smixx/src/EXAMPLES/run_control/bin/logger_cpp.exe differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/evt_builder.c smixx/src/EXAMPLES/run_control/evt_builder.c
--- smixx_web/src/EXAMPLES/run_control/evt_builder.c	2005-06-28 18:27:44.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/evt_builder.c	2006-05-12 00:09:00.000000000 +0200
@@ -9,10 +9,13 @@
 {
 	int num;
 
-	char proxy_name[128];
+	char proxy_name[64];
 	void handle_command();
 	smi_volatile();
+	if (argc > 1) 
 	sprintf(proxy_name,"%s::EVT_BUILDER",argv[1]);
+	else 
+	  sprintf(proxy_name, "MINI_RUN::EVT_BUILDER");
 	smi_attach(proxy_name, handle_command);
 	num = 1;
 	smi_set_par("NUMBER_T", &num, SMI_INTEGER);
@@ -35,6 +38,7 @@
 set_in_error(tag)
 int tag;
 {
+  	printf("Setting error due to timeout\n");
 	smi_set_state("ERROR");
 	Timer_on = 0;
 }
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/evt_builder.hxx smixx/src/EXAMPLES/run_control/evt_builder.hxx
--- smixx_web/src/EXAMPLES/run_control/evt_builder.hxx	2001-08-20 18:01:18.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/evt_builder.hxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,42 +0,0 @@
-#include <smirtl.hxx>
-
-class EVT_BUILDER: public SmiProxy
-{
-protected :
-/* Actions */
-#ifdef SMI_INHERIT
-	virtual void START() {};
-	virtual void STOP() {};
-	virtual void RECOVER() {};
-#else
-	virtual void START();
-	virtual void STOP();
-	virtual void RECOVER();
-#endif
-/* Parameters of action START */
-	char *getParTYPE() {return getParameterString("TYPE");};
-	int getParNR() {return getParameterInt("NR");};
-/* Command Handler */
-	void smiCommandHandler();
-public:
-/* States */
-	void setREADY() {setState("READY");};
-	void setRUNNING() {setState("RUNNING");};
-	void setERROR() {setState("ERROR");};
-/* Object Parameters */
-	int setParNUMBER_T(int val) {return setParameter("NUMBER_T", val);};
-	int setParNUMBER_P(int val) {return setParameter("NUMBER_P", val);};
-/* Constructors */
-	EVT_BUILDER(): SmiProxy("EVT_BUILDER") {};
-	EVT_BUILDER(char *domain): SmiProxy("EVT_BUILDER") { attach(domain);};
-};
-
-void EVT_BUILDER::smiCommandHandler()
-{
-	if(testAction("START"))
-		START();
-	else if(testAction("STOP"))
-		STOP();
-	else if(testAction("RECOVER"))
-		RECOVER();
-}
Binary files smixx_web/src/EXAMPLES/run_control/linux/evt_builder and smixx/src/EXAMPLES/run_control/linux/evt_builder differ
Binary files smixx_web/src/EXAMPLES/run_control/linux/evt_builder_cpp and smixx/src/EXAMPLES/run_control/linux/evt_builder_cpp differ
Binary files smixx_web/src/EXAMPLES/run_control/linux/logger and smixx/src/EXAMPLES/run_control/linux/logger differ
Binary files smixx_web/src/EXAMPLES/run_control/linux/logger_cpp and smixx/src/EXAMPLES/run_control/linux/logger_cpp differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/logger.c smixx/src/EXAMPLES/run_control/logger.c
--- smixx_web/src/EXAMPLES/run_control/logger.c	2004-05-27 16:33:02.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/logger.c	2006-05-11 22:53:38.000000000 +0200
@@ -9,7 +9,10 @@
 	char proxy_name[64];
 	void handle_command();
 	smi_volatile();
+	if (argc > 1)
 	sprintf(proxy_name,"%s::LOGGER",argv[1]);
+	else 
+	  sprintf(proxy_name,"MINI_RUN::LOGGER");
 	smi_attach(proxy_name, handle_command);
 	smi_set_state("NOT_LOGGING");
 /*
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/makefile smixx/src/EXAMPLES/run_control/makefile
--- smixx_web/src/EXAMPLES/run_control/makefile	2002-05-07 17:58:48.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/makefile	1970-01-01 01:00:00.000000000 +0100
@@ -1,30 +0,0 @@
-#
-# Makefile: builds the Proxies for RUN_CON
-#
-
-CC = cc
-CXX = CC
-MAKE = gmake
-CFLAGS = $(FLAGS) -g -I. -I$(DIMDIR)/dim -I$(SMIDIR)/smixx
-EXTRALIBS =
-
-ifeq ($(OS),Solaris)
-	EXTRALIBS = -lpthread -lposix4 -lsocket -lnsl
-	FLAGS += -mt
-endif
-ifeq ($(OS),Linux)
-	EXTRALIBS = -lpthread
-	CXX = g++
-endif
-
-all:	$(ODIR)/logger	$(ODIR)/evt_builder
-
-$(ODIR)/logger : logger.c
-	$(CC) $(CFLAGS) logger.c -L$(SMIDIR)/$(ODIR) -lsmi -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/logger
-$(ODIR)/evt_builder : evt_builder.c
-	$(CC) $(CFLAGS) evt_builder.c -L$(SMIDIR)/$(ODIR) -lsmi -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/evt_builder
-
-$(ODIR)/logger_cpp : logger_cpp.cxx
-	$(CXX) $(CFLAGS) logger_cpp.cxx -L$(SMIDIR)/$(ODIR) -lsmi -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/logger_cpp
-$(ODIR)/evt_builder_cpp : evt_builder_cpp.cxx
-	$(CXX) $(CFLAGS) evt_builder_cpp.cxx -L$(SMIDIR)/$(ODIR) -lsmi -L$(DIMDIR)/$(ODIR) -ldim $(EXTRALIBS) -o $(ODIR)/evt_builder_cpp
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/run_con.smi smixx/src/EXAMPLES/run_control/run_con.smi
--- smixx_web/src/EXAMPLES/run_control/run_con.smi	2002-05-07 17:58:48.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/run_con.smi	2006-05-14 18:51:07.000000000 +0200
@@ -1,3 +1,31 @@
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "EXAMPLES/run_control/run_con.smi"
+# 1 "<built-in>"
+# 1 "<command line>"
+# 1 "EXAMPLES/run_control/run_con.smi"
 object: AUTO_PILOT
 	state: off
 		action: ACTIVATE			
@@ -93,4 +121,3 @@
 		action: STOP
 	state: ERROR
 		action: RECOVER
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/run_con.sml smixx/src/EXAMPLES/run_control/run_con.sml
--- smixx_web/src/EXAMPLES/run_control/run_con.sml	2002-05-07 17:58:48.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/run_con.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,96 +0,0 @@
-object: AUTO_PILOT
-	state: off
-		action: ACTIVATE			
-			do RECOVER RUN
-			do START_RUN RUN
-			terminate_action/state=ON
-	state: ON
-	when (RUN not_in_state RUNNING) do X_ACTIVATE
-		action: DISACTIVATE
-			terminate_action/state=OFF
-		action: X_ACTIVATE			
-			do RECOVER RUN
-			do START_RUN RUN
-			terminate_action/state=ON
-
-object: RUN_TYPE
-	state: TEST
-		action: PHYSICS
-			do LOG LOGGER
-			if (LOGGER in_state LOGGING) then
-				terminate_action/state=PHYSICS
-			endif
-			terminate_action/state=TEST
-	state: PHYSICS
-		action: TEST
-			do NOLOG LOGGER
-			if (LOGGER in_state NOT_LOGGING) then
-				terminate_action/state=TEST
-			endif
-			terminate_action/state=PHYSICS
-
-object: RUN
-	parameters: int NUMBER_T = 0, int NUMBER_P = 0
-	state: STOPPED
-		action: START_RUN
-			set NUMBER_T = EVT_BUILDER<NUMBER_T>
-			set NUMBER_P = EVT_BUILDER<NUMBER_P>
-			if (not EVT_BUILDER in_state READY) then
-				terminate_action/state=STOPPED
-			endif
-			if (RUN_TYPE in_state PHYSICS) then
-				do LOG LOGGER
-				if (not LOGGER in_state LOGGING) then
-					terminate_action/state=STOPPED
-				endif
-			endif
-			if (LOGGER in_state LOGGING) then
-				do X_OPEN_FILE LOGGER
-			endif
-			if (RUN_TYPE in_state PHYSICS) then
-				do START (TYPE="PHYSICS",NR=NUMBER_P) EVT_BUILDER
-			else
-				do START (TYPE="TEST",NR=NUMBER_T) EVT_BUILDER
-			endif
-			if (EVT_BUILDER in_state RUNNING) then
-				terminate_action/state=RUNNING
-			endif
-			terminate_action/state=STOPPED
-	state: RUNNING
-	when (EVT_BUILDER in_state ERROR) do X_SET_ERROR
-		action: STOP_RUN
-			do STOP EVT_BUILDER
-			if (LOGGER in_state WRITING) then
-				do X_CLOSE_FILE LOGGER
-			endif
-			terminate_action/state=STOPPED
-		action: X_SET_ERROR
-			if (LOGGER in_state WRITING) then
-				do X_CLOSE_FILE LOGGER
-			endif
-			terminate_action/state=ERROR
-	state: ERROR
-		action: RECOVER
-			do RECOVER EVT_BUILDER
-			terminate_action/state=STOPPED
-
-object: LOGGER /associated
-	state: DEAD /dead_state
-	state: NOT_LOGGING
-		action: LOG
-	state: LOGGING
-		action: NOLOG
-		action: X_OPEN_FILE
-	state: WRITING
-		action: X_CLOSE_FILE
-
-object: EVT_BUILDER /associated
-	parameters: int NUMBER_T, int NUMBER_P
-	state: DEAD /dead_state
-	state: READY
-		action: START(TYPE, int NR)
-	state: RUNNING
-		action: STOP
-	state: ERROR
-		action: RECOVER
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/run_con.sobj smixx/src/EXAMPLES/run_control/run_con.sobj
--- smixx_web/src/EXAMPLES/run_control/run_con.sobj	2005-08-15 18:47:18.000000000 +0200
+++ smixx/src/EXAMPLES/run_control/run_con.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,506 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-AUTO_PILOT
-    0    0    0
-*STATE
-OFF
-    0
-*ACTION
-ACTIVATE
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-RUN
-do
-START_RUN
-    0
-RUN
-terminate
-ON
-*END_ACTION
-*END_STATE
-*STATE
-ON
-    0
-*WHEN
- (RUN NOT_IN_STATE RUNNING)
-    1    0
-    1
-RUN
-not_in_state
-    1
-RUNNING
-do
-X_ACTIVATE
-    0
-&THIS_OBJECT
-*ACTION
-DISACTIVATE
-    0    0
-*BLOCK
-  0  0
-terminate
-OFF
-*END_ACTION
-*ACTION
-X_ACTIVATE
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-RUN
-do
-START_RUN
-    0
-RUN
-terminate
-ON
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-RUN_TYPE
-    0    0    0
-*STATE
-TEST
-    0
-*ACTION
-PHYSICS
-    0    0
-*BLOCK
-  0  0
-do
-LOG
-    0
-LOGGER
-if
-  1
- (LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-LOGGING
-  1  1
-terminate
-TEST
-*BLOCK
-  1  1
-terminate
-PHYSICS
-*END_ACTION
-*END_STATE
-*STATE
-PHYSICS
-    0
-*ACTION
-TEST
-    0    0
-*BLOCK
-  0  0
-do
-NOLOG
-    0
-LOGGER
-if
-  1
- (LOGGER IN_STATE NOT_LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-NOT_LOGGING
-  1  1
-terminate
-PHYSICS
-*BLOCK
-  1  1
-terminate
-TEST
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-RUN
-    0    0    0
-*PARAMETERS
-INT
-NUMBER_T
-0
-INT
-NUMBER_P
-0
-*END_PARAMETERS
-*STATE
-STOPPED
-    0
-*ACTION
-START_RUN
-    0    0
-*BLOCK
-  0  0
-set
-    3
-NUMBER_T
-EVT_BUILDER
-NUMBER_T
-set
-    3
-NUMBER_P
-EVT_BUILDER
-NUMBER_P
-if
-  1
- (NOT EVT_BUILDER IN_STATE READY)
-    1    0
-    1
-EVT_BUILDER
-not_in_state
-    1
-READY
-  1  1
-if
-  1
- (RUN_TYPE IN_STATE PHYSICS)
-    1    0
-    1
-RUN_TYPE
-in_state
-    1
-PHYSICS
-  2  1
-if
-  1
- (LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-LOGGING
-  3  1
-if
-  2
- (RUN_TYPE IN_STATE PHYSICS)
-    1    0
-    1
-RUN_TYPE
-in_state
-    1
-PHYSICS
-  4  1
-else
-    0    0
-  5  1
-if
-  1
- (EVT_BUILDER IN_STATE RUNNING)
-    1    0
-    1
-EVT_BUILDER
-in_state
-    1
-RUNNING
-  6  1
-terminate
-STOPPED
-*BLOCK
-  1  1
-terminate
-STOPPED
-*BLOCK
-  2  1
-do
-LOG
-    0
-LOGGER
-if
-  1
- (NOT LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-not_in_state
-    1
-LOGGING
-  7  2
-*BLOCK
-  3  1
-do
-X_OPEN_FILE
-    0
-LOGGER
-*BLOCK
-  4  1
-do
-START
-    2
-TYPE
-"PHYSICS"
-NR
-NUMBER_P
-EVT_BUILDER
-*BLOCK
-  5  1
-do
-START
-    2
-TYPE
-"TEST"
-NR
-NUMBER_T
-EVT_BUILDER
-*BLOCK
-  6  1
-terminate
-RUNNING
-*BLOCK
-  7  2
-terminate
-STOPPED
-*END_ACTION
-*END_STATE
-*STATE
-RUNNING
-    0
-*WHEN
- (EVT_BUILDER IN_STATE ERROR)
-    1    0
-    1
-EVT_BUILDER
-in_state
-    1
-ERROR
-do
-X_SET_ERROR
-    0
-&THIS_OBJECT
-*ACTION
-STOP_RUN
-    0    0
-*BLOCK
-  0  0
-do
-STOP
-    0
-EVT_BUILDER
-if
-  1
- (LOGGER IN_STATE WRITING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-WRITING
-  1  1
-terminate
-STOPPED
-*BLOCK
-  1  1
-do
-X_CLOSE_FILE
-    0
-LOGGER
-*END_ACTION
-*ACTION
-X_SET_ERROR
-    0    0
-*BLOCK
-  0  0
-if
-  1
- (LOGGER IN_STATE WRITING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-WRITING
-  1  1
-terminate
-ERROR
-*BLOCK
-  1  1
-do
-X_CLOSE_FILE
-    0
-LOGGER
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*ACTION
-RECOVER
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-EVT_BUILDER
-terminate
-STOPPED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-LOGGER
-    0    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-DEAD
-    1
-DEAD_STATE
-*END_STATE
-*STATE
-NOT_LOGGING
-    0
-*ACTION
-LOG
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-LOGGING
-    0
-*ACTION
-NOLOG
-    0    0
-*END_ACTION
-*ACTION
-X_OPEN_FILE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-WRITING
-    0
-*ACTION
-X_CLOSE_FILE
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_OBJECT
-*OBJECT
-EVT_BUILDER
-    0    1    1
-ASSOCIATED
-*PARAMETERS
-INT
-NUMBER_T
-&nodefault
-INT
-NUMBER_P
-&nodefault
-*END_PARAMETERS
-*SUBOBJECT
-&DUMMY
-*STATE
-DEAD
-    1
-DEAD_STATE
-*END_STATE
-*STATE
-READY
-    0
-*ACTION
-START
-    2    0
-STRING
-TYPE
-&nodefault
-INT
-NR
-&nodefault
-*END_ACTION
-*END_STATE
-*STATE
-RUNNING
-    0
-*ACTION
-STOP
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*ACTION
-RECOVER
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_OBJECT
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/run_con_new.sml smixx/src/EXAMPLES/run_control/run_con_new.sml
--- smixx_web/src/EXAMPLES/run_control/run_con_new.sml	2003-03-20 20:56:58.000000000 +0100
+++ smixx/src/EXAMPLES/run_control/run_con_new.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,96 +0,0 @@
-object: AUTO_PILOT
-	state: off
-		action: ACTIVATE			
-			do RECOVER RUN
-			do START_RUN RUN
-			terminate_action/state=ON
-	state: ON
-	when (RUN not_in_state RUNNING) do X_ACTIVATE
-		action: DISACTIVATE
-			terminate_action/state=OFF
-		action: X_ACTIVATE			
-			do RECOVER RUN
-			do START_RUN RUN
-			terminate_action/state=ON
-
-object: RUN_TYPE
-	state: TEST
-		action: PHYSICS
-			do LOG LOGGER
-			if (LOGGER in_state LOGGING) then
-				terminate_action/state=PHYSICS
-			endif
-			terminate_action/state=TEST
-	state: PHYSICS
-		action: TEST
-			do NOLOG LOGGER
-			if (LOGGER in_state NOT_LOGGING) then
-				terminate_action/state=TEST
-			endif
-			terminate_action/state=PHYSICS
-
-object: RUN
-	parameters: int NUMBER_T = 0, int NUMBER_P = 0
-	state: STOPPED
-		action: START_RUN
-			set NUMBER_T = EVT_BUILDER<NUMBER_T>
-			set NUMBER_P = EVT_BUILDER<NUMBER_P>
-			if (not EVT_BUILDER in_state READY) then
-				terminate_action/state=STOPPED
-			endif
-			if (RUN_TYPE in_state PHYSICS) then
-				do LOG LOGGER
-				if (not LOGGER in_state LOGGING) then
-					terminate_action/state=STOPPED
-				endif
-			endif
-			if (LOGGER in_state LOGGING) then
-				do X_OPEN_FILE LOGGER
-			endif
-			if (RUN_TYPE in_state PHYSICS) then
-				do START (TYPE="PHYSICS",NR=NUMBER_P) EVT_BUILDER
-			else
-				do START (TYPE="TEST",NR=NUMBER_T) EVT_BUILDER
-			endif
-			if (EVT_BUILDER in_state RUNNING) then
-				terminate_action/state=RUNNING
-			endif
-			terminate_action/state=STOPPED
-	state: RUNNING
-	when (EVT_BUILDER in_state ERROR) do X_SET_ERROR
-		action: STOP_RUN
-			do STOP EVT_BUILDER
-			if (LOGGER in_state WRITING) then
-				do X_CLOSE_FILE LOGGER
-			endif
-			terminate_action/state=STOPPED
-		action: X_SET_ERROR
-			if (LOGGER in_state WRITING) then
-				do X_CLOSE_FILE LOGGER
-			endif
-			terminate_action/state=ERROR
-	state: ERROR
-		action: RECOVER
-			do RECOVER EVT_BUILDER
-			terminate_action/state=STOPPED
-
-object: LOGGER /associated
-	state: DEAD /dead_state
-	state: NOT_LOGGING
-		action: LOG
-	state: LOGGING
-		action: NOLOG
-		action: X_OPEN_FILE
-	state: WRITING
-		action: X_CLOSE_FILE
-
-object: EVT_BUILDER /associated
-	parameters: int NUMBER_T, int NUMBER_P
-	state: DEAD /dead_state
-	state: READY
-		action: START(TYPE, int NR)
-	state: RUNNING
-		action: STOP
-	state: ERROR
-		action: RECOVER
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/run_control/runit.in smixx/src/EXAMPLES/run_control/runit.in
--- smixx_web/src/EXAMPLES/run_control/runit.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/EXAMPLES/run_control/runit.in	2006-05-14 18:48:57.000000000 +0200
@@ -0,0 +1,17 @@
+#!/bin/sh 
+
+srcdir=@srcdir@
+top_builddir=@top_builddir@
+datadir=${srcdir}/EXAMPLES/run_control
+execdir=${srcdir}
+
+${execdir}/evt_builder & 
+${execdir}/logger & 
+${execdir}/smiSM $@ MINI_RUN ${datadir}/run_con &
+${execdir}/smiGUI ${datadir}/config_MINI_RUN.dat
+
+#
+# EOF
+#
+
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCXXBoda.dsp smixx/src/EXAMPLES/testCXXBoda.dsp
--- smixx_web/src/EXAMPLES/testCXXBoda.dsp	2004-11-18 19:08:08.000000000 +0100
+++ smixx/src/EXAMPLES/testCXXBoda.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,97 +0,0 @@
-# Microsoft Developer Studio Project File - Name="testCXXBoda" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=testCXXBoda - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXBoda.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXBoda.mak" CFG="testCXXBoda - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "testCXXBoda - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "testCXXBoda - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "testCXXBoda - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /machine:I386
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "testCXXBoda - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "testCXXBoda - Win32 Release"
-# Name "testCXXBoda - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\monObjectState.cxx
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCXXdim.cxx smixx/src/EXAMPLES/testCXXdim.cxx
--- smixx_web/src/EXAMPLES/testCXXdim.cxx	2004-08-02 18:45:38.000000000 +0200
+++ smixx/src/EXAMPLES/testCXXdim.cxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-#include <iostream>
-
-#include <dic.hxx>
-
-#include <string>
-
-using namespace std;
-
-int main()
-
-{
-
-        string smiDomain;
-
-    char *service, *format;
-
-    int type;
-
-//dic_set_debug_on(); 
-
-    DimBrowser brsm, br;
-
- 
-
-    brsm.getServices("*_SMI/VERSION_NUMBER");
-
-    while( type = brsm.getNextService(service,format) )
-
-    {
-
-        DimCurrentInfo ver(service,-1);
-
- 
-
-        cout << ver.getInt() << "  " << service << endl;
-
-    }
-
- 
-//	sleep(10);
-    brsm.getServices("*::*/VERSION_NUMBER");
-
-    while( type = brsm.getNextService(service,format) )
-
-    {
-
-        DimCurrentInfo ver(service,-1);
-
- 
-
-        cout << ver.getInt() << "  " << service << endl;
-
-    }
-
-	cout << "Finished" << endl;
- 
-	while(1)
-		pause();
-    return 0;
-
-}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCXXdim.dsp smixx/src/EXAMPLES/testCXXdim.dsp
--- smixx_web/src/EXAMPLES/testCXXdim.dsp	2004-08-02 14:46:54.000000000 +0200
+++ smixx/src/EXAMPLES/testCXXdim.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,97 +0,0 @@
-# Microsoft Developer Studio Project File - Name="testCXXdim" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=testCXXdim - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXdim.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXdim.mak" CFG="testCXXdim - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "testCXXdim - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "testCXXdim - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "testCXXdim - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /machine:I386
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "testCXXdim - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "testCXXdim - Win32 Release"
-# Name "testCXXdim - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\testCXXdim.cxx
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCXXui.cxx smixx/src/EXAMPLES/testCXXui.cxx
--- smixx_web/src/EXAMPLES/testCXXui.cxx	2004-03-26 17:37:54.000000000 +0100
+++ smixx/src/EXAMPLES/testCXXui.cxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,137 +0,0 @@
-#include <smiuirtl.hxx>
-
-class Object: public SmiObject
-{
-	void smiStateChangeHandler();
-	void smiExecutingHandler();
-public:
-	Object(char *name): SmiObject(name) {};
-};
-
-class Domain: public SmiDomain
-{
-	void smiStateChangeHandler();
-	void smiObjSetChangeHandler();
-	void smiExecutingHandler();
-	void smiDomainHandler();
-public:
-	Domain(char *name): SmiDomain(name) {};
-};
-
-void Domain::smiStateChangeHandler()
-{
-	SmiObject *objp = getObject();
-	char *name, *state;
-		
-	name = objp->getName();
-	state = objp->getState();
-	if(name)
-	{
-		if(state)
-			cout << name << " in state " << objp->getState() << endl;
-		else
-			cout << name << " is dead" << endl;
-	}
-}
-
-void Domain::smiObjSetChangeHandler()
-{
-	SmiObjectSet *objsetp = getObjectSet();
-	SmiObject *objp;
-	char *name;
-		
-	name = objsetp->getName();
-	cout << "OBJECT_SET: " << name << " contains: "<< endl;
-	while(objp = objsetp->getNextObject())
-	{
-		cout << "\t" << objp->getName() << endl;
-	}
-}
-
-void Domain::smiExecutingHandler()
-{
-	SmiObject *objp = getObject();
-	char *name;
-
-	name = objp->getName();
-	if(name)
-	{
-		if(objp->getBusy())
-		{
-			cout << name << " executing " <<  objp->getActionInProgress() << endl;
-		}
-	}
-}
-
-void Domain::smiDomainHandler()
-{
-	int nobjs;
-	cout << "Domain " << getName();
-	if(nobjs = getNObjects())
-	{
-		cout << " is Up (" << nobjs << " objects)" << endl;
-//		while(getNextObject());
-//		while(getNextObject());
-//		while(getNextObjectSet());
-	}
-	else
-	{
-		cout << " is Down" << endl;
-	}
-}
-
-void Object::smiStateChangeHandler()
-{
-	char *name, *state;
-	SmiParam *param;
-
-	name = getName();
-	state = getState();
-	if(name)
-	{
-		if(state)
-			cout << name << " in state " << getState() << endl;
-		else
-			cout << name << " is dead" << endl;
-	}
-	while(param = getNextParam())
-	{
-		if(param == (SmiParam *)-1)
-			break;
-		cout << param->getName() << endl;
-	}
-}
-
-void Object::smiExecutingHandler()
-{
-	char *name;
-
-	name = getName();
-	if(name)
-	{
-		if(getBusy())
-		{
-			cout << name << " executing " <<  getActionInProgress() << endl;
-		}
-	}
-}
-
-main(int argc, char *argv[])
-{
-
-
-	Domain *domainp;
-
-	domainp = new Domain(argv[1]);
-/*
-	Object *objp;
-	char cmd[32];
-
-	objp = new Object(argv[1]);
-	sleep(10);
-	strcpy(cmd,"START_RUN");
-	objp->sendCommand(cmd);
-*/
-	while(1)
-		pause();
-}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCXXui.dsp smixx/src/EXAMPLES/testCXXui.dsp
--- smixx_web/src/EXAMPLES/testCXXui.dsp	2004-04-08 15:19:42.000000000 +0200
+++ smixx/src/EXAMPLES/testCXXui.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,97 +0,0 @@
-# Microsoft Developer Studio Project File - Name="testCXXui" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=testCXXui - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXui.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "testCXXui.mak" CFG="testCXXui - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "testCXXui - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "testCXXui - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "testCXXui - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /machine:I386
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "testCXXui - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "testCXXui - Win32 Release"
-# Name "testCXXui - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\testCXXui.cxx
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCui.c smixx/src/EXAMPLES/testCui.c
--- smixx_web/src/EXAMPLES/testCui.c	2004-04-08 14:59:02.000000000 +0200
+++ smixx/src/EXAMPLES/testCui.c	1970-01-01 01:00:00.000000000 +0100
@@ -1,93 +0,0 @@
-#include <stdio.h>
-#include <smiuirtl.h>
-
-void state_cb(int *id)
-{
-	char obj[132], state[132];
-	int busy, n;
-
-	smiui_get_name(*id, obj);
-	smiui_get_state(*id, &busy, state, &n);
-	printf("\tOBJECT: %s in_state %s\n",obj, state);
-}
-
-void set_cb(int *id)
-{
-	char set[132], obj[132];
-
-	smiui_get_setname(*id, set);
-	printf("SET: %s\n",set);
-	if(smiui_get_first_object_in_set(*id, obj))
-	{
-		printf("\t%s\n",obj);
-		while(smiui_get_next_object_in_set(*id, obj))
-		{
-			printf("\t%s\n",obj);
-		}
-	}
-}
-
-void domain_cb(char **name, int *nobjs)
-{
-	char str[132];
-	static int *statechange_ids = 0, *setchange_ids = 0;
-	int i, nobjsets;
-
-	printf("DOMAIN: %s",*name);
-	if(*nobjs)
-	{
-		printf(" up\n");
-		printf("OBJECTS:\n");
-		statechange_ids = (int *)malloc(((*nobjs)+1) * sizeof(int));
-		i = 0;
-		while(smiui_get_next_object(*name,str))
-		{
-			printf("\t%s\n",str);
-			statechange_ids[i++] = smiui_book_statechange(str, state_cb, 0);
-		}
-		statechange_ids[i] = 0;
-	}
-	else
-	{
-		printf(" down\n");
-		if(statechange_ids)
-		{
-			for(i = 0; statechange_ids[i]; i++)
-				smiui_cancel_statechange(statechange_ids[i]);
-			free(statechange_ids);
-			statechange_ids = 0;
-		}
-	}
-	nobjsets = smiui_number_of_objectsets(*name);
-	if(nobjsets)
-	{
-		printf("OBJECTSETS:\n");
-		setchange_ids = (int *)malloc((nobjsets+1) * sizeof(int));
-		i = 0;
-		while(smiui_get_next_objectset(*name,str))
-		{
-			printf("\t%s\n",str);
-			setchange_ids[i++] = smiui_book_objectsetchange(str, set_cb, 0);
-		}
-		setchange_ids[i] = 0;
-	}
-	else
-	{
-		if(setchange_ids)
-		{
-			for(i = 0; setchange_ids[i]; i++)
-				smiui_cancel_objectsetchange(setchange_ids[i]);
-			free(setchange_ids);
-			setchange_ids = 0;
-		}
-	}
-}
-
-main(int argc, char *argv[])
-{
-	char name[132];
-	strcpy(name, argv[1]);
-	smiui_book_connect_domain(name, domain_cb, name);
-	while(1)
-		pause();
-}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/testCui.dsp smixx/src/EXAMPLES/testCui.dsp
--- smixx_web/src/EXAMPLES/testCui.dsp	2004-04-08 15:19:42.000000000 +0200
+++ smixx/src/EXAMPLES/testCui.dsp	1970-01-01 01:00:00.000000000 +0100
@@ -1,97 +0,0 @@
-# Microsoft Developer Studio Project File - Name="testCui" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Console Application" 0x0103
-
-CFG=testCui - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "testCui.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "testCui.mak" CFG="testCui - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "testCui - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "testCui - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-F90=df.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "testCui - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "Release"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "bin"
-# PROP Intermediate_Dir "tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /compile_only /nologo /warn:nofileopt
-# ADD F90 /compile_only /nologo /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD CPP /nologo /W3 /GX /O2 /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /machine:I386
-# SUBTRACT LINK32 /pdb:none
-
-!ELSEIF  "$(CFG)" == "testCui - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "Debug"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\bin"
-# PROP Intermediate_Dir "..\tmp"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD F90 /check:bounds /compile_only /debug:full /nologo /traceback /warn:argument_checking /warn:nofileopt
-# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "$(SMIDIR)/smixx" /I "$(DIMDIR)/dim" /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib wsock32.lib $(DIMDIR)/bin/dim.lib $(SMIDIR)/bin/smiuirtl.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# SUBTRACT LINK32 /pdb:none
-
-!ENDIF 
-
-# Begin Target
-
-# Name "testCui - Win32 Release"
-# Name "testCui - Win32 Debug"
-# Begin Source File
-
-SOURCE=.\testCui.c
-# End Source File
-# End Target
-# End Project
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/CLEAN_ROOM.sml smixx/src/EXAMPLES/tests/CLEAN_ROOM.sml
--- smixx_web/src/EXAMPLES/tests/CLEAN_ROOM.sml	2004-06-28 18:57:50.000000000 +0200
+++ smixx/src/EXAMPLES/tests/CLEAN_ROOM.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,275 +0,0 @@
-class: TOP_CIC_CLASS
-    state: READY	!color: FwStateOKPhysics
-        when ( ( any_in CLEANROOMHUMIDITY_FWSETSTATES in_state NOT_READY ) or
-               ( any_in STATUS_FWSETSTATES in_state NOT_READY ) or
-               ( any_in STATUSTOP_FWSETSTATES in_state NOT_READY ) or
-               ( any_in CLEANROOMTEMP_FWSETSTATES in_state NOT_READY ) ) move_to NOT_READY
-    state: NOT_READY	!color: FwStateOKNotPhysics
-        when ( ( all_in CLEANROOMHUMIDITY_FWSETSTATES not_in_state NOT_READY ) and
-               ( all_in STATUS_FWSETSTATES not_in_state NOT_READY ) and
-               ( all_in STATUSTOP_FWSETSTATES not_in_state NOT_READY ) and
-               ( all_in CLEANROOMTEMP_FWSETSTATES not_in_state NOT_READY ) ) move_to READY
-
-object: CLEAN_ROOM is_of_class TOP_CIC_CLASS
-
-class: FwChildrenMode_CLASS
-    state: Complete	!color: _3DFace
-        when ( ( any_in FWCHILDRENMODE_FWSETSTATES not_in_state Complete ) ) move_to INCOMPLETE
-        when ( ( any_in FWCHILDMODE_FWSETSTATES not_in_state Included ) ) move_to INCOMPLETE
-    state: Incomplete	!color: FwStateAttention1
-        when ( ( all_in FWCHILDMODE_FWSETSTATES in_state Included ) ) and 
-         ( ( all_in FWCHILDRENMODE_FWSETSTATES in_state Complete ) ) move_to COMPLETE
-
-object: CLEAN_ROOM_FWCNM is_of_class FwChildrenMode_CLASS
-
-class: ASS_FwChildrenMode_CLASS/associated
-    state: Complete	!color: _3DFace
-    state: Incomplete	!color: FwStateAttention1
-
-object: HUMIDITY::HUMIDITY_FWCNM is_of_class ASS_FwChildrenMode_CLASS
-
-object: TEMPERATURE::TEMPERATURE_FWCNM is_of_class ASS_FwChildrenMode_CLASS
-
-objectset: FWCHILDRENMODE_FWSETSTATES {HUMIDITY::HUMIDITY_FWCNM,
-	TEMPERATURE::TEMPERATURE_FWCNM }
-
-class: FwMode_CLASS
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-            do Include all_in FWCHILDMODE_FWSETACTIONS
-            move_to InLocal
-        action: Include
-            do Include all_in FWCHILDMODE_FWSETACTIONS
-            move_to Included
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-            do Exclude all_in FWCHILDMODE_FWSETACTIONS
-            move_to Excluded
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Return
-            do Exclude all_in FWCHILDMODE_FWSETACTIONS
-            move_to Excluded
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Take
-            move_to InManual
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Return
-            move_to Manual
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-
-object: CLEAN_ROOM_FWM is_of_class FwMode_CLASS
-
-class: ASS_FwMode_CLASS/associated
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-        action: Include
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-        action: Manual
-        action: Ignore
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Return
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-        action: Take
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Return
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-
-object: HUMIDITY::HUMIDITY_FWM is_of_class ASS_FwMode_CLASS
-
-object: TEMPERATURE::TEMPERATURE_FWM is_of_class ASS_FwMode_CLASS
-
-class: HUMIDITY_FwChildMode_CLASS
-
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Include
-            if ( HUMIDITY::HUMIDITY_FWM not_in_state Excluded ) then
-                if ( HUMIDITY::HUMIDITY_FWM in_state Manual ) then
-                    do Take HUMIDITY::HUMIDITY_FWM
-                    insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-                    insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-                else
-                    move_to Excluded
-                endif
-            else
-                do Include HUMIDITY::HUMIDITY_FWM
-                insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-                insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-            endif
-            move_to Included
-    state: Included	!color: FwStateOKPhysics
-        when ( HUMIDITY::HUMIDITY_FWM in_state Excluded ) move_to EXCLUDED
-        when ( HUMIDITY::HUMIDITY_FWM in_state Ignored ) move_to IGNORED
-        when ( HUMIDITY::HUMIDITY_FWM in_state Manual ) move_to MANUAL
-        action: Exclude
-            if ( HUMIDITY::HUMIDITY_FWM not_in_state Included ) then
-                if ( HUMIDITY::HUMIDITY_FWM in_state InManual ) then
-                    do Return HUMIDITY::HUMIDITY_FWM
-                    remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETSTATES
-                    remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETACTIONS
-                else
-                    move_to Included
-                endif
-            else
-                do Exclude HUMIDITY::HUMIDITY_FWM
-                remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETSTATES
-                remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETACTIONS
-            endif
-            move_to Excluded
-        action: Manual
-            do Manual HUMIDITY::HUMIDITY_FWM
-            remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETACTIONS
-            move_to Manual
-        action: Ignore
-            do Ignore HUMIDITY::HUMIDITY_FWM
-            remove HUMIDITY::HUMIDITY from CLEANROOMHUMIDITY_FWSETSTATES
-            move_to Ignored
-    state: Manual	!color: FwStateOKNotPhysics
-        when ( HUMIDITY::HUMIDITY_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include HUMIDITY::HUMIDITY_FWM
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-            move_to Included
-    state: Ignored	!color: FwStateOKNotPhysics
-        when ( HUMIDITY::HUMIDITY_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include HUMIDITY::HUMIDITY_FWM
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETSTATES
-            insert HUMIDITY::HUMIDITY in CLEANROOMHUMIDITY_FWSETACTIONS
-            move_to Included
-
-object: HUMIDITY_FWM is_of_class HUMIDITY_FwChildMode_CLASS
-
-class: TEMPERATURE_FwChildMode_CLASS
-
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Include
-            if ( TEMPERATURE::TEMPERATURE_FWM not_in_state Excluded ) then
-                if ( TEMPERATURE::TEMPERATURE_FWM in_state Manual ) then
-                    do Take TEMPERATURE::TEMPERATURE_FWM
-                    insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-                    insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-                else
-                    move_to Excluded
-                endif
-            else
-                do Include TEMPERATURE::TEMPERATURE_FWM
-                insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-                insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-            endif
-            move_to Included
-    state: Included	!color: FwStateOKPhysics
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Excluded ) move_to EXCLUDED
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Ignored ) move_to IGNORED
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Manual ) move_to MANUAL
-        action: Exclude
-            if ( TEMPERATURE::TEMPERATURE_FWM not_in_state Included ) then
-                if ( TEMPERATURE::TEMPERATURE_FWM in_state InManual ) then
-                    do Return TEMPERATURE::TEMPERATURE_FWM
-                    remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETSTATES
-                    remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETACTIONS
-                else
-                    move_to Included
-                endif
-            else
-                do Exclude TEMPERATURE::TEMPERATURE_FWM
-                remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETSTATES
-                remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETACTIONS
-            endif
-            move_to Excluded
-        action: Manual
-            do Manual TEMPERATURE::TEMPERATURE_FWM
-            remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETACTIONS
-            move_to Manual
-        action: Ignore
-            do Ignore TEMPERATURE::TEMPERATURE_FWM
-            remove TEMPERATURE::TEMPERATURE from CLEANROOMTEMP_FWSETSTATES
-            move_to Ignored
-    state: Manual	!color: FwStateOKNotPhysics
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include TEMPERATURE::TEMPERATURE_FWM
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-            move_to Included
-    state: Ignored	!color: FwStateOKNotPhysics
-        when ( TEMPERATURE::TEMPERATURE_FWM in_state Included ) move_to INCLUDED
-        action: Include
-            do Include TEMPERATURE::TEMPERATURE_FWM
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETSTATES
-            insert TEMPERATURE::TEMPERATURE in CLEANROOMTEMP_FWSETACTIONS
-            move_to Included
-
-object: TEMPERATURE_FWM is_of_class TEMPERATURE_FwChildMode_CLASS
-
-objectset: FWCHILDMODE_FWSETSTATES {HUMIDITY_FWM,
-	TEMPERATURE_FWM }
-objectset: FWCHILDMODE_FWSETACTIONS {HUMIDITY_FWM,
-	TEMPERATURE_FWM }
-
-class: ASS_CleanRoomHumidity_CLASS/associated
-    state: READY	!color: FwStateOKPhysics
-    state: NOT_READY	!color: FwStateOKNotPhysics
-
-object: HUMIDITY::HUMIDITY is_of_class ASS_CleanRoomHumidity_CLASS
-
-objectset: CLEANROOMHUMIDITY_FWSETSTATES
-objectset: CLEANROOMHUMIDITY_FWSETACTIONS
-
-class: ASS_Status_CLASS/associated
-    parameters: string status = "OK"
-    state: OK	!color: FwStateOKPhysics
-    state: WARNING	!color: FwStateAttention1
-    state: ALARM	!color: FwStateAttention2
-    state: FATAL	!color: FwStateAttention3
-
-object: HUMIDITY::StatusHumidity is_of_class ASS_Status_CLASS
-
-object: TEMPERATURE::StatusTemperature is_of_class ASS_Status_CLASS
-
-objectset: STATUS_FWSETSTATES {HUMIDITY::StatusHumidity,
-	TEMPERATURE::StatusTemperature }
-objectset: STATUS_FWSETACTIONS {HUMIDITY::StatusHumidity,
-	TEMPERATURE::StatusTemperature }
-
-class: StatusTop_CLASS
-    state: OK	!color: FwStateOKPhysics
-        when ( ( any_in STATUS_FWSETSTATES in_state FATAL ) ) or 
-        when ( ( any_in STATUS_FWSETSTATES in_state ALARM ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state WARNING ) ) or 
-    state: WARNING	!color: FwStateAttention1
-        when ( ( any_in STATUS_FWSETSTATES in_state FATAL ) ) or 
-        when ( ( any_in STATUS_FWSETSTATES in_state ALARM ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state OK ) ) or 
-    state: ALARM	!color: FwStateAttention2
-        when ( ( any_in STATUS_FWSETSTATES in_state FATAL ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state WARNING ) ) or 
-        when ( ( all_in STATUS_FWSETSTATES in_state OK ) ) or 
-    state: FATAL	!color: FwStateAttention3
-        when ( ( all_in STATUS_FWSETSTATES not_in_state FATAL ) ) or 
-
-object: StatusCleanRoom is_of_class StatusTop_CLASS
-
-objectset: STATUSTOP_FWSETSTATES {StatusCleanRoom }
-objectset: STATUSTOP_FWSETACTIONS {StatusCleanRoom }
-
-class: ASS_CleanRoomTemp_CLASS/associated
-    state: READY	!color: FwStateOKPhysics
-    state: NOT_READY	!color: FwStateOKNotPhysics
-
-object: TEMPERATURE::TEMPERATURE is_of_class ASS_CleanRoomTemp_CLASS
-
-objectset: CLEANROOMTEMP_FWSETSTATES
-objectset: CLEANROOMTEMP_FWSETACTIONS
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/CLEAN_ROOM.sobj smixx/src/EXAMPLES/tests/CLEAN_ROOM.sobj
--- smixx_web/src/EXAMPLES/tests/CLEAN_ROOM.sobj	2004-06-29 16:44:22.000000000 +0200
+++ smixx/src/EXAMPLES/tests/CLEAN_ROOM.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,1250 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*CLASS
-TOP_CIC_CLASS
-    0    0
-*STATE
-READY
-    0
-*WHEN
- ( ( ANY_IN CLEANROOMHUMIDITY_FWSETST......_FWSETSTATES IN_STATE NOT_READY ) )
-    4    3
-    2
-CLEANROOMHUMIDITY_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-    2
-STATUS_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-    2
-STATUSTOP_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-    2
-CLEANROOMTEMP_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-or    T001  T002
-or    X001  T003
-or    X002  T004
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_READY
-*END_ACTION
-*END_STATE
-*STATE
-NOT_READY
-    0
-*WHEN
- ( ( ALL_IN CLEANROOMHUMIDITY_FWSETST......ETSTATES NOT_IN_STATE NOT_READY ) )
-    4    3
-    2
-CLEANROOMHUMIDITY_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-    2
-STATUS_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-    2
-STATUSTOP_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-    2
-CLEANROOMTEMP_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-and   T001  T002
-and   X001  T003
-and   X002  T004
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-READY
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-CLEAN_ROOM
-    1    0    0
-TOP_CIC_CLASS
-*END_OBJECT
-*CLASS
-FWCHILDRENMODE_CLASS
-    0    0
-*STATE
-COMPLETE
-    0
-*WHEN
- ( ( ANY_IN FWCHILDRENMODE_FWSETSTATES NOT_IN_STATE COMPLETE ) )
-    1    0
-    2
-FWCHILDRENMODE_FWSETSTATES
-any_in
-not_in_state
-    1
-COMPLETE
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( ( ANY_IN FWCHILDMODE_FWSETSTATES NOT_IN_STATE INCLUDED ) )
-    1    0
-    2
-FWCHILDMODE_FWSETSTATES
-any_in
-not_in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCOMPLETE
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-INCOMPLETE
-*END_ACTION
-*END_STATE
-*STATE
-INCOMPLETE
-    0
-*WHEN
- ( ( ALL_IN FWCHILDMODE_FWSETSTATES I......E_FWSETSTATES IN_STATE COMPLETE ) )
-    2    1
-    2
-FWCHILDMODE_FWSETSTATES
-all_in
-in_state
-    1
-INCLUDED
-    2
-FWCHILDRENMODE_FWSETSTATES
-all_in
-in_state
-    1
-COMPLETE
-and   T001  T002
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-COMPLETE
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-CLEAN_ROOM_FWCNM
-    1    0    0
-FWCHILDRENMODE_CLASS
-*END_OBJECT
-*CLASS
-ASS_FWCHILDRENMODE_CLASS
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-COMPLETE
-    0
-*END_STATE
-*STATE
-INCOMPLETE
-    0
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::HUMIDITY_FWCNM
-    1    0    1
-ASS_FWCHILDRENMODE_CLASS
-*END_OBJECT
-*OBJECT
-TEMPERATURE::TEMPERATURE_FWCNM
-    1    0    1
-ASS_FWCHILDRENMODE_CLASS
-*END_OBJECT
-*OBJECTSET
-FWCHILDRENMODE_FWSETSTATES
-    0    2
-HUMIDITY::HUMIDITY_FWCNM
-TEMPERATURE::TEMPERATURE_FWCNM
-*END_OBJECTSET
-*CLASS
-FWMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-INLOCAL
-*END_ACTION
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-EXCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INLOCAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-do
-EXCLUDE
-    0
-&ALL_IN_FWCHILDMODE_FWSETACTIONS
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-terminate
-INMANUAL
-*END_ACTION
-*END_STATE
-*STATE
-INMANUAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-CLEAN_ROOM_FWM
-    1    0    0
-FWMODE_CLASS
-*END_OBJECT
-*CLASS
-ASS_FWMODE_CLASS
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-EXCLUDED
-    0
-*ACTION
-TAKE
-    0    0
-*END_ACTION
-*ACTION
-INCLUDE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*ACTION
-EXCLUDE
-    0    0
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-INLOCAL
-    0
-*ACTION
-RETURN
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*ACTION
-INCLUDE
-    0    0
-*END_ACTION
-*ACTION
-TAKE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-INMANUAL
-    0
-*ACTION
-RETURN
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*ACTION
-INCLUDE
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::HUMIDITY_FWM
-    1    0    1
-ASS_FWMODE_CLASS
-*END_OBJECT
-*OBJECT
-TEMPERATURE::TEMPERATURE_FWM
-    1    0    1
-ASS_FWMODE_CLASS
-*END_OBJECT
-*CLASS
-HUMIDITY_FWCHILDMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM NOT_IN_STATE EXCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-not_in_state
-    1
-EXCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-INCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM IN_STATE MANUAL )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-MANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-INCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  3  2
-do
-TAKE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE EXCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-EXCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE IGNORED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-IGNORED
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE MANUAL )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-MANUAL
-do
-&END_IN_STATE_WHEN2
-    0
-&THIS_OBJECT
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM NOT_IN_STATE INCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-not_in_state
-    1
-INCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-EXCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( HUMIDITY::HUMIDITY_FWM IN_STATE INMANUAL )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-INMANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-EXCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  3  2
-do
-RETURN
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-do
-MANUAL
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-do
-IGNORE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    0
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN2
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE INCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*WHEN
- ( HUMIDITY::HUMIDITY_FWM IN_STATE INCLUDED )
-    1    0
-    1
-HUMIDITY::HUMIDITY_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-HUMIDITY::HUMIDITY_FWM
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETSTATES
-insert
-    1
-HUMIDITY::HUMIDITY
-CLEANROOMHUMIDITY_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-HUMIDITY_FWM
-    1    0    0
-HUMIDITY_FWCHILDMODE_CLASS
-*END_OBJECT
-*CLASS
-TEMPERATURE_FWCHILDMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM NOT_IN_STATE EXCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-not_in_state
-    1
-EXCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-INCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE MANUAL )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-MANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-INCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  3  2
-do
-TAKE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE EXCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-EXCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE IGNORED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-IGNORED
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE MANUAL )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-MANUAL
-do
-&END_IN_STATE_WHEN2
-    0
-&THIS_OBJECT
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM NOT_IN_STATE INCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-not_in_state
-    1
-INCLUDED
-  1  1
-else
-    0    0
-  2  1
-terminate
-EXCLUDED
-*BLOCK
-  1  1
-if
-  2
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE INMANUAL )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-INMANUAL
-  3  2
-else
-    0    0
-  4  2
-*BLOCK
-  2  1
-do
-EXCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  3  2
-do
-RETURN
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-*BLOCK
-  4  2
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-do
-MANUAL
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-do
-IGNORE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    0
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN2
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE INCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*WHEN
- ( TEMPERATURE::TEMPERATURE_FWM IN_STATE INCLUDED )
-    1    0
-    1
-TEMPERATURE::TEMPERATURE_FWM
-in_state
-    1
-INCLUDED
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-do
-INCLUDE
-    0
-TEMPERATURE::TEMPERATURE_FWM
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETSTATES
-insert
-    1
-TEMPERATURE::TEMPERATURE
-CLEANROOMTEMP_FWSETACTIONS
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-TEMPERATURE_FWM
-    1    0    0
-TEMPERATURE_FWCHILDMODE_CLASS
-*END_OBJECT
-*OBJECTSET
-FWCHILDMODE_FWSETSTATES
-    0    2
-HUMIDITY_FWM
-TEMPERATURE_FWM
-*END_OBJECTSET
-*OBJECTSET
-FWCHILDMODE_FWSETACTIONS
-    0    2
-HUMIDITY_FWM
-TEMPERATURE_FWM
-*END_OBJECTSET
-*CLASS
-ASS_CLEANROOMHUMIDITY_CLASS
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-READY
-    0
-*END_STATE
-*STATE
-NOT_READY
-    0
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::HUMIDITY
-    1    0    1
-ASS_CLEANROOMHUMIDITY_CLASS
-*END_OBJECT
-*OBJECTSET
-CLEANROOMHUMIDITY_FWSETSTATES
-    0    0
-*END_OBJECTSET
-*OBJECTSET
-CLEANROOMHUMIDITY_FWSETACTIONS
-    0    0
-*END_OBJECTSET
-*CLASS
-ASS_STATUS_CLASS
-    1    1
-ASSOCIATED
-*PARAMETERS
-STRING
-STATUS
-"OK"
-*END_PARAMETERS
-*SUBOBJECT
-&DUMMY
-*STATE
-OK
-    0
-*END_STATE
-*STATE
-WARNING
-    0
-*END_STATE
-*STATE
-ALARM
-    0
-*END_STATE
-*STATE
-FATAL
-    0
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-HUMIDITY::STATUSHUMIDITY
-    1    0    1
-ASS_STATUS_CLASS
-*END_OBJECT
-*OBJECT
-TEMPERATURE::STATUSTEMPERATURE
-    1    0    1
-ASS_STATUS_CLASS
-*END_OBJECT
-*OBJECTSET
-STATUS_FWSETSTATES
-    0    2
-HUMIDITY::STATUSHUMIDITY
-TEMPERATURE::STATUSTEMPERATURE
-*END_OBJECTSET
-*OBJECTSET
-STATUS_FWSETACTIONS
-    0    2
-HUMIDITY::STATUSHUMIDITY
-TEMPERATURE::STATUSTEMPERATURE
-*END_OBJECTSET
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/RACK_4Y_12.sml smixx/src/EXAMPLES/tests/RACK_4Y_12.sml
--- smixx_web/src/EXAMPLES/tests/RACK_4Y_12.sml	2004-11-09 19:26:52.000000000 +0100
+++ smixx/src/EXAMPLES/tests/RACK_4Y_12.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,173 +0,0 @@
-class: TOP_Rack_CLASS
-    state: OK	!color: FwStateOKPhysics
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) )  move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) ) move_to ALARM
-        when (  ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state WARNING ) ) or
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state NON_PHYSICAL ) )  )  move_to WARNING
-    state: WARNING	!color: FwStateAttention1
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) ) move_to ALARM
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: ALARM	!color: FwStateAttention2
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: FATAL	!color: FwStateAttention3
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES not_in_state FATAL ) ) move_to ALARM
-
-object: RACK_4Y_12 is_of_class TOP_Rack_CLASS
-
-class: FwChildrenMode_CLASS
-    state: Complete	!color: _3DFace
-        when ( ( any_in FWDEVMODE_FWSETSTATES in_state DISABLED ) )  move_to IncompleteDev
-    state: Incomplete	!color: FwStateAttention2
-    state: IncompleteDev	!color: FwStateAttention1
-        when (  ( ( all_in FWDEVMODE_FWSETSTATES not_in_state DISABLED ) )  ) move_to Complete
-
-object: RACK_4Y_12_FWCNM is_of_class FwChildrenMode_CLASS
-
-class: FwMode_CLASS
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-            move_to InLocal
-        action: Include
-            move_to Included
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-        action: ExcludeAll
-            move_to Excluded
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Release
-            move_to Excluded
-        action: ReleaseAll
-            move_to Excluded
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Take
-            move_to InManual
-        action: Exclude
-            move_to Excluded
-        action: Ignore
-            move_to Ignored
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Release
-            move_to Manual
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-
-object: RACK_4Y_12_FWM is_of_class FwMode_CLASS
-
-class: Status_CLASS
-    parameters: string status = "OK"
-    state: OK	!color: FwStateOKPhysics
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) ) move_to ALARM
-        when (  ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state WARNING ) ) or
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state NON_PHYSICAL ) )  )  move_to WARNING
-    state: WARNING	!color: FwStateAttention1
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state ALARM ) )  move_to ALARM
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: ALARM	!color: FwStateAttention2
-        when ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state FATAL ) ) move_to FATAL
-        when (  ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES not_in_state ALARM ) ) and
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state WARNING ) ) or
-       ( ( any_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state NON_PHYSICAL ) )  )  move_to WARNING
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES in_state OK ) ) move_to OK
-    state: FATAL	!color: FwStateAttention3
-        when ( ( all_in FWELMBAI_SRRACKSTEMP_FWSETSTATES not_in_state FATAL ) ) move_to ALARM
-
-object: STATUS-RACK_4Y_12 is_of_class Status_CLASS
-
-objectset: STATUS_FWSETSTATES {STATUS-RACK_4Y_12 }
-objectset: STATUS_FWSETACTIONS {STATUS-RACK_4Y_12 }
-
-class: FwElmbAi_srRacksTemp_FwDevMode_CLASS
-    state: READY
-        action: Disable(Device)
-            remove &VAL_OF_Device from FWELMBAI_SRRACKSTEMP_FWSETSTATES
-            remove &VAL_OF_Device from FWELMBAI_SRRACKSTEMP_FWSETACTIONS
-            move_to READY
-        action: Enable(Device)
-            insert &VAL_OF_Device in FWELMBAI_SRRACKSTEMP_FWSETSTATES
-            insert &VAL_OF_Device in FWELMBAI_SRRACKSTEMP_FWSETACTIONS
-            move_to READY
-
-object: FwElmbAi_srRacksTemp_FWDM is_of_class FwElmbAi_srRacksTemp_FwDevMode_CLASS
-
-class: FwElmbAi_srRacksTemp_CLASS/associated
-    state: OK	!color: FwStateOKPhysics
-    state: WARNING	!color: FwStateAttention1
-    state: ALARM	!color: FwStateAttention2
-    state: FATAL	!color: FwStateAttention3
-    state: NON_PHYSICAL	!color: FwStateAttention2
-
-object: 4Y_04_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_05_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_06_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_07_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_08_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_09_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_10_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-object: 4Y_11_12_SR1 is_of_class FwElmbAi_srRacksTemp_CLASS
-
-objectset: FWELMBAI_SRRACKSTEMP_FWSETSTATES {4Y_04_12_SR1,
-	4Y_05_12_SR1,
-	4Y_06_12_SR1,
-	4Y_07_12_SR1,
-	4Y_08_12_SR1,
-	4Y_09_12_SR1,
-	4Y_10_12_SR1,
-	4Y_11_12_SR1 }
-objectset: FWELMBAI_SRRACKSTEMP_FWSETACTIONS {4Y_04_12_SR1,
-	4Y_05_12_SR1,
-	4Y_06_12_SR1,
-	4Y_07_12_SR1,
-	4Y_08_12_SR1,
-	4Y_09_12_SR1,
-	4Y_10_12_SR1,
-	4Y_11_12_SR1 }
-
-class: FwDevMode_FwDevMode_CLASS
-    state: READY
-        action: Disable(Device)
-            remove &VAL_OF_Device from FWDEVMODE_FWSETSTATES
-            remove &VAL_OF_Device from FWDEVMODE_FWSETACTIONS
-            move_to READY
-        action: Enable(Device)
-            insert &VAL_OF_Device in FWDEVMODE_FWSETSTATES
-            insert &VAL_OF_Device in FWDEVMODE_FWSETACTIONS
-            move_to READY
-
-object: FwDevMode_FWDM is_of_class FwDevMode_FwDevMode_CLASS
-
-class: FwDevMode_CLASS/associated
-    state: ENABLED	!color: FwStateOKPhysics
-    state: DISABLED	!color: FwStateAttention1
-
-object: RACK_4Y_12_FWDM is_of_class FwDevMode_CLASS
-
-objectset: FWDEVMODE_FWSETSTATES {RACK_4Y_12_FWDM }
-objectset: FWDEVMODE_FWSETACTIONS {RACK_4Y_12_FWDM }
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/Run_con_test.sobj smixx/src/EXAMPLES/tests/Run_con_test.sobj
--- smixx_web/src/EXAMPLES/tests/Run_con_test.sobj	2005-05-26 13:57:54.000000000 +0200
+++ smixx/src/EXAMPLES/tests/Run_con_test.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,506 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-AUTO_PILOT
-    0    0    0
-*STATE
-OFF
-    0
-*ACTION
-ACTIVATE
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-RUN
-do
-START_RUN
-    0
-RUN
-terminate
-ON
-*END_ACTION
-*END_STATE
-*STATE
-ON
-    0
-*WHEN
- (RUN NOT_IN_STATE RUNNING)
-    1    0
-    1
-RUN
-not_in_state
-    1
-RUNNING
-do
-X_ACTIVATE
-    0
-&THIS_OBJECT
-*ACTION
-DISACTIVATE
-    0    0
-*BLOCK
-  0  0
-terminate
-OFF
-*END_ACTION
-*ACTION
-X_ACTIVATE
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-RUN
-do
-START_RUN
-    0
-RUN
-terminate
-ON
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-RUN_TYPE
-    0    0    0
-*STATE
-TEST
-    0
-*ACTION
-PHYSICS
-    0    0
-*BLOCK
-  0  0
-do
-LOG
-    0
-LOGGER
-if
-  1
- (LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-LOGGING
-  1  1
-terminate
-TEST
-*BLOCK
-  1  1
-terminate
-PHYSICS
-*END_ACTION
-*END_STATE
-*STATE
-PHYSICS
-    0
-*ACTION
-TEST
-    0    0
-*BLOCK
-  0  0
-do
-NOLOG
-    0
-LOGGER
-if
-  1
- (LOGGER IN_STATE NOT_LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-NOT_LOGGING
-  1  1
-terminate
-PHYSICS
-*BLOCK
-  1  1
-terminate
-TEST
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-RUN
-    0    0    0
-*PARAMETERS
-INT
-NUMBER_T
-0
-INT
-NUMBER_P
-0
-*END_PARAMETERS
-*STATE
-STOPPED
-    0
-*ACTION
-START_RUN
-    0    0
-*BLOCK
-  0  0
-set
-    3
-NUMBER_T
-EVT_BUILDER
-NUMBER_T
-set
-    3
-NUMBER_P
-EVT_BUILDER
-NUMBER_P
-if
-  1
- (NOT EVT_BUILDER IN_STATE READY)
-    1    0
-    1
-EVT_BUILDER
-not_in_state
-    1
-READY
-  1  1
-if
-  1
- (RUN_TYPE IN_STATE PHYSICS)
-    1    0
-    1
-RUN_TYPE
-in_state
-    1
-PHYSICS
-  2  1
-if
-  1
- (LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-LOGGING
-  3  1
-if
-  2
- (RUN_TYPE IN_STATE PHYSICS)
-    1    0
-    1
-RUN_TYPE
-in_state
-    1
-PHYSICS
-  4  1
-else
-    0    0
-  5  1
-if
-  1
- (EVT_BUILDER IN_STATE RUNNING)
-    1    0
-    1
-EVT_BUILDER
-in_state
-    1
-RUNNING
-  6  1
-terminate
-STOPPED
-*BLOCK
-  1  1
-terminate
-STOPPED
-*BLOCK
-  2  1
-do
-LOG
-    0
-LOGGER
-if
-  1
- (NOT LOGGER IN_STATE LOGGING)
-    1    0
-    1
-LOGGER
-not_in_state
-    1
-LOGGING
-  7  2
-*BLOCK
-  3  1
-do
-X_OPEN_FILE
-    0
-LOGGER
-*BLOCK
-  4  1
-do
-START
-    2
-TYPE
-"PHYSICS"
-NR
-NUMBER_P
-EVT_BUILDER
-*BLOCK
-  5  1
-do
-START
-    2
-TYPE
-"TEST"
-NR
-NUMBER_T
-EVT_BUILDER
-*BLOCK
-  6  1
-terminate
-RUNNING
-*BLOCK
-  7  2
-terminate
-STOPPED
-*END_ACTION
-*END_STATE
-*STATE
-RUNNING
-    0
-*WHEN
- (EVT_BUILDER IN_STATE ERROR)
-    1    0
-    1
-EVT_BUILDER
-in_state
-    1
-ERROR
-do
-X_SET_ERROR
-    0
-&THIS_OBJECT
-*ACTION
-STOP_RUN
-    0    0
-*BLOCK
-  0  0
-do
-STOP
-    0
-EVT_BUILDER
-if
-  1
- (LOGGER IN_STATE WRITING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-WRITING
-  1  1
-terminate
-STOPPED
-*BLOCK
-  1  1
-do
-X_CLOSE_FILE
-    0
-LOGGER
-*END_ACTION
-*ACTION
-X_SET_ERROR
-    0    0
-*BLOCK
-  0  0
-if
-  1
- (LOGGER IN_STATE WRITING)
-    1    0
-    1
-LOGGER
-in_state
-    1
-WRITING
-  1  1
-terminate
-ERROR
-*BLOCK
-  1  1
-do
-X_CLOSE_FILE
-    0
-LOGGER
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*ACTION
-RECOVER
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-EVT_BUILDER
-terminate
-STOPPED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*OBJECT
-LOGGER
-    0    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-DEAD
-    1
-DEAD_STATE
-*END_STATE
-*STATE
-NOT_LOGGING
-    0
-*ACTION
-LOG
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-LOGGING
-    0
-*ACTION
-NOLOG
-    0    0
-*END_ACTION
-*ACTION
-X_OPEN_FILE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-WRITING
-    0
-*ACTION
-X_CLOSE_FILE
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_OBJECT
-*OBJECT
-EVT_BUILDER
-    0    1    1
-ASSOCIATED
-*PARAMETERS
-INT
-NUMBER_T
-&nodefault
-INT
-NUMBER_P
-&nodefault
-*END_PARAMETERS
-*SUBOBJECT
-&DUMMY
-*STATE
-DEAD
-    1
-DEAD_STATE
-*END_STATE
-*STATE
-READY
-    0
-*ACTION
-START
-    2    0
-STRING
-TYPE
-&nodefault
-INT
-NR
-&nodefault
-*END_ACTION
-*END_STATE
-*STATE
-RUNNING
-    0
-*ACTION
-STOP
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*ACTION
-RECOVER
-    0    0
-*END_ACTION
-*END_STATE
-*END_SUBOBJECT
-*END_OBJECT
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/middle2.sml smixx/src/EXAMPLES/tests/middle2.sml
--- smixx_web/src/EXAMPLES/tests/middle2.sml	2004-08-10 10:29:26.000000000 +0200
+++ smixx/src/EXAMPLES/tests/middle2.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,121 +0,0 @@
-class: TOP_Node_CLASS
-    state: NOT_READY	!color: FwStateOKNotPhysics
-        when ( ( any_in FWAIHV_FWSETSTATES in_state ERROR ) ) move_to ERROR
-        when ( ( all_in FWAIHV_FWSETSTATES in_state READY ) ) move_to READY
-        action: CONFIGURE
-            do CONFIGURE all_in FWAIHV_FWSETACTIONS
-            if ( ( all_in FWAIHV_FWSETSTATES not_in_state READY ) ) then
-            	move_to NOT_READY
-            endif
-            move_to READY
-    state: READY	!color: FwStateOKPhysics
-        when ( ( any_in FWAIHV_FWSETSTATES in_state ERROR ) ) move_to ERROR
-        when ( ( any_in FWAIHV_FWSETSTATES in_state NOT_READY ) ) move_to NOT_READY
-        action: RESET
-            do RESET all_in FWAIHV_FWSETACTIONS
-            if ( ( all_in FWAIHV_FWSETSTATES not_in_state NOT_READY ) ) then
-            	move_to READY
-            endif
-            move_to NOT_READY
-    state: ERROR	!color: FwStateAttention3
-        when ( ( all_in FWAIHV_FWSETSTATES not_in_state ERROR ) ) move_to NOT_READY
-        action: RECOVER
-            do RECOVER all_in FWAIHV_FWSETACTIONS
-            if ( ( all_in FWAIHV_FWSETSTATES not_in_state NOT_READY ) ) then
-            	move_to ERROR
-            endif
-            move_to NOT_READY
-
-object: middle2 is_of_class TOP_Node_CLASS
-
-class: FwChildrenMode_CLASS
-    state: Complete	!color: _3DFace
-    state: Incomplete	!color: FwStateAttention1
-
-object: middle2_FWCNM is_of_class FwChildrenMode_CLASS
-
-class: FwMode_CLASS
-    state: Excluded	!color: FwStateOKNotPhysics
-        action: Take
-            move_to InLocal
-        action: Include
-            move_to Included
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: Included	!color: FwStateOKPhysics
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-        action: Ignore
-            move_to Ignored
-    state: InLocal	!color: FwStateOKNotPhysics
-        action: Return
-            move_to Excluded
-    state: Manual	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Take
-            move_to InManual
-        action: Exclude
-            move_to Excluded
-        action: Ignore
-            move_to Ignored
-    state: InManual	!color: FwStateOKNotPhysics
-        action: Return
-            move_to Manual
-    state: Ignored	!color: FwStateOKNotPhysics
-        action: Include
-            move_to Included
-        action: Exclude
-            move_to Excluded
-        action: Manual
-            move_to Manual
-
-object: middle2_FWM is_of_class FwMode_CLASS
-
-class: FwAiHV_FwDevMode_CLASS
-    state: READY
-        action: Disable(Device)
-            remove &VAL_OF_Device from FWAIHV_FWSETSTATES
-            remove &VAL_OF_Device from FWAIHV_FWSETACTIONS
-            move_to READY
-        action: Enable(Device)
-            insert &VAL_OF_Device in FWAIHV_FWSETSTATES
-            insert &VAL_OF_Device in FWAIHV_FWSETACTIONS
-            move_to READY
-
-object: FwAiHV_FWDM is_of_class FwAiHV_FwDevMode_CLASS
-
-class: FwAiHV_CLASS/associated
-    state: READY	!color: FwStateOKPhysics
-        action: RESET
-        action: FAKE_ERROR
-    state: NOT_READY	!color: FwStateOKNotPhysics
-        action: CONFIGURE(string
-    state: ERROR	!color: FwStateAttention3
-        action: RECOVER
-
-object: AnalogDigital:myAi0 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi1 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi2 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi3 is_of_class FwAiHV_CLASS
-
-object: AnalogDigital:myAi4 is_of_class FwAiHV_CLASS
-
-objectset: FWAIHV_FWSETSTATES {AnalogDigital:myAi0,
-	AnalogDigital:myAi1,
-	AnalogDigital:myAi2,
-	AnalogDigital:myAi3,
-	AnalogDigital:myAi4 }
-objectset: FWAIHV_FWSETACTIONS {AnalogDigital:myAi0,
-	AnalogDigital:myAi1,
-	AnalogDigital:myAi2,
-	AnalogDigital:myAi3,
-	AnalogDigital:myAi4 }
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/middle2.sobj smixx/src/EXAMPLES/tests/middle2.sobj
--- smixx_web/src/EXAMPLES/tests/middle2.sobj	2004-08-10 10:39:42.000000000 +0200
+++ smixx/src/EXAMPLES/tests/middle2.sobj	1970-01-01 01:00:00.000000000 +0100
@@ -1,497 +0,0 @@
-*CLASS
-&ALLOCATION_OBJECT
-    1    1
-ASSOCIATED
-*SUBOBJECT
-&DUMMY
-*STATE
-NOT_ALLOCATED
-    0
-*ACTION
-ALLOCATE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*END_ACTION
-*END_STATE
-*STATE
-NOT_THERE
-    1
-DEAD_STATE
-*END_STATE
-*END_SUBOBJECT
-*END_CLASS
-*OBJECT
-&ALLOC
-    0    0    0
-*STATE
-NOT_ALLOCATED
-    1
-INITIAL_STATE
-*ACTION
-ALLOCATE
-    1    0
-STRING
-ID
-&nodefault
-*BLOCK
-  0  0
-terminate
-&VARIABLE
-*END_ACTION
-*END_STATE
-*STATE
-&VARIABLE
-    0
-*ACTION
-RELEASE
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_ALLOCATED
-*END_ACTION
-*END_STATE
-*END_OBJECT
-*CLASS
-TOP_NODE_CLASS
-    0    0
-*STATE
-NOT_READY
-    0
-*WHEN
- ( ( ANY_IN FWAIHV_FWSETSTATES IN_STATE ERROR ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-any_in
-in_state
-    1
-ERROR
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( ( ALL_IN FWAIHV_FWSETSTATES IN_STATE READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-in_state
-    1
-READY
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*ACTION
-CONFIGURE
-    0    0
-*BLOCK
-  0  0
-do
-CONFIGURE
-    0
-&ALL_IN_FWAIHV_FWSETACTIONS
-if
-  1
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-READY
-  1  1
-terminate
-READY
-*BLOCK
-  1  1
-terminate
-NOT_READY
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-ERROR
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-READY
-*END_ACTION
-*END_STATE
-*STATE
-READY
-    0
-*WHEN
- ( ( ANY_IN FWAIHV_FWSETSTATES IN_STATE ERROR ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-any_in
-in_state
-    1
-ERROR
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*WHEN
- ( ( ANY_IN FWAIHV_FWSETSTATES IN_STATE NOT_READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-any_in
-in_state
-    1
-NOT_READY
-do
-&END_IN_STATE_WHEN1
-    0
-&THIS_OBJECT
-*ACTION
-RESET
-    0    0
-*BLOCK
-  0  0
-do
-RESET
-    0
-&ALL_IN_FWAIHV_FWSETACTIONS
-if
-  1
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE NOT_READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-  1  1
-terminate
-NOT_READY
-*BLOCK
-  1  1
-terminate
-READY
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-ERROR
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN1
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_READY
-*END_ACTION
-*END_STATE
-*STATE
-ERROR
-    0
-*WHEN
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE ERROR ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-ERROR
-do
-&END_IN_STATE_WHEN0
-    0
-&THIS_OBJECT
-*ACTION
-RECOVER
-    0    0
-*BLOCK
-  0  0
-do
-RECOVER
-    0
-&ALL_IN_FWAIHV_FWSETACTIONS
-if
-  1
- ( ( ALL_IN FWAIHV_FWSETSTATES NOT_IN_STATE NOT_READY ) )
-    1    0
-    2
-FWAIHV_FWSETSTATES
-all_in
-not_in_state
-    1
-NOT_READY
-  1  1
-terminate
-NOT_READY
-*BLOCK
-  1  1
-terminate
-ERROR
-*END_ACTION
-*ACTION
-&END_IN_STATE_WHEN0
-    0    0
-*BLOCK
-  0  0
-terminate
-NOT_READY
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-MIDDLE2
-    1    0    0
-TOP_NODE_CLASS
-*END_OBJECT
-*CLASS
-FWCHILDRENMODE_CLASS
-    0    0
-*STATE
-COMPLETE
-    0
-*END_STATE
-*STATE
-INCOMPLETE
-    0
-*END_STATE
-*END_CLASS
-*OBJECT
-MIDDLE2_FWCNM
-    1    0    0
-FWCHILDRENMODE_CLASS
-*END_OBJECT
-*CLASS
-FWMODE_CLASS
-    0    0
-*STATE
-EXCLUDED
-    0
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-terminate
-INLOCAL
-*END_ACTION
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INCLUDED
-    0
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INLOCAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*END_STATE
-*STATE
-MANUAL
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-TAKE
-    0    0
-*BLOCK
-  0  0
-terminate
-INMANUAL
-*END_ACTION
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-IGNORE
-    0    0
-*BLOCK
-  0  0
-terminate
-IGNORED
-*END_ACTION
-*END_STATE
-*STATE
-INMANUAL
-    0
-*ACTION
-RETURN
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*STATE
-IGNORED
-    0
-*ACTION
-INCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-INCLUDED
-*END_ACTION
-*ACTION
-EXCLUDE
-    0    0
-*BLOCK
-  0  0
-terminate
-EXCLUDED
-*END_ACTION
-*ACTION
-MANUAL
-    0    0
-*BLOCK
-  0  0
-terminate
-MANUAL
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-MIDDLE2_FWM
-    1    0    0
-FWMODE_CLASS
-*END_OBJECT
-*CLASS
-FWAIHV_FWDEVMODE_CLASS
-    0    0
-*STATE
-READY
-    0
-*ACTION
-DISABLE
-    1    0
-STRING
-DEVICE
-&nodefault
-*BLOCK
-  0  0
-insert
-    0
-&VAL_OF_DEVICE
-FWAIHV_FWSETSTATES
-insert
-    0
-&VAL_OF_DEVICE
-FWAIHV_FWSETACTIONS
-terminate
-READY
-*END_ACTION
-*ACTION
-ENABLE
-    1    0
-STRING
-DEVICE
-&nodefault
-*BLOCK
-  0  0
-insert
-    1
-&VAL_OF_DEVICE
-FWAIHV_FWSETSTATES
-insert
-    1
-&VAL_OF_DEVICE
-FWAIHV_FWSETACTIONS
-terminate
-READY
-*END_ACTION
-*END_STATE
-*END_CLASS
-*OBJECT
-FWAIHV_FWDM
-    1    0    0
-FWAIHV_FWDEVMODE_CLASS
-*END_OBJECT
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/EXAMPLES/tests/run_con_new.sml smixx/src/EXAMPLES/tests/run_con_new.sml
--- smixx_web/src/EXAMPLES/tests/run_con_new.sml	2003-03-20 20:56:58.000000000 +0100
+++ smixx/src/EXAMPLES/tests/run_con_new.sml	1970-01-01 01:00:00.000000000 +0100
@@ -1,96 +0,0 @@
-object: AUTO_PILOT
-	state: off
-		action: ACTIVATE			
-			do RECOVER RUN
-			do START_RUN RUN
-			terminate_action/state=ON
-	state: ON
-	when (RUN not_in_state RUNNING) do X_ACTIVATE
-		action: DISACTIVATE
-			terminate_action/state=OFF
-		action: X_ACTIVATE			
-			do RECOVER RUN
-			do START_RUN RUN
-			terminate_action/state=ON
-
-object: RUN_TYPE
-	state: TEST
-		action: PHYSICS
-			do LOG LOGGER
-			if (LOGGER in_state LOGGING) then
-				terminate_action/state=PHYSICS
-			endif
-			terminate_action/state=TEST
-	state: PHYSICS
-		action: TEST
-			do NOLOG LOGGER
-			if (LOGGER in_state NOT_LOGGING) then
-				terminate_action/state=TEST
-			endif
-			terminate_action/state=PHYSICS
-
-object: RUN
-	parameters: int NUMBER_T = 0, int NUMBER_P = 0
-	state: STOPPED
-		action: START_RUN
-			set NUMBER_T = EVT_BUILDER<NUMBER_T>
-			set NUMBER_P = EVT_BUILDER<NUMBER_P>
-			if (not EVT_BUILDER in_state READY) then
-				terminate_action/state=STOPPED
-			endif
-			if (RUN_TYPE in_state PHYSICS) then
-				do LOG LOGGER
-				if (not LOGGER in_state LOGGING) then
-					terminate_action/state=STOPPED
-				endif
-			endif
-			if (LOGGER in_state LOGGING) then
-				do X_OPEN_FILE LOGGER
-			endif
-			if (RUN_TYPE in_state PHYSICS) then
-				do START (TYPE="PHYSICS",NR=NUMBER_P) EVT_BUILDER
-			else
-				do START (TYPE="TEST",NR=NUMBER_T) EVT_BUILDER
-			endif
-			if (EVT_BUILDER in_state RUNNING) then
-				terminate_action/state=RUNNING
-			endif
-			terminate_action/state=STOPPED
-	state: RUNNING
-	when (EVT_BUILDER in_state ERROR) do X_SET_ERROR
-		action: STOP_RUN
-			do STOP EVT_BUILDER
-			if (LOGGER in_state WRITING) then
-				do X_CLOSE_FILE LOGGER
-			endif
-			terminate_action/state=STOPPED
-		action: X_SET_ERROR
-			if (LOGGER in_state WRITING) then
-				do X_CLOSE_FILE LOGGER
-			endif
-			terminate_action/state=ERROR
-	state: ERROR
-		action: RECOVER
-			do RECOVER EVT_BUILDER
-			terminate_action/state=STOPPED
-
-object: LOGGER /associated
-	state: DEAD /dead_state
-	state: NOT_LOGGING
-		action: LOG
-	state: LOGGING
-		action: NOLOG
-		action: X_OPEN_FILE
-	state: WRITING
-		action: X_CLOSE_FILE
-
-object: EVT_BUILDER /associated
-	parameters: int NUMBER_T, int NUMBER_P
-	state: DEAD /dead_state
-	state: READY
-		action: START(TYPE, int NR)
-	state: RUNNING
-		action: STOP
-	state: ERROR
-		action: RECOVER
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/Makefile.am smixx/src/Makefile.am
--- smixx_web/src/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/Makefile.am	2006-05-16 16:01:48.000000000 +0200
@@ -0,0 +1,37 @@
+#
+#
+#
+# SUBDIRS			= . EXAMPLES
+
+noinst_PROGRAMS		= 
+noinst_SCRIPTS		=  
+noinst_LTLIBRARIES	=
+noinst_HEADERS		=
+bin_PROGRAMS		= 
+bin_SCRIPTS		=
+lib_LTLIBRARIES		= 
+pkginclude_HEADERS	= 
+EXTRA_DIST		= 
+AM_CPPFLAGS		=  $(DIM_CPPFLAGS) -I$(top_srcdir)/smixx \
+			   -I$(srcdir)/commonSource
+AM_CFLAGS		=  $(DIM_CFLAGS)
+AM_CXXFLAGS		=  $(DIM_CFLAGS)
+LIBS			=  $(DIM_LIBS)
+LDFLAGS			=  $(DIM_LDFLAGS)
+CLEANFILES		=  
+
+include rtl/Makefile
+include commonSource/Makefile
+include generator/Makefile
+include preprocessor/Makefile
+include stateManager/Makefile
+include translator/Makefile
+include gui/Makefile
+include tclTkGUI/Makefile
+include utilities/Makefile
+include EXAMPLES/Makefile
+include EXAMPLES/run_control/Makefile
+
+#
+# EOF
+#
\ No newline at end of file
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/History smixx/src/commonSource/History
--- smixx_web/src/commonSource/History	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/commonSource/History	2007-03-19 09:55:42.000000000 +0100
@@ -247,3 +247,18 @@
 === 20-May-2005:15:58 ==========  v27  =================
 === 25-May-2005:12:04 ==========  v27r1  =================
 === 14-July-2005:17:07 ==========  v28  =================
+=== 28-September-2005:15:35 ==========  v28r1  =================
+=== 06-October-2005:15:38 ==========  v29  =================
+=== 20-January-2006:14:46 ==========  v29r1  =================
+
+ 31-March-2006 (Boda Franek)
+ 
+  Class NmdPtnr   method Name name()  changed to  const Name& name();
+  Files : nmdptnr.hxx & nmdptnr.cxx
+  for the test what it does see ~franek/refReturnValue.cxx
+=== 31-March-2006:17:27 ==========  v30  =================
+=== 19-May-2006:20:34 ==========  v31  =================
+=== 21-May-2006:21:01 ==========  v31r1  =================
+  7-Sep-2006  (Boda Franek)
+    Class Name  : new constructor, that just reserves space.  name.cxx&hxx
+    
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/name.cxx smixx/src/commonSource/name.cxx
--- smixx_web/src/commonSource/name.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/commonSource/name.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -20,6 +20,13 @@
     _ptn=0;
    }
 
+   Name::Name(const int numchar) {
+      _size = numchar + 1;
+      _ptn = new char[_size];
+      assert(_ptn != 0);
+      *_ptn = '\0';
+   } 
+
   Name::Name(const char* str){
      _size = strlen(str)+1;
      _ptn = new char[_size];
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/name.hxx smixx/src/commonSource/name.hxx
--- smixx_web/src/commonSource/name.hxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/commonSource/name.hxx	2007-03-19 09:55:42.000000000 +0100
@@ -14,6 +14,8 @@
    public :
       Name();
 
+      Name(const int numchar);
+
       Name(const char* );
 
       Name(const Name& );
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/namelist.hxx smixx/src/commonSource/namelist.hxx
--- smixx_web/src/commonSource/namelist.hxx	2001-07-23 18:11:00.000000000 +0200
+++ smixx/src/commonSource/namelist.hxx	2007-03-19 10:14:52.000000000 +0100
@@ -22,7 +22,7 @@
 
 		NameList(const NameList&);
 
-		NameList& NameList::operator=(const NameList& );
+		NameList& operator=(const NameList& );
 
 		~NameList(); 
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/nmdptnr.cxx smixx/src/commonSource/nmdptnr.cxx
--- smixx_web/src/commonSource/nmdptnr.cxx	2003-08-16 16:40:02.000000000 +0200
+++ smixx/src/commonSource/nmdptnr.cxx	2006-03-31 15:43:49.000000000 +0200
@@ -31,7 +31,7 @@
      return *this;
   }
 
-  Name NmdPtnr::name() {
+  const Name& NmdPtnr::name() {
      return _name;
   }
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/nmdptnr.hxx smixx/src/commonSource/nmdptnr.hxx
--- smixx_web/src/commonSource/nmdptnr.hxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/commonSource/nmdptnr.hxx	2006-03-31 15:43:49.000000000 +0200
@@ -21,7 +21,7 @@
 
       ~NmdPtnr();
 
-      Name name();
+      const Name& name();
 
       void* pointer();
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/nmdptnrlist.hxx smixx/src/commonSource/nmdptnrlist.hxx
--- smixx_web/src/commonSource/nmdptnrlist.hxx	2003-08-16 16:47:54.000000000 +0200
+++ smixx/src/commonSource/nmdptnrlist.hxx	2007-03-19 10:17:21.000000000 +0100
@@ -23,7 +23,7 @@
 
 		NmdPtnrList(const NmdPtnrList&);
 
-		NmdPtnrList& NmdPtnrList::operator=(const NmdPtnrList& );
+		NmdPtnrList& operator=(const NmdPtnrList& );
 
 		~NmdPtnrList(); 
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/smixx_parstring_util.c smixx/src/commonSource/smixx_parstring_util.c
--- smixx_web/src/commonSource/smixx_parstring_util.c	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/commonSource/smixx_parstring_util.c	2006-11-22 15:39:30.000000000 +0100
@@ -0,0 +1,708 @@
+/*======================== Parametr String handling functions ==========================
+
+                                                      Author: Boda Franek
+                                                      Date : July 2006
+ Copyright Information:
+      Copyright (C) 1996-2006 CCLRC. All Rights Reserved.
+========================================================================================*/
+#include <stdio.h>
+#include <ctype.h>
+/* C special characters that have to be escaped by \  */
+static char special_C[] =           {'\a','\\','\b','\r','\"','\f','\t','\n','\'','\v','\0'}; 
+static char special_indicator_C[] = { 'a','\\', 'b', 'r','\"', 'f', 't', 'n','\'', 'v','\0'};
+ /* the character following \  */
+
+/* characters that needs also escaping for shipping inside the SMI world */
+static char special_SMI[] = {'\"','/', '|', '=', '(', ')', ' ', '\0' };
+
+/*====================================================================================*/
+int smixx_check_special_C(char ch, char* esc_seq)
+/* The function checks if the character is either non-printable or one of the special
+   C characters. If no, return value is 0. If yes, return value is the length of 
+   the escape sequence and esc_seq is its escape sequence. Its length is either 2 or 4 */
+{
+	char* pos; /* pointer to the special character in special_C array */
+	int npos;  /* position in the array */
+	char charind; /* the character indicator */
+	
+	pos = strchr(special_C,ch) ;
+	if ( pos >0 )
+	{  /* it is one of the special characters */
+		npos = pos - &special_C[0];
+		charind = special_indicator_C[npos];
+                esc_seq[0] = '\\'; esc_seq[1] = charind;
+		return 2;
+	} 	
+/* check if non-printable */
+	if ( !isprint(ch) ) 
+	{
+		esc_seq[0] = '\\';
+		sprintf(&esc_seq[1],"%03o",ch);
+		return 4;
+	}
+	return 0;
+}
+/*====================================================================================*/
+int smixx_get_octal_code(char* ptr, char* code)
+/*    the function will scan the input string in order to collect
+      octal number. The scan will be terminated either by
+         - a character that is not an octal digit
+      or - the number of digits collected reached 3 
+      On return the function value is the number of digits collected.
+      When the resulting number is not an ASCII character,
+      the function returns  -1.
+      
+      Input :   ptr pointer to the first character of the input string
+      
+      Outpu : code ...ASCII code
+        
+*/
+{  
+    int i;
+    char ch;
+    char buf[4];
+    int ndig;
+    int icode;
+    
+    for ( i=0; i<3; i = i + 1)
+    {
+        ch = *(ptr + i);
+	if (!isdigit(ch) || ch == '8' || ch == '9' || ch == '\0')
+	{
+	    buf[i] = '\0'; break;
+	}
+	buf[i] = ch;
+    }
+    if ( i == 3 ) { buf[3] = '\0'; }
+    ndig = strlen(buf);
+    if ( ndig == 0 )
+    {
+        printf(" *** Error   no octal digits\n");
+        return -1;
+    }
+    
+    sscanf(buf,"%o",&icode);
+    if ( icode > 0177 ) 
+    {
+        printf(" *** Error  octal escape sequence out of range\n");
+        return -1;
+    }
+    *code = icode;
+    return ndig;
+}
+/*====================================================================================*/
+int smixx_get_hex_code(char* ptr, char* code)
+/*    the function will scan the input string in order to collect
+      hex number beginning with x. The scan will be terminated either by
+         - a character that is not a hex digit
+      or - the number of digits collected reached 2 
+      On return the function value is the number of characters collected.
+      When the resulting number is not an ASCII character,
+      the function returns  -1.
+      
+      Input :   ptr pointer to the first character (x) of the input string
+      
+      Outpu : code ...ASCII code
+        
+*/
+{  
+	int i;
+	char ch;
+	char buf[5];
+	int nchar;
+	int icode;
+    
+	if ( *ptr != 'x' )
+	{
+		printf(" *** missing first x \n");
+		return -1;
+	}
+    	
+	buf[0] = '0'; buf[1] = 'x';
+	
+	for ( i=1; i<3; i = i + 1)
+	{
+		ch = *(ptr + i);
+		if (!isxdigit(ch) )
+		{ /* not hex digit */
+			buf[i+1] = '\0'; break;
+		}
+		buf[i+1] = ch;
+    }
+    if ( i == 3 ) { buf[4] = '\0'; }
+    nchar = strlen(buf) -1; /* the leading 0 is extra so have to subtract 1*/
+    if ( nchar < 2 )
+    {
+        printf(" *** Error   no hex digits\n");
+        return -1;
+    }
+    
+    sscanf(buf,"%x",&icode);
+    if ( icode > 0x7F ) 
+    {
+        printf(" *** Error  hex escape sequence out of range\n");
+        return -1;
+    }
+    *code = icode;
+    return nchar;
+}
+/*====================================================================================*/
+int smixx_decode_escape_sequence(char* ptr, char* charcode)
+{
+/* the function decodes the escape sequence . For illegal sequence it returns -1.
+    Otherwise it returns number of characters in the escape sequence (incl the first \ )
+    
+    Input :  ptr  the pointer to the first  \ 
+    
+    Output : charcode   the code of the decoded character */
+	
+	char chnext;  /* the first character after the backslash */
+	char* pos; /* pointer to the indicator in special_indicator_C*/
+	int npos;  /* position in the array*/
+	int numoct; /* num of octal digits in the sequence */
+	int numhex; /* num of hex digits incl the first x */
+	int icode;
+
+	chnext = *(ptr+1);
+	
+	pos = strchr(special_indicator_C,chnext) ;
+	
+	if ( pos >0 )
+	{  /* it is one of the special indicators */
+		npos = pos - &special_indicator_C[0];
+		*charcode = special_C[npos];
+		 return 2;
+	} 
+	
+	
+	if ( chnext == 'x' ) 
+	{    /* hex code */
+		numhex = smixx_get_hex_code(ptr+1, charcode); 
+		if ( numhex < 0 ) {return -1;}
+		return numhex+1;
+
+	}
+	else if ( isdigit(chnext) &&  chnext != '8' && chnext != '9' )
+	{    /*octal code*/		 
+		numoct = smixx_get_octal_code(ptr+1, charcode); 
+		if ( numoct < 0 ) {return -1;}
+		return numoct+1;
+	}	
+	
+
+	return -1; 
+	
+}
+/*================================================================================*/
+int smixx_check_special_SMI(char ch, char* esc_seq)
+{
+/* The function checks if the character ch is special SMI character. If not,
+   it returns zero. If yes, then it returns 4 and the esc_seq is set to its
+   octal escape sequence, whose length is always 4. e.g. character " is escaped
+   as \042 */
+  
+	char* pos;
+	int npos;
+	
+	pos = strchr(special_SMI,ch);
+
+	if ( !pos ) { return 0; }
+	
+	npos = pos - &special_SMI[0];
+	
+	esc_seq[0] = '\\';
+	sprintf(&esc_seq[1],"%03o",special_SMI[npos]);
+	return 4;
+}
+/*===============================================================================*/
+char* smixx_outchars(char* ptrout, char* chars, int nchar, char* ptrout_max) 
+{
+/*  the function output nchar characters from the string being pointed to 
+    by chars into a string being pointed to by ptrout. ptrout_max is the last
+    position into which it is allowed to write.
+    The return value is the pointer to the following character in the output string 
+    after chars were copied */
+    
+	char* newptrout;
+	
+	newptrout = ptrout + nchar;
+	if ( (newptrout-1) > ptrout_max ) 
+	{
+		printf(" Error    output string is not big enough\n");	
+	 	return NULL;
+	}
+	
+	strncpy(ptrout,chars,nchar);
+	
+	
+	return newptrout;
+}
+/*=============================================================================*/
+int smixx_escape_slash(char* outstr, char* instr, int max)
+{
+	int inlen;	/* number of characters in the input string */
+	int nout;	/* number of characters in the output string */
+	char* ptrin;
+	char* ptrout;
+	char ch;
+	char chnext;
+	int iin;	/* index to the input string */  
+	char* outstr_max;
+	int ncescape; /*number of characters in a escape sequence, incl. the first\ */
+	char esc_seq[5];
+	int icode;
+	char charcode;
+
+/*for (i=0; i<10; i=i+1) {
+printf("%o\n",spec[i]); 
+}*/
+	outstr_max = outstr + max - 1;
+	
+	inlen = strlen(instr);
+	if ( inlen == 0 ) return 0;
+    
+    /* check if string is enclosed in double quotes - these will be preserved*/
+	if ( (   (*instr == '\"') && ( *(instr+inlen-1) != '\"') ) ||
+	     (   (*instr != '\"') && ( *(instr+inlen-1) == '\"') )      )
+	{
+		printf(" *** error   string has unbalanced double quotes\n");
+		return -1;
+	}		
+		
+	ptrout = outstr;
+	nout = 0;
+	
+	for ( iin = 0; iin < inlen; iin = iin + 1 )
+	{
+		ptrin = instr + iin;
+		ch = *ptrin;         /*printf("%c\n",ch);*/
+				
+		if ( (iin == 0 || iin == (inlen-1)) && ch == '\"' )
+		{ /* first or last doublequote, just keep it*/
+			nout = nout + 1;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, "\"", 1, outstr_max);
+				if ( !ptrout ) {return -1;}
+			}
+			continue;
+
+		}
+		if ( smixx_check_special_C(ch,esc_seq) && ch != '\\')
+		{  /* unescaped special character */
+			printf(" *** error   string has un-escaped special or un-printable character\n");
+			return -1;
+		}	
+
+		if ( ch == '\\' )
+		{ /* begining of escape sequence*/
+			ncescape = smixx_decode_escape_sequence(ptrin,&charcode);
+			if ( ncescape < 0 )
+			{
+				printf(" *** error  string has an illegal escape sequence \n");
+				return -1;
+			}
+			/* OK escape sequence */
+			if ( *(ptrin+1) == '\"' )
+			{ /* we have the sequence \" which we want to replace by oct esc sequence */
+				iin = iin + 1;
+				nout = nout + 4;
+				if (max>0)
+				{ 
+					ptrout = smixx_outchars(ptrout, "\\042", 4, outstr_max);
+					if ( !ptrout  ) {return -1;}
+				}
+				continue;
+			}
+			iin = iin + ncescape - 1;
+			nout = nout + ncescape;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, ptrin, ncescape, outstr_max);
+				if ( !ptrout ) {return -1;}
+			}
+			continue;
+		}
+		icode = smixx_check_special_SMI(ch,esc_seq);
+		if ( icode > 0 ) 
+		{ /* special SMI character, has to be escaped */
+			nout = nout + 4;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, esc_seq, 4, outstr_max);
+				if ( !ptrout  ) {return -1;}
+			}
+			continue;
+		}
+		/* just some inocuous character */
+		nout = nout + 1;
+		if (max>0)
+		{ 
+			ptrout = smixx_outchars(ptrout, ptrin, 1, outstr_max);
+			if ( !ptrout ) {return -1;}
+		}
+		continue;
+	}
+		
+	if ( max > 0 ) {*ptrout='\0';}
+	return nout;
+}
+/*=============================================================================*/
+int smixx_unescape(char* outstr, char* instr, int max)
+{
+	int inlen; /* number of characters in the input string */
+	int numin; /* this is either inlen, or inlen-2 if the input string is enclosed in doublequotes */
+
+	int nout; /* no of characters in the output string */
+	
+	char* ptrin;
+	char* ptrout;
+	char* outstr_max;
+	
+	char ch;
+	int icode;
+	int iin;  /* counter of input processed characters ... for index */
+	char* ptrstart;
+	char charcode;
+	char esc_seq[5]; int ncescape;
+
+/*for (i=0; i<10; i=i+1) {
+printf("%o\n",spec[i]); 
+}*/
+
+	outstr_max = outstr + max - 1;
+	
+	inlen = strlen(instr);
+	if ( inlen == 0 ) return 0;
+    
+	ptrstart = instr;
+	numin = inlen;
+
+
+    /* check if string is enclosed in double quotes - these will be taken out*/
+	if ( (   (*instr == '\"') && ( *(instr+inlen-1) != '\"') ) ||
+	     (   (*instr != '\"') && ( *(instr+inlen-1) == '\"') )      )
+	{
+		printf(" *** error   string has unbalanced double quotes\n");
+		return -1;
+	}		
+    
+	if ( *instr == '\"' )
+	{
+		ptrstart = instr + 1;	/* starting with the character following the " */
+		numin = inlen - 2;	/* ending the character before the last " */
+	} 
+        
+	ptrout = outstr;
+	nout = 0;
+    
+	for ( iin = 0; iin < numin; iin = iin + 1) {
+		ptrin = ptrstart + iin;
+		ch = *ptrin;
+		
+		icode = smixx_check_special_SMI(ch,esc_seq);
+		if (icode)
+		{
+			printf(" *** error the string has unescaped special SMI characters\n");
+			return -1;
+		}	
+		if ( ch == '\\' )
+		{ /* begining of escape sequence*/
+			ncescape = smixx_decode_escape_sequence(ptrin,&charcode);
+			if ( ncescape < 0 )
+			{
+				printf(" *** error  string has an illegal escape sequence \n");
+				return -1;
+			}
+			/* OK escape sequence */
+			iin = iin + ncescape - 1;
+			nout = nout + 1;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, &charcode, 1, outstr_max);
+				if ( !ptrout ) {return -1;}
+			}
+			continue;
+		}
+		icode = smixx_check_special_C(ch,esc_seq);
+		if (icode)
+		{
+			printf(" *** error the string has unescaped special C characters\n");
+			return -1;
+		}
+		/* just some inocuous character */
+		nout = nout + 1;
+		if (max>0)
+		{ 
+			ptrout = smixx_outchars(ptrout, ptrin, 1, outstr_max);
+			if ( !ptrout ) {return -1;}
+		}
+		continue;
+	}
+	if ( max > 0 ) {
+		*ptrout = '\0';
+	}
+	return nout;
+}
+/*=============================================================================*/
+int smixx_escape(char* outstr, char* instr, int max)
+{
+	int nout;
+	char* ptrin;
+	char* ptrout;
+	char* pos;
+	int npos;
+	char ch;
+	int i;
+	int inlen; /* number of characters in the input string */ 
+	int iin;  /* counter of input processed characters ... for index */
+	char* ptrstart;
+	char esc_seq[5]; int nesc;
+	int icode;
+	char* outstr_max;
+
+/*for (i=0; i<11; i=i+1) {
+printf("%c   %o\n",spec[i],codespec[i]); 
+}
+return 0;*/
+	outstr_max = outstr + max - 1;
+	inlen = strlen(instr);
+	if ( inlen == 0 ) return 0;
+    
+	ptrstart = instr;
+        
+	ptrout = outstr;
+	nout = 0;
+    
+	for ( iin = 0; iin < inlen; iin = iin + 1) 
+	{
+		ptrin = ptrstart + iin;
+		ch = *ptrin;
+		icode = smixx_check_special_SMI(ch,esc_seq);
+		if ( icode > 0 ) 
+		{ /* special SMI character, has to be escaped */
+			nout = nout + 4;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, esc_seq, 4, outstr_max);
+				if ( !ptrout  ) {return -1;}
+			}
+			continue;
+		}
+		nesc = smixx_check_special_C(ch,esc_seq);
+		if (nesc) 
+		{ /* special C or unprintable character */
+			nout = nout + nesc;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, esc_seq, nesc, outstr_max);
+				if ( !ptrout  ) {return -1;}
+			}
+			continue;
+		}
+		/* just some inocuous character */
+		nout = nout + 1;
+		if (max>0)
+		{ 
+			ptrout = smixx_outchars(ptrout, ptrin, 1, outstr_max);
+			if ( !ptrout ) {return -1;}
+		}
+		continue;
+
+	}
+	if ( max > 0 ) {
+		*ptrout = '\0';
+	}
+    return nout;
+}
+/*=============================================================================*/
+int smixx_escape_toprint(char* outstr, char* instr, int max)
+{
+	int nout;
+	char* ptrin;
+	char* ptrout;
+	char* pos;
+	int npos;
+	char ch;
+	int i;
+	int inlen; /* number of characters in the input string */ 
+	int iin;  /* counter of input processed characters ... for index */
+	char* ptrstart;
+	char esc_seq[5]; int nesc;
+	int icode;
+	char* outstr_max;
+
+/*for (i=0; i<11; i=i+1) {
+printf("%c   %o\n",spec[i],codespec[i]); 
+}
+return 0;*/
+	outstr_max = outstr + max - 1;
+	inlen = strlen(instr);
+	if ( inlen == 0 ) return 0;
+    
+	ptrstart = instr;
+        
+	ptrout = outstr;
+	nout = 0;
+    
+	for ( iin = 0; iin < inlen; iin = iin + 1) 
+	{
+		ptrin = ptrstart + iin;
+		ch = *ptrin;
+		nesc = smixx_check_special_C(ch,esc_seq);
+		if (nesc && ch != '\\' && ch != '\"' && ch != '\'') 
+		{ /* special C or unprintable character */
+			nout = nout + nesc;
+			if (max>0)
+			{ 
+				ptrout = smixx_outchars(ptrout, esc_seq, nesc, outstr_max);
+				if ( !ptrout  ) {return -1;}
+			}
+			continue;
+		}
+		/* just some inocuous character */
+		nout = nout + 1;
+		if (max>0)
+		{ 
+			ptrout = smixx_outchars(ptrout, ptrin, 1, outstr_max);
+			if ( !ptrout ) {return -1;}
+		}
+		continue;
+
+	}
+	if ( max > 0 ) {
+		*ptrout = '\0';
+	}
+    return nout;
+}
+/*
+int main()
+{
+    int code, i, j;
+    int bytes_read;
+    int nbytes = 100;
+    char my_string[5];
+    char testString;
+    int noutmax = 10;
+    char outString[noutmax+1];
+    int nout;
+ 
+    my_string[0] = 'a'; my_string[1] = 'b'; my_string[2] = '\164'; my_string[3] = 'c'; my_string[4] = '\0';
+    
+	for ( j=0; j<31; j = j + 1)
+	{
+		printf("\n\n ====================================================\n");
+		for ( i=0; i<strlen(my_string); i++) {
+			printf("%o\n",my_string[i]);
+		}
+    
+		nout = smixx_escape(NULL, my_string,0);
+    
+		printf(" There would be %d characters in the output string\n", nout);
+    
+		if (nout <= 0) return 0;
+    
+		nout = smixx_escape(outString, my_string,noutmax);
+		printf ("Output string (%d):\n \n",nout);
+   
+		
+		for (i=0; outString[i] != 0; i = i + 1) {
+			printf("%c",outString[i]);
+		}
+		printf("\n");
+		
+		for (i=0; outString[i] != 0; i = i + 1) {
+			printf("%o ",outString[i]);
+		}
+		printf("\n");
+		
+		my_string[2] = my_string[2] + 1;
+	}
+    
+    return 0;
+}
+
+*/
+
+/*
+int main()
+{
+    int code, i;
+    int bytes_read;
+    int nbytes = 100;
+    char *my_string;
+    char testString;
+    int noutmax = 10;
+    char outString[noutmax+1];
+    int nout;
+  
+    puts ("Enter string:");
+      
+    my_string = (char *) malloc (nbytes + 1);
+    bytes_read = getline (&my_string, &nbytes, stdin);
+    my_string[strlen(my_string)-1] = '\0';
+    
+    puts ("You typed:");
+    puts (my_string);
+    
+    for ( i=0; i<strlen(my_string); i++) {
+        printf("%o\n",my_string[i]);
+    }
+    
+    nout = smixx_unescape(NULL, my_string,0);
+    
+    printf(" There would be %d characters in the output string\n", nout);
+    
+    if (nout <= 0) return 0;
+    
+    nout = smixx_unescape(outString, my_string,noutmax);
+    printf ("Output string (%d):\n",nout);
+   
+    for (i=0; outString[i] != 0; i = i + 1) {
+        printf("%o     %c\n",outString[i],outString[i]);
+    }
+    
+    return 0;
+}
+*/
+
+/*
+int main()   
+{ 
+    int code, i;
+    int bytes_read;
+    int nbytes = 100;
+    char *my_string;
+    char testString;
+    int nout;
+    char outstring[11];
+  
+    puts ("Enter string:");
+      
+    my_string = (char *) malloc (nbytes + 1);
+    bytes_read = getline (&my_string, &nbytes, stdin);
+    my_string[strlen(my_string)-1] = '\0';
+    
+    puts ("You typed:");
+    puts (my_string);
+    
+    for ( i=0; i<strlen(my_string); i++) {
+        printf("%o\n",my_string[i]);
+    }
+    
+    nout = smixx_escape_slash(NULL,my_string,0);
+    printf ("Output string string length (%d):\n",nout);
+    
+    nout = smixx_escape_slash(outstring, my_string,8);
+    
+    
+    printf ("Output string string (%d):\n",nout);
+   
+    for (i=0; i < nout; i = i + 1) {
+        printf("%o     %c\n",outstring[i],outstring[i]);
+    }
+    
+    return 0;
+}
+
+*/
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/commonSource/utilities.cxx smixx/src/commonSource/utilities.cxx
--- smixx_web/src/commonSource/utilities.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/commonSource/utilities.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -15,6 +15,9 @@
 
 #include "smlline.hxx"
 #include "smllinevector.hxx"
+extern "C" {
+#include "smixx_parstring_util.h"
+}
 
 void process_line_forTrans(char str[])
 {
@@ -951,15 +954,34 @@
 
 char* getString(char str[],Name& value, int& ierr) 
 {
+// Assumption here is, that str[0] = '\"'
+
 	for (int i=1; str[i]; i++) {
 		if (str[i] == '\"') {
 			if (str[i-1] == '\\') {continue;}
 			else {
-				char savechar = str[i+1];
-				str[i+1] = '\0';
+			// unescaped ", i.e. the end of the string
+				char savechar = str[i+1]; str[i+1] = '\0';
+				int numchar = strlen(str);
+				int charout = smixx_escape_slash(NULL,str,0);
+				if ( charout >= 0 )
+				{
+                                    ierr = 0;
+				    if ( charout > numchar) {
+				    // there are slashes
+				        Name tempvalue(charout+1); /* do not forget the space for zero */
+					smixx_escape_slash(tempvalue.getString(),str,charout);
+					value = tempvalue;
+				    }
+				    else {
                                 value = str;
+				    }
+				}
+				else {
+				    ierr = 1;
+				}
                                 str[i+1] = savechar;
-                                ierr = 0; return &str[i+1]; 
+			        return &str[i+1]; 
 			}
 		}
 	}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/generator/generator.c smixx/src/generator/generator.c
--- smixx_web/src/generator/generator.c	2002-05-07 17:51:04.000000000 +0200
+++ smixx/src/generator/generator.c	2006-05-12 00:32:45.000000000 +0200
@@ -352,7 +352,9 @@
 */
 	for(i = 0; i < (int)strlen(Curr_object); i++)
 	{
+#ifndef unix
 		aux[i] = tolower(Curr_object[i]);
+#endif
 	}	
 	aux[i] = '\0';
 /*
@@ -790,7 +792,9 @@
 
 	for(i = 0; i < (int)strlen(Curr_object); i++)
 	{
+#ifndef unix
 		file_name[i] = tolower(Curr_object[i]);
+#endif
 	}	
 	file_name[i] = '\0';
 	strcpy(str,file_name);
@@ -938,7 +942,9 @@
 	}
 	for(i = 0; i < (int)strlen(Curr_object); i++)
 	{
+#ifndef unix
 		file_name[i] = tolower(Curr_object[i]);
+#endif
 	}	
 	file_name[i] = '\0';
 
@@ -1079,6 +1085,21 @@
 	return(0);
 }
 
+void usage()
+{
+	printf("\nsmiGen [options] file\n\n");
+	printf("DESCRIPTION:\n");
+	printf("\tsmiGen Generates Proxy skelettons from the SML code \".SMI\"\n");
+	printf("\tand include files containing SMI object headers\n");
+	printf("\tPossible Options:\n");
+	printf("\t\t-p\tGenerate Proxies\n");
+	printf("\t\t-c\tGenerate Proxies in \"C\"\n");
+	printf("\t\t-C\tGenerate Proxies in \"C++\" (default)\n");
+	printf("\t\t-m\tGenerate a makefile for the proxies\n");
+	printf("\t\t-i\tGenerate include files for SMI objects\n");
+	exit(0);
+}
+
 int main(argc,argv)
 int argc;
 char **argv;										
@@ -1092,17 +1113,7 @@
 
 	if(argc < 2)
 	{
-		printf("\nsmiGen [options] file\n\n");
-		printf("DESCRIPTION:\n");
-		printf("\tsmiGen Generates Proxy skelettons from the SML code \".SMI\"\n");
-		printf("\tand include files containing SMI object headers\n");
-		printf("\tPossible Options:\n");
-		printf("\t\t-p\tGenerate Proxies\n");
-		printf("\t\t-c\tGenerate Proxies in \"C\"\n");
-		printf("\t\t-C\tGenerate Proxies in \"C++\" (default)\n");
-		printf("\t\t-m\tGenerate a makefile for the proxies\n");
-		printf("\t\t-i\tGenerate include files for SMI objects\n");
-		exit(0);
+	  	usage();
 	}
 	for(i = 1; i < argc; i++)
 	{
@@ -1111,6 +1122,7 @@
 		{
 			switch(strin[1])
 			{
+				case 'h': usage(); break;
 				case 'p':
 					Proxy_flag = 1;
 					break;
@@ -1138,7 +1150,9 @@
 	}
 	for(i = 0; i < (int)strlen(path); i++)
 	{
+#ifndef unix
 		path[i] = tolower(path[i]);
+#endif
 		if((path[i] == '/') || (path[i] == ']'))
 			index = i+1;
 	}	
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/generator/smimake.c smixx/src/generator/smimake.c
--- smixx_web/src/generator/smimake.c	2001-05-16 09:13:24.000000000 +0200
+++ smixx/src/generator/smimake.c	2006-05-12 00:30:56.000000000 +0200
@@ -1,4 +1,22 @@
 #include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+void usage()
+{
+  	printf("\nsmiMake [options] file\n\n");
+	printf("DESCRIPTION:\n");
+	printf("\tsmiMake Optionally generates Proxy skelettons\n"); 
+	printf("\tand include files containing SMI object headers\n");
+	printf("\tthen preprocesses and translates the \".SML\" code\n");
+	printf("\tPossible Options:\n");
+	printf("\t\t-gp\tGenerate Proxies\n");
+	printf("\t\t-gi\tGenerate include files for SMI objects\n");
+	printf("\t\t-c\t(if -gp)Generate Proxies in \"C\" \n");
+	printf("\t\t-C\t(if -gp)Generate Proxies in \"C++\" (default)\n");
+	printf("\t\t-m\t(if -gp)Generate a makefile for the proxies\n");
+	exit(1);
+}
 
 main(argc,argv)
 int argc;
@@ -15,37 +33,12 @@
 char cmnd_path[128];
 int gen_flag = 0;
 int ret;
+int verbose = 0;
 
 	if(argc < 2)
 	{
-		printf("\nsmiMake [options] file\n\n");
-		printf("DESCRIPTION:\n");
-		printf("\tsmiMake Optionally generates Proxy skelettons\n"); 
-		printf("\tand include files containing SMI object headers\n");
-		printf("\tthen preprocesses and translates the \".SML\" code\n");
-		printf("\tPossible Options:\n");
- 		printf("\t\t-gp\tGenerate Proxies\n");
- 		printf("\t\t-gi\tGenerate include files for SMI objects\n");
- 		printf("\t\t-c\t(if -gp)Generate Proxies in \"C\" \n");
-		printf("\t\t-C\t(if -gp)Generate Proxies in \"C++\" (default)\n");
-		printf("\t\t-m\t(if -gp)Generate a makefile for the proxies\n");
- 		exit(1);
+	  	usage();
 	}
-#ifdef unix 
-
-	if( (ptr = getenv("SMIDIR")) == NULL )
-	{
-		printf("Environment variable SMIDIR not defined\n");
-		exit(0);
-	}
-	strcpy(smidir,ptr);
-	if( (ptr = getenv("XDIR")) == NULL )
-	{
-		printf("Environment variable XDIR not defined\n");
-		exit(0);
-	}
-	strcpy(xdir,ptr);
-#endif
 	strcpy(cmnd,"smiGen");
 	for(i = 1; i < argc; i++)
 	{
@@ -54,6 +47,8 @@
 		{
 			switch(strin[1])
 			{
+			  	case 'v': verbose = 1; break;	
+			  	case 'h': usage(); break;
 				case 'g':
 					if(strin[2] == 'p')
 					{
@@ -85,7 +80,9 @@
 	}
 	for(i = 0; i < strlen(path); i++)
 	{
+#ifndef unix
 		path[i] = tolower(path[i]);
+#endif
 		if((path[i] == '/') || (path[i] == ']'))
 			index = i+1;
 	}	
@@ -101,18 +98,13 @@
 	strcat(cmnd,path);
 	strcat(cmnd,in_file);
 	strcat(cmnd,ext);
-/*
-	printf("Executing : %s\n",cmnd);
-*/
-#ifdef unix
-	sprintf(cmnd_path,"%s/generator/%s/%s",smidir,xdir,cmnd);
-	ret = system(cmnd_path);
-#else
+
+	if (verbose) printf("Executing : %s\n",cmnd);
 	ret = system(cmnd);
-#endif
+
 	if(ret > 1)
 		exit(0);
-	printf("Creating : %s%s.sobj\n",path,in_file);
+	if (verbose) printf("Creating : %s%s.sobj\n",path,in_file);
 	strcpy(cmnd,"smiPreproc ");
 	strcat(cmnd,path);
 	strcat(cmnd,in_file);
@@ -121,36 +113,24 @@
 	strcat(cmnd,path);
 	strcat(cmnd,in_file);
 	strcat(cmnd,".smi");
-/*
-	printf("Executing : %s\n",cmnd);
-*/
-#ifdef unix
-	sprintf(cmnd_path,"%s/preprocessor/%s/%s",smidir,xdir,cmnd);
-	ret = system(cmnd_path);
-#else
+
+	if (verbose) printf("Executing : %s\n",cmnd);
 	ret = system(cmnd);
-#endif
-#ifdef unix
-	strcpy(cmnd,"smiTransf ");
-#else
+
 	strcpy(cmnd,"smiTrans ");
-#endif
 	strcat(cmnd,path);
 	strcat(cmnd,in_file);
 	strcat(cmnd,".smi");
-/*
-	printf("Executing : %s\n",cmnd);
-*/
+
 #ifdef unix
 	sprintf(cmnd_path,"rm %s%s.sobj",path,in_file);
+	if (verbose) printf("Executing : %s\n",cmnd_path);
 	ret = system(cmnd_path);
 #endif
-#ifdef unix
-	sprintf(cmnd_path,"%s/ftranslator/%s/%s",smidir,xdir,cmnd);
-	ret = system(cmnd_path);
-#else
+
+	if (verbose) printf("Executing : %s\n",cmnd);
 	ret = system(cmnd);
-#endif
+
 	if(strcmp(ext,".smi"))
 	{
 #ifdef unix
@@ -158,6 +138,7 @@
 #else
 		sprintf(cmnd_path,"del %s%s.smi",path,in_file);
 #endif
+		if (verbose) printf("Executing : %s\n",cmnd_path);
 		ret = system(cmnd_path);
 	}
 }
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/preprocessor/History smixx/src/preprocessor/History
--- smixx_web/src/preprocessor/History	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/preprocessor/History	2007-03-19 09:55:42.000000000 +0100
@@ -302,3 +302,9 @@
 === 20-May-2005:15:58 ==========  v27  =================
 === 25-May-2005:12:04 ==========  v27r1  =================
 === 14-July-2005:17:07 ==========  v28  =================
+=== 28-September-2005:15:35 ==========  v28r1  =================
+=== 06-October-2005:15:38 ==========  v29  =================
+=== 20-January-2006:14:46 ==========  v29r1  =================
+=== 31-March-2006:17:27 ==========  v30  =================
+=== 19-May-2006:20:34 ==========  v31  =================
+=== 21-May-2006:21:01 ==========  v31r1  =================
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/preprocessor/version.hxx smixx/src/preprocessor/version.hxx
--- smixx_web/src/preprocessor/version.hxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/preprocessor/version.hxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-#ifndef INCVERSION
-#define INCVERSION
-#define smixxVersion "v28"
-#define smixxDate "14-July-2005:17:07"
-#endif /* INCVERSION */
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/preprocessor/version.hxx.in smixx/src/preprocessor/version.hxx.in
--- smixx_web/src/preprocessor/version.hxx.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/preprocessor/version.hxx.in	2007-03-19 09:58:01.000000000 +0100
@@ -0,0 +1,5 @@
+#ifndef INCVERSION
+#define INCVERSION
+#define smixxVersion 	"@SMIXX_TAG@"
+#define smixxDate 	"@SMIXX_DATE@"
+#endif /* INCVERSION */
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/rtl/smi_send_command.c smixx/src/rtl/smi_send_command.c
--- smixx_web/src/rtl/smi_send_command.c	2004-11-11 15:21:46.000000000 +0100
+++ smixx/src/rtl/smi_send_command.c	2007-03-19 10:31:09.000000000 +0100
@@ -1,5 +1,6 @@
 #include <smiuirtl.h>
 #include <stdio.h>
+#include <stdlib.h>
 
 main(argc,argv)
 int argc;
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/rtl/smirtlcpp.cxx smixx/src/rtl/smirtlcpp.cxx
--- smixx_web/src/rtl/smirtlcpp.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/rtl/smirtlcpp.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -10,6 +10,10 @@
 #include "smirtl.hxx"
 #include "version.h"
 
+extern "C" {
+#include "smixx_parstring_util.h"
+}
+
 static int Version_number = SMIXX_VERSION;
 
 ParInfo::ParInfo(char *name, int type)
@@ -22,13 +26,16 @@
 		case SMI_INTEGER:
 			strcpy(itsTypeStr,"(I)");
 			itsData = new char[32];
+			itsEscData =0;
 			break;
 		case SMI_FLOAT:
 			strcpy(itsTypeStr,"(F)");
 			itsData = new char[32];
+			itsEscData =0;
 			break;
 		case SMI_STRING:
 			itsData = new char[32];
+			itsEscData = new char[32];
 			strcpy(itsTypeStr,"(S)");
 			break;
 	}
@@ -38,6 +45,7 @@
 {
 	delete itsName;
 	delete itsData;
+	if ( !itsEscData ) delete itsEscData;
 }
 
 int ParInfo::setInfo(void *data, int type)
@@ -54,8 +62,16 @@
 			break;
 		case SMI_STRING:
 			delete itsData;
+			/* the user is supplying un-escaped data*/
 			itsData = new char[ strlen((char *)data) +1];
 			strcpy(itsData,(char *)data);
+			
+			/* now we have to create the escaped string*/
+			delete itsEscData;
+			int nout = smixx_escape(NULL,itsData,0);
+			if ( nout < 0 ) return -1;
+			itsEscData = new char[ nout +1];
+			smixx_escape(itsEscData, itsData,nout);
 			break;
 	}
 	return 1;
@@ -65,11 +81,30 @@
 {
 	if(itsType != type)
 		return -1;
+		
+	if ( type == SMI_STRING )
+	{
+		/* escaped string comming from command handler*/
+		delete itsEscData;
+		itsEscData = new char[ strlen(data) +1];
+		strcpy(itsEscData,(char *)data);
+		
+		/* have to unescape it*/
+		delete itsData;
+		int nout = smixx_unescape(NULL,itsEscData,0);
+		if (nout < 0) return -1;
+		itsData = new char[nout + 1];
+		nout = smixx_unescape(itsData,itsEscData,nout);
+		return 1;
+	}
+	else
+	{
 	delete itsData;
 	itsData = new char[ strlen(data) +1];
 	strcpy(itsData,(char *)data);
 	return 1;
 }
+}
 
 SmiProxy::SmiProxy(char *name)
 {
@@ -434,7 +469,7 @@
 	{
 		parname = parptr->getName();
 		len += 1 + strlen(parname) +3+1;  /* /par_name(X)= */
-		len += parptr->getDataSize();
+		len += parptr->getEscDataSize();
 		parptr = (ParInfo *)itsParList.getNext();
 	}
 	len += 1;
@@ -460,7 +495,7 @@
 		strcat(itsState, parptr->getName());
 		strcat(itsState, parptr->getTypeStr());
 		strcat(itsState,"=");
-		strcat(itsState, parptr->getData());
+		strcat(itsState, parptr->getEscData());
 		parptr = (ParInfo *)itsParList.getNext();
 	}
 }
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/rtl/smiuirtl.c smixx/src/rtl/smiuirtl.c
--- smixx_web/src/rtl/smiuirtl.c	2005-08-09 19:06:56.000000000 +0200
+++ smixx/src/rtl/smiuirtl.c	2007-03-19 09:55:42.000000000 +0100
@@ -14,6 +14,9 @@
 
 #include <stdlib.h>
 #include <string.h>
+
+#include "smixx_parstring_util.h"
+
 /*
 #include "parameters.h"
 */
@@ -1485,9 +1488,7 @@
 				get_token(ptr,&aux_ptr);
 				if(*type == SMI_STRING)
 				{
-					*size = strlen(aux_ptr);
-					if(aux_ptr[0] == '"')
-						*size -=2;
+					*size = smixx_unescape(NULL,aux_ptr,0);
 				}
 				else if(*type == SMI_INTEGER)
 				{
@@ -1540,6 +1541,7 @@
 {
 	char *aux_ptr;
 	int type, ret = 0;
+	int nout;
 
 	type = SMI_STRING;
 	push_token(ptr);
@@ -1560,13 +1562,8 @@
 		switch(type)
 		{
 			case SMI_STRING:
-				if(aux_ptr[0] == '"')
-				{
-					aux_ptr[strlen(aux_ptr) - 1] = '\0'; 
-					strcpy(val, aux_ptr + 1);
-				}
-				else
-					strcpy(val, aux_ptr);
+				nout = smixx_unescape(NULL,aux_ptr,0);
+				nout = smixx_unescape(val,aux_ptr,nout);
 				break;
 			case SMI_INTEGER:
 				if(strchr(aux_ptr,'x'))
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/rtl/smiuirtlcpp.cxx smixx/src/rtl/smiuirtlcpp.cxx
--- smixx_web/src/rtl/smiuirtlcpp.cxx	2005-08-09 17:43:48.000000000 +0200
+++ smixx/src/rtl/smiuirtlcpp.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -8,6 +8,10 @@
 #define SMIUILIB
 #include "smiuirtl.hxx"
 
+extern "C" {
+#include "smixx_parstring_util.h"
+}
+
 static void obj_change_rout(int *objId, SmiObject **tag)
 {
 	SmiObject *t = *tag;
@@ -100,6 +104,7 @@
 	itsDefault = 0;
 	itisObj = 0;
 	itsValueSize = 0;
+	itsEscValueSize = 0;
 }
 
 SmiParam::~SmiParam() 
@@ -107,6 +112,8 @@
 	delete itsName;
 	if(itsValueSize)
 		delete (char *)itsValue;
+	if(itsEscValueSize)
+		delete (char *)itsEscValue;
 }
 
 int SmiParam::setValue(int val) 
@@ -151,9 +158,36 @@
 		itsValueSize = strlen(val)+1;
 	} 
 	strcpy((char *)itsValue, val);
+	/* now the escaped value */
+	if ( itsEscValueSize ) delete (char *) itsEscValue;
+	int nout = smixx_escape(NULL,val,0);
+	if (nout < 0) return -1;
+	itsEscValue = new char[nout+1];
+	nout = smixx_escape((char* )itsEscValue,val,nout);
+	itsEscValueSize = nout + 1;
+	
 	return(1);
 }
 
+void SmiParam::convertToEsc()
+{
+	if ( itsType != SMI_STRING ) return;
+	
+	if ( itsEscValueSize ) delete (char *) itsEscValue;
+	int nout = smixx_escape(NULL,(char *)itsValue,0);
+	if (nout < 0) return ;
+	itsEscValue = new char[nout+1];
+	nout = smixx_escape((char* )itsEscValue,(char *)itsValue,nout);
+	itsEscValueSize = nout + 1;
+	
+	return;
+}
+
+SmiParam *ParamHandler::getFirstParam() 
+{
+	return (SmiParam *)itsParamList.getHead(); 
+}
+
 SmiParam *ParamHandler::getNextParam() 
 {
 	return (SmiParam *)itsParamList.getNext(); 
@@ -204,6 +238,8 @@
 				paramptr->itsValue); 
 			if(ret)
 				paramptr->itsDefault = 1;
+			if(ret)
+				paramptr->convertToEsc();
 		}
 		addParam(paramptr);
 	}
@@ -278,7 +314,8 @@
 	if(getNParams())
 	{
 		SmiParam *param;
-		while(param = getNextParam())
+		param = getFirstParam();
+		while (param)
 		{
 			if(!param->itsValueSize)
 			{
@@ -297,11 +334,12 @@
 						sprintf(tmp,"/%s(F)=%e",param->itsName, *(double *)param->itsValue);
 						break;
 					case SMI_STRING:
-						sprintf(tmp,"/%s=\"%s\"",param->itsName, (char *)param->itsValue);
+						sprintf(tmp,"/%s=\"%s\"",param->itsName, (char *)param->itsEscValue);
 						break;
 				}
 			}
 			strcat(cmnd, tmp);
+			param = getNextParam();
 		}
 	}
 	smiui_send_command(itsObject->getName(),cmnd);
@@ -502,6 +540,8 @@
 		int ret = smiui_get_obj_param_value(id, paramptr->itsValue); 
 		if(ret)
 			paramptr->itsDefault = 1;	
+		if(ret)
+			paramptr->convertToEsc();	
 		addParam(paramptr);
 	}
 }
@@ -998,7 +1038,7 @@
 				os <<"=" << par.getValueFloat();
 				break;
 			case SMI_STRING:
-				os <<"=" << par.getValueString();
+				os <<"=" << par.getEscValueString();
 				break;
 		}
 	}
Binary files smixx_web/src/src/examples/run_control/bin/evt_builder.exe and smixx/src/src/examples/run_control/bin/evt_builder.exe differ
Binary files smixx_web/src/src/examples/run_control/bin/evt_builder.ilk and smixx/src/src/examples/run_control/bin/evt_builder.ilk differ
Binary files smixx_web/src/src/examples/run_control/bin/evt_builder.pdb and smixx/src/src/examples/run_control/bin/evt_builder.pdb differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/History smixx/src/stateManager/History
--- smixx_web/src/stateManager/History	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/History	2007-03-19 09:55:42.000000000 +0100
@@ -1887,3 +1887,177 @@
    
 === 11-Jul-2005:15:00 ========= v27r1-sm9 ====================================	  
 === 14-July-2005:17:07 ==========  v28  =================
+
+  15-Aug-2005 (Clara Gaspar)
+  
+    commhandler.*  ... bug fix
+    
+  28-Sep-2005  (Boda Franek)
+  
+  scheduler.cxx, doins.cxx insertins.cxx ... some prints suspended for dbg < 3
+  
+=== 28-September-2005:15:35 ==========  v28r1  =================
+
+  28-Sep-2005 (Boda Franek)
+  
+   - termins.* class TermIns ...  private _endState changed from char string type to Name
+   
+  - End State of an instruction will be returned as type Name rather then char string
+   ---------------------------------------------------------------------------------
+   The reason is that if it is returned as a string a fixed space has to be reserved
+   for it.
+   The class Instruction (instruction.hxx) has the declaration of execute method changed.
+   Because all the instructions inherit from it they all have to change this declaration
+   even if they do not set the endstate. These are: DoIns (doins.*), InsertIns (insertins.*)
+   and SetIns (setins.*).
+   TermIns (termins.*)  and IfIns (ifins.*) are the only instructions that can end in a new
+   state and require some mods.
+   At this stage I decided to return string from InsList (inslist.*) as before. However
+   the class now has to take into account that the instructions are returning Name.
+   
+=== 28-September-2005:17:40 ==========  v28r1-sm1  =================
+   
+  29-Sep-2005 (Boda Franek)
+  
+  - End State of an instruction list will be returned as type Name rather then char string
+   ---------------------------------------------------------------------------------------
+   Instruction list (class InsList) is used by IfIns class and Action class. Therefore
+   changes to inslist.*, ifins.cxx and action.cxx
+   
+=== 29-September-2005:15:25 ==========  v28r1-sm2  =================   
+
+  30-Sep-2005 (Boda Franek)
+  
+  - End State of an action will be returned as type Name rather then char string
+   -----------------------------------------------------------------------------
+   
+   Action class is used by State class. Therefore changes to action.* & state.cxx
+   
+=== 30-September-2005:13:55 ==========  v28r1-sm3  =================      
+  
+  - End State of a state will be returned as type Name rather then char string
+   -----------------------------------------------------------------------------
+          This is the end of End State saga
+	     
+   State class is used by SMIObject class. Therefore changes to state.* & smiobject.cxx
+   
+=== 30-September-2005:14:25 ==========  v28r1-sm4  =================      
+
+   - removing the remaining usage of MAXNAMESIZE parameter
+     -----------------------------------------------------
+    action.* ... the method name which uses MAXNAMESIZE is not used by anybody
+              and therefore deleted
+	      
+    commhandler.cxx ... MAXNAMESIZE used in commented-out section of the code
+             this section was therefore deleted.
+	     
+    smiclassregistrar.* removed. The class was made obsolete. See 11-Jul-2005
+    
+    smiobject.cxx ...the main change is removal of an obsolete method
+            subobjectName(int, char*)     
+
+    action.*  constructor returns action name as Name type rather than char
+              string.
+
+    state.cxx ... takes the above into account
+                  obsolete method action(int, char*) removed
+		  
+    parameters.hxx MAXNAMESIZE removed
+    
+=== 30-September-2005:16:10 ==========  v28r1-sm5  =================   
+
+   4-Oct-2005 (Boda Franek)
+   Removing remaing 'fixed' declarations
+   -------------------------------------
+   I have ran the following command:
+   
+   grep '\[.*\] *[\[,;]' * > badDeclarationx.txt
+   
+   and visualy inspected the result. The following files were identified as
+   containing bad declarations:
+   
+   action.cxx, condition.cxx, condition.hxx, doins.cxx,
+   ifhandler.hxx, initiator.cxx, ifins.hxx, setins.cxx,
+   smiclass.cxx, smiobject.cxx & state.cxx
+   The offending lines in badDeclarations.txt are marked by *- at the begining
+   
+   NB I have ignored declarations with well defined fixed
+      size such as char type[7]
+   
+   5-Oct-2005 (Boda Franek)
+   
+   ifins.*  private data InsList *_pblocks[100]; Condition *_pCondition[100]
+            replaced by PtrVector _insLists; PtrVector _conditions;
+    
+=== 05-October-2005:12:10 ==========  v28r1-sm6  ================= 	  
+=== 06-October-2005:15:38 ==========  v29  =================
+
+ 11-Jan-2006 (Boda Franek)
+    Removed the limitations on the number of Instruction Blocks of an action
+    ------------------------------------------------------------------------
+    ifIns.hxx, ifIns.cxx ... 
+          1) Argument InsList** pAllBlocks replaced by PtrVector& allBlocks
+	  2) argument int *no_lines replaced by int& no_lines
+	  3) whatAreYou method improved
+
+    inslist.hxx & cxx ...
+          1) Argument InsList** pblocks replaced by PtrVector& allBlocks
+	  2) argument int *no_lines replaced by int& no_lines	  
+    
+    action.cxx ...
+          InsList *pblocks[maxInsBlocks]   replaced by PtrVector allBlocks
+=== 11-January-2006:14:10 =========== v29-sm1===============================
+
+ 12-Jan-2006 (Boda Franek)
+    condition.hxx & cxx ...
+        SmpCond* _pSmpCond[_maxSmpCond]    replaced by PtrVector _smpConditions;
+=== 20-January-2006:11:40 =========== v29-sm2===============================	
+
+ 20-Jan-2006 (Boda Franek)	
+	 
+    condition.hxx & cxx
+      Internal int smpflags[_maxSmpCond]  replaced by
+               vector<int> smpflags;
+	       
+=== 20-January-2006:14:46 ==========  v29r1  =================
+
+ 31-Mar-2006  (Boda Franek)
+ 
+   smiobject.hxx & cxx  new method : bool hasAssociatedAttribute() const
+   
+   smiobject.cxx  ... ASSOCIATED attribute for is_of_class is taken only from
+                      the class
+
+   state_manager.cxx ... some debug prints added and are commented out
+=== 31-March-2006:17:27 ==========  v30  =================
+
+ 19-May-2006  (Boda Franek)
+ 
+  - Changes to IfHandler class
+    --------------------------
+     a) private data
+        Name int _numOfObjects; _objNames[100];  SetName* _pTobeLocked[100]; replaced by
+        NmdPtnrList _suspendedObjects; holding the same info
+
+     b) 2 new private methods
+        int findRequester     and  int findFreeToResumeObject
+	
+     c) method bool isEmpty() removed as it is not used by anyone
+   
+     d) arguments of public method addSet    and    objectLocked  rationalised
+   
+     Files affected: ifhandler.hxx, ifhandler.cxx,  ifins.cxx and smiobject.cxx
+   
+  - state.cxx   eliminated the usage of temporary string char actionstr_out[256]
+  
+  This concludes the dynamisation campaign that started some time ago. There are two
+  outstanding things that should get attention some time in future:
+       1) the finate dimension of the input record and the associated MAXRECL parameter
+       2) initiator should be probably redesigned.
+       
+=== 19-May-2006:20:34 ==========  v31  =================
+  21-May-2006 (Boda Franek)
+  
+     ifhandler.cxx .. various diagnostic prints conditioned on dbg> 5
+     
+=== 21-May-2006:21:01 ==========  v31r1  =================
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/action.cxx smixx/src/stateManager/action.cxx
--- smixx_web/src/stateManager/action.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/stateManager/action.cxx	2006-01-11 14:55:47.000000000 +0100
@@ -15,7 +15,7 @@
 //-----------------------------------------------------------------------------
 
 Action::Action
-      ( char lines[][MAXRECL],char* action_nm,int *no_lines, 
+      ( char lines[][MAXRECL],Name& action_nm,int *no_lines, 
         SMIObject *pobj, State* pstat){
 //
 // First, the Action class is instantiated and as a part of its initialisation,
@@ -23,18 +23,16 @@
 // may contain many blocks, it points directly only to this block (0).
 // The other blocks of the action are accessed hirachically from block(0)
 
-   enum { maxInsBlocks = 500 };     // maximal number of Instruction blocks
-                                    // of the current action
-
    int NoOfBlocks;
-   InsList *pblocks[maxInsBlocks];  // pointers to all the blocks 
+   PtrVector allBlocks;  // pointers to all the blocks 
                                     // of the current action
+    InsList* pblock;
 
    _objName = pobj->name();
    _pParentObject = pobj;
    _pParentState = pstat;
 
-   strcpy(action_nm,lines[1]);
+   action_nm = lines[1];
 
    _actionName = action_nm; 
 
@@ -111,10 +109,11 @@
 //           << endl;
       assert ( curr_block == NoOfBlocks );
 
-      pblocks[curr_block] = new InsList
+      
+      pblock = new InsList
           (curr_block,curr_level,_pParentObject,_pParentState,this);
-      assert( pblocks[curr_block] != 0 );
-      assert ( NoOfBlocks < maxInsBlocks );
+      assert( pblock != 0 );
+      allBlocks+= pblock;
       NoOfBlocks++;
     }
   }
@@ -125,12 +124,13 @@
       _pblock = 0;
    }
    else {
-      _pblock = pblocks[0];
+      _pblock = static_cast<InsList*>(allBlocks[0]);
    }
 
 
 //---------------------- Loop over the action lines ---------------------------
 
+//cout << endl << _actionName << endl;
   int blkno;
   blkno = 0;
 
@@ -141,7 +141,10 @@
     }
     else if (!strcmp(lines[il],"*BLOCK")) {
       int no_blklines;
-      pblocks[blkno]->initialise(&lines[il],pblocks,&no_blklines);
+      pblock = static_cast<InsList*>(allBlocks[blkno]);
+      pblock->initialise(&lines[il],allBlocks,no_blklines);
+//      cout << endl << "Block : " << blkno << "  " << pblock  << endl;
+//      pblock->listInstructions();
       blkno++;
       il = il + no_blklines -1;
     }
@@ -173,7 +176,7 @@
 
 
 //--------------------------------  execute  -----------------------------------
-int Action::execute(char* pstate, const Name& actionstr) {
+int Action::execute( Name& endState, const Name& actionstr) {
 //
 
 #ifdef DEBUG
@@ -224,10 +227,10 @@
 //-----------------------------------------
 
   int temp;
-  char state[MAXNAMESIZE];
+  
   if (_pblock == 0) { return 0;}   // some crazy guys have no instructions
-  temp = _pblock->execute(state);
-  strcpy(pstate,state);
+  temp = _pblock->execute(endState);
+  
 
   return temp;
 }
@@ -245,16 +248,6 @@
 Parms* Action::pDeclaredParms() {
    return &_declaredParms;
 }
-
-//---------------------------- name ----------------------------------------
-void Action::name ( char* name, int* numParam) {
-   _actionName.whatAreYou(name,MAXNAMESIZE);
-//
-   *numParam = _declaredParms.numOfEntries();
-//
-   return;
-}
-
 //---------------------------- actionString -------------------------------
 //  action/par1/par2=/par3
 //
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/action.hxx smixx/src/stateManager/action.hxx
--- smixx_web/src/stateManager/action.hxx	2004-05-26 17:23:28.000000000 +0200
+++ smixx/src/stateManager/action.hxx	2005-09-30 16:51:08.000000000 +0200
@@ -16,16 +16,14 @@
 class Action {
 public :
   Action
-    ( char lines[][MAXRECL],char* action_nm,int *no_lines,
+    ( char lines[][MAXRECL],Name& action_nm,int *no_lines,
       SMIObject *pobj, State* pstat);
 
   void whatAreYou();
 
-  void name(char* name, int *numParameters);
-
   void actionString(Name& actionstr);
 
-  int execute(char* pstate, const Name& actionstr) ;
+  int execute(Name& endState, const Name& actionstr) ;
 
   Parms* pCurrentParameters() ; // returns the pointer to the current parms
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/commhandler.cxx smixx/src/stateManager/commhandler.cxx
--- smixx_web/src/stateManager/commhandler.cxx	2005-05-31 14:50:26.000000000 +0200
+++ smixx/src/stateManager/commhandler.cxx	2005-09-30 15:49:56.000000000 +0200
@@ -615,38 +615,7 @@
 void CommHandler::declareObjList()
 {
 	char tmpstr[MAX_NAME];
-/*
-	int nsub;
-	Obj *objptr;
-	int size;
-	int index = 0;
-
-	size = nObjs*MAXNAMESIZE;
 
-	itsObjList = (char *)new char[size];
-	memset(itsObjList,0,size);
-
-	for(int i = 0; i < itsObjs.length(); i++)
-	{
-		objptr = (Obj *)itsObjs[i];
-		if((nsub = objptr->getNSubObjs()) > 1)
-		{
-			for(int j=0; j<nsub; j++)
-			{
-				strcpy(tmpstr,objptr->getName().getString());
-				strcat(tmpstr,".");
-				strcat(tmpstr,
-					objptr->getSubObj(j)->getName().getString());
-				strcpy(&itsObjList[(index++)*MAXNAMESIZE], tmpstr); 
-			}
-		}
-		else
-		{
-			strcpy(tmpstr,objptr->getName().getString());
-			strcpy(&itsObjList[(index++)*MAXNAMESIZE], tmpstr); 
-		}
-	}
-*/
     itsVersion = SMIXX_VERSION;
 	strcpy(tmpstr,"SMI/");
 	strcat(tmpstr,CommHandler::domainName);
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/condition.cxx smixx/src/stateManager/condition.cxx
--- smixx_web/src/stateManager/condition.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/stateManager/condition.cxx	2006-01-20 14:41:59.000000000 +0100
@@ -3,6 +3,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <assert.h>
+#include <vector>
+using namespace std;
 #include "namelist.hxx"
 #include "condition.hxx"
 #include "smpcondtyp1.hxx"
@@ -36,7 +38,6 @@
    il++;
    sscanf(lines[il],"%d %d",&_noOfSmpCond,&_noOfCondIns);
    assert (_noOfSmpCond >= 0);
-   assert (_noOfSmpCond < _maxSmpCond); 
 
    assert (_noOfCondIns >= 0);
    assert (_noOfCondIns < _maxCondIns); 
@@ -44,6 +45,7 @@
    il++;
 
 	Name objNm; Name setNm;
+	SmpCond* pSmpCond;
 
 	if ( _noOfSmpCond > 0 ) {
 		int typ; SmpCondTyp1* pType1; SmpCondTyp2* pType2;
@@ -55,20 +57,20 @@
 			sscanf(lines[il],"%d",&typ);
 			if (typ == 1) {
 	 			pType1 = new SmpCondTyp1(&lines[il],no_smpcond_lines);
-				_pSmpCond[ismp] = pType1;
+				pSmpCond = pType1;
 			}
 			else if (typ == 2) {
 	 			pType2 = new SmpCondTyp2(&lines[il],no_smpcond_lines);
-				_pSmpCond[ismp] = pType2;
+				pSmpCond = pType2;
 			}
 			else {
 	 		cout << " illegal simple instructionb type " << endl;
 			exit(1);
 			}
-
+                        _smpConditions += pSmpCond;
 			il = il + no_smpcond_lines;
-			_srvOList.exclusiveUpdate(_pSmpCond[ismp]->refObjects());
-			_srvOSList.exclusiveUpdate(_pSmpCond[ismp]->refObjectSets());
+			_srvOList.exclusiveUpdate(pSmpCond->refObjects());
+			_srvOSList.exclusiveUpdate(pSmpCond->refObjectSets());
 		}
 		
 	}
@@ -102,8 +104,10 @@
 
 // The following is just a test of simple condition function
 //   if ( _noOfSmpCond > 0 ) {
+//      cout << endl ;
 //      for (int ismp=0; ismp < _noOfSmpCond; ismp++) {
-//	 cout << (_pSmpCond[ismp]->whatAreYou()).getString() << "\n";
+//          pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+//	 cout << (pSmpCond->whatAreYou()).getString() << "\n";
 //      }
 //   }
 
@@ -111,7 +115,7 @@
   return ;
 }  
 
-
+//=================================================================================
 void Condition::whatAreYou(int maxStrLen, char* condString) {
 //   cout << " Condition::whatAreYou   not implemented yet \n";
    strcpy(condString,_condition);
@@ -121,10 +125,12 @@
 //---------------------------- evaluate -----------------------------------
 int Condition::evaluate() {
 //
+    SmpCond* pSmpCond;
    int flag;
    int ismp;
    int icins;
-   int smpflags[_maxSmpCond];     
+   vector<int> smpflags;
+   int smpflag;     
    int X[_maxCondIns];
 	int allGhosts = 1;
 //
@@ -142,15 +148,17 @@
 #ifdef DEBUG
          cout << "    T" << ismp+1 << ": " << endl;
 #endif
-         smpflags[ismp] = _pSmpCond[ismp]->evaluate();
+         pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+         smpflag = pSmpCond->evaluate();
+	 smpflags.push_back(smpflag);
 #ifdef DEBUG
 	cout << " evaluates to " << smpflags[ismp] << endl;
 #endif
-         if (smpflags[ismp] == -1 ) { 
+         if (smpflag == -1 ) { 
              flag = -1;
              goto Fin;
          }
-	 if (smpflags[ismp] != -2 ) {allGhosts = 0;} 
+	 if (smpflag != -2 ) {allGhosts = 0;} 
    }
 //
    if (allGhosts == 1) {
@@ -247,9 +255,11 @@
 bool Condition::isPresent( const char *objName) const {
 //
    Name tmpName = objName;
+   SmpCond* pSmpCond;
    
    for ( int ismp = 0; ismp < _noOfSmpCond; ismp++) {
-         if ( _pSmpCond[ismp]->isPresent(tmpName) ) { return 1; }
+         pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+         if ( pSmpCond->isPresent(tmpName) ) { return 1; }
    }
 //
    return 0;
@@ -348,6 +358,7 @@
 //--------------------------  objectSet   ------------------------
 void Condition::objectSet(Set_Name *pobjSet) {
 //
+    SmpCond* pSmpCond;
 
    if ( !pobjSet->isEmpty() ) {
         cout << " objectSet   is not empty\n";
@@ -359,7 +370,8 @@
    NameList list; Name name;
 
    for ( int ismp = 0; ismp < _noOfSmpCond; ismp++) {
-	_pSmpCond[ismp]->objectsToLock(list);
+        pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+	pSmpCond->objectsToLock(list);
 	list.reset();
 	while (list.nextItem(name)) {
 		pobjSet->add(name.getString());
@@ -371,10 +383,12 @@
 //--------------------------  addto_objectSet   ------------------------
 void Condition::addto_objectSet(Set_Name *pobjSet) {
 //
+    SmpCond* pSmpCond;
    NameList list; Name name;
 
    for ( int ismp = 0; ismp < _noOfSmpCond; ismp++) {
-	_pSmpCond[ismp]->objectsToLock(list);
+        pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+	pSmpCond->objectsToLock(list);
 	list.reset();
 	while (list.nextItem(name)) {
 		pobjSet->add(name.getString());
@@ -383,15 +397,21 @@
 }
 //------------------------------------------------------------------
 void Condition::freeze() {
+    SmpCond* pSmpCond;
+    
 	for ( int ismp = 0; ismp < _noOfSmpCond; ismp++) {
-		_pSmpCond[ismp]->freeze();	
+	        pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+		pSmpCond->freeze();	
 	}
 	return;	
 }
 //------------------------------------------------------------------
 void Condition::unfreeze() {
+    SmpCond* pSmpCond;
+    
 	for ( int ismp = 0; ismp < _noOfSmpCond; ismp++) {
-		_pSmpCond[ismp]->unfreeze();	
+	        pSmpCond = static_cast<SmpCond*>(_smpConditions[ismp]);
+		pSmpCond->unfreeze();	
 	}
 	return;	
 }
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/condition.hxx smixx/src/stateManager/condition.hxx
--- smixx_web/src/stateManager/condition.hxx	2002-01-29 19:09:12.000000000 +0100
+++ smixx/src/stateManager/condition.hxx	2006-01-20 14:41:59.000000000 +0100
@@ -6,6 +6,7 @@
 #include "smpcond.hxx"
 #include "set_name.hxx"
 #include "namevector.hxx"
+#include "ptrvector.hxx"
 class  SmpCond;
 //                                                         B. Franek
 //                                                         09-Aug-1996
@@ -52,8 +53,7 @@
    int _noOfSmpCond;    // Number of simple conditions
    int _noOfCondIns;    // Number of condition instructions
 
-   enum { _maxSmpCond = 100 };
-   SmpCond *_pSmpCond[_maxSmpCond];  // Pointers to simple conditions
+   PtrVector _smpConditions;  // Pointers to simple conditions
 
    enum { _maxCondIns = 100 };
    char _condIns[_maxCondIns+1][MAXRECL];  // Condition Instruction lines
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/doins.cxx smixx/src/stateManager/doins.cxx
--- smixx_web/src/stateManager/doins.cxx	2005-08-15 17:29:08.000000000 +0200
+++ smixx/src/stateManager/doins.cxx	2005-09-28 18:41:09.000000000 +0200
@@ -9,6 +9,7 @@
    extern  Name smiDomain;
 #include "registrar.hxx"
    extern Registrar allSMIObjectSets;
+   extern int dbg;
 //-------------------------------------------------
 #include "doins.hxx"
 #include "smiobjectset.hxx"
@@ -94,7 +95,7 @@
 //----------------------------  execute  ---------------------------------------
 //
 //
-int DoIns::execute(char* pendState){
+int DoIns::execute( Name& endState ){
 //
 //
 #ifdef DEBUG
@@ -182,8 +183,10 @@
 		if(!pCurPars  || !pCurPars->get(parName,parVal,type)) {
 			cout << " No value for parameter " << parName << endl;
 		}
-//CG		cout << " Parameter " << parName 
-//		<< " has value " << parVal << endl;
+		if ( dbg > 2 ) {
+        	    cout << " Parameter " << parName 
+                    << " has value " << parVal << endl;
+		}
 		char* parValchr = parVal.getString(); 
 		parValchr[strlen(parValchr)-1] = '\0';
 		Name objNm = &parValchr[1];
@@ -203,7 +206,7 @@
 
 
 
-   strcpy(pendState,"not changed");
+   endState = "not changed";
    return 0;         // do instruction allways finishes
 }
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/doins.hxx smixx/src/stateManager/doins.hxx
--- smixx_web/src/stateManager/doins.hxx	2004-05-26 17:28:08.000000000 +0200
+++ smixx/src/stateManager/doins.hxx	2005-09-28 18:41:09.000000000 +0200
@@ -21,7 +21,7 @@
  ( char lines[][MAXRECL], int lev,int *no_lines, 
   SMIObject *pobj=0, State *pstat=0, Action* act=0);
   void whatAreYou();
-  int execute(char* pstate);   // 0-normal,  1-terminated action, 2-suspended
+  int execute( Name& endState );   // 0-normal,  1-terminated action, 2-suspended
 
   void executeHp();
 private:
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/ifhandler.cxx smixx/src/stateManager/ifhandler.cxx
--- smixx_web/src/stateManager/ifhandler.cxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/ifhandler.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -14,106 +14,146 @@
 //---------------------------- Externals ----------
 #include "objectregistrar.hxx"
    extern ObjectRegistrar allSMIObjects;
+   extern int dbg;
 //-------------------------------------------------
 //
 //----------------------------- IfHandler ---------------------------------
 IfHandler::IfHandler() {
-    _numOfObjects = 0;
     return;
 }
 //
 //
 //-----------------------------  isEmpty  ---------------------------------
-bool IfHandler::isEmpty() {
-   if ( _numOfObjects > 0 ) { return 1;}
-   return 0;
-}
+//bool IfHandler::isEmpty() {
+//   if ( _suspendedObjects.numOfEntries() > 0 ) { return 1;}
+//   return 0;
+//}
 //
 //
 //-----------------------------  addSet  ------------------------------------
-void IfHandler::addSet(char* objName, Set_Name* pTobeLocked) {
-//
-   _objNames[_numOfObjects] = objName;
-   _pTobeLocked[_numOfObjects] = pTobeLocked;   
-   _numOfObjects++;
-//
-   if ( _numOfObjects >= 100 ) {
-        cout << " Too many Ifs waiting\n";
-        cout.flush();
-        exit(1);
-   }
-}
-//
-//
-//----------------------------  objectLocked  -----------------------------
-void IfHandler::objectLocked(char* locked, char* requester) {
-//
-//
-   Name objRequester;
+void IfHandler::addSet(Name& objName, Set_Name& tobeLocked) {
 
-   objRequester = requester;
+//    Name tempName = objName;
+    Set_Name* pTobeLocked = &tobeLocked;
+    NmdPtnr tempItem(objName,pTobeLocked);
+    int flg = _suspendedObjects.add(tempItem);
+    assert( flg == 1 );
 
-   for ( int i = 0; i < _numOfObjects; i++ ) {
-         if ( objRequester == _objNames[i] ) {
-             if ( _pTobeLocked[i]->remove(locked) ) {
-#ifdef DEBUF
-                  cout << " To be locked: ";
-                  _pTobeLocked[i]->out();
-                  cout << "\n";
-                  cout.flush();
-#endif
-                  return;
+//debug beg  
+if ( dbg > 5 ) {
+   cout << endl << " ====================== addSet ===========================" << endl
+        << " Object " << objName << " is suspended " << endl
+	<< " tobe-locked set :" << pTobeLocked << " "; pTobeLocked->out(); cout << endl;
+
+    cout << endl << " Current suspended objects : " << endl;
+    _suspendedObjects.out(" ");
+   cout << " ===================================================" << endl;
              }
-             else {
-                  cout << " Locked object not found in the list\n";
-                  cout.flush();
-                  exit(1);
+//debug end
              }
+
+//----------------------------  objectLocked  -----------------------------
+void IfHandler::objectLocked(Name& locked, Name& requester) {
+   int flg;
+   Set_Name* pTobeLocked;
+   
+   flg = findRequester(requester,pTobeLocked);
+   assert (flg == 1);
+//debug beg
+if ( dbg > 5 ) {
+   cout << endl << " ============================ objectLocked =========================" << endl
+       << "  Object : " << locked << " is locked by " << requester << endl
+       << "        whose tobe-locked set is : " << pTobeLocked << "  " ; pTobeLocked->out(); cout << endl;
          }
+//debug end
+
+    flg = pTobeLocked->remove(locked);
+    assert(flg==1);
+    
+//debug beg
+if ( dbg > 5 ) {
+    cout << "  " << locked << " removed from the set " << pTobeLocked << "  " ; pTobeLocked->out(); cout << endl;
+    cout << " ====================================================================" << endl;       
+//debug end
    }
-//
-   cout << " Requesting object not found in ifhandler list\n";
-   cout.flush();
-   exit(1);
 }
 //
 //
 //------------------------------  execute  ---------------------------------
 //
 void IfHandler::execute() {
-//
-   int iex,i;
-//
-   iex = -1;
-//
-   for ( i = 0; i < _numOfObjects; i++ ) {
-        if ( _pTobeLocked[i]->isEmpty() ) {
-             SMIObject *pSMIObj;
-             pSMIObj = allSMIObjects.gimePointer(_objNames[i]);
-             pSMIObj->resume();
-             iex = i;
-             break;
-        }
+   SMIObject* pSMIObjToResume; Name objToResume;
+   int flg;
+
+    flg = findFreeToResumeObject(objToResume);
+    if ( flg == 0 ) { return;}
+
+    pSMIObjToResume = allSMIObjects.gimePointer(objToResume);		     
+      
+//debug beg
+if ( dbg > 5 ) {
+   cout << endl << " ====================== ifHandler.execute() ===========================" << endl
+        << " Object " << objToResume << " tobe-locked set is empty " << endl;
    }
-//
-   if ( iex == -1 ) { return; }
-//
-   _numOfObjects = _numOfObjects - 1;
-   if( _numOfObjects == 0 ) { return; }
-   if( iex == _numOfObjects ) { return; }
-   for ( i = iex; i < _numOfObjects; i++ ) {
-        _objNames[i] = _objNames[i+1];
-        _pTobeLocked[i] = _pTobeLocked[i+1];
+//debug end  	     
+
+    NmdPtnr tmpItem(objToResume,0);
+    flg = _suspendedObjects.remove(tmpItem);
+    assert(flg==1);
+    
+//debug beg
+if ( dbg > 5 ) {
+    cout << " New suspended object list : " << endl;
+    _suspendedObjects.out(" ");
+   cout << endl << " Object : " << objToResume << " resuming execution";    
    } 
+//debug end
+
+
+   pSMIObjToResume->resume();
+   return; 
 }
 //
 //
 //------------------------------  out  --------------------------------------
 // 
 void IfHandler::out() {
-//
-//
-   for ( int i = 0; i < _numOfObjects; i++ ) {
-        _objNames[i].out();
+    _suspendedObjects.out(" ");
+}
+//======================================== findRequester =======================================
+int IfHandler::findRequester(Name& requester, Set_Name*& pTobeLocked) {
+    NmdPtnr val;
+    
+    int nObj = _suspendedObjects.numOfEntries();
+    if ( nObj <= 0 ) { return 0;}
+    
+    _suspendedObjects.reset();
+    
+    while (_suspendedObjects.nextItem(val)) {
+        if ( val.name() == requester ) {
+	    pTobeLocked = static_cast<Set_Name*>(val.pointer());
+	    return 1;
+	}
+    }
+    
+    return 0;
+}
+//======================================== findFreeToResumeObject ===========================================
+int IfHandler::findFreeToResumeObject(Name& objName) {
+    NmdPtnr val; Set_Name* pTobeLocked;
+    
+    int nObj = _suspendedObjects.numOfEntries();
+    if ( nObj <= 0 ) { return 0;}
+    
+    _suspendedObjects.reset();
+    
+    while (_suspendedObjects.nextItem(val)) {
+	pTobeLocked = static_cast<Set_Name*>(val.pointer());
+	if ( pTobeLocked->isEmpty() ) {
+	    objName = val.name();
+	    return 1;
    }
 }
+    
+    return 0;
+} 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/ifhandler.hxx smixx/src/stateManager/ifhandler.hxx
--- smixx_web/src/stateManager/ifhandler.hxx	2001-05-16 09:13:26.000000000 +0200
+++ smixx/src/stateManager/ifhandler.hxx	2007-03-19 09:55:42.000000000 +0100
@@ -10,27 +10,31 @@
 #include "typedefs.hxx"
 #include "name.hxx"
 #include "set_name.hxx"
+#include "nmdptnrlist.hxx"
 
 class IfHandler {
    public :
       IfHandler();
 //
-      bool isEmpty();
+//     bool isEmpty();
 //
-      void addSet(char* objName, Set_Name* pTobeLocked);
+      void addSet(Name& objName, Set_Name& tobeLocked);
 //
-      void objectLocked(char* locked, char* requester);
+      void objectLocked(Name& locked, Name& requester);
 //
       void execute();
 //
       void out() ;
+      
 //
 //
    private :
-      int _numOfObjects;
 
-      Name   _objNames[100];
-      Set_Name* _pTobeLocked[100];
+      int findRequester(Name& requester, Set_Name*& pTobeLocked) ;
+
+      int findFreeToResumeObject(Name& objName) ;      
+      
+      NmdPtnrList _suspendedObjects;
 };
 
 #endif
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/ifins.cxx smixx/src/stateManager/ifins.cxx
--- smixx_web/src/stateManager/ifins.cxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/ifins.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -24,7 +24,7 @@
 //------------------------------ IfIns -------------------------------------
 
  IfIns::IfIns
- ( char lines[][MAXRECL],int lev,InsList* *pAllBlocks,int *no_lines
+ ( char lines[][MAXRECL],int lev, PtrVector& allBlocks,int& no_lines
  , SMIObject *pobj, State *pstat, Action* pact){
 //-------------------------------------------------------------------------
 // Input :
@@ -57,8 +57,8 @@
      int numCondlines;
 
      il++;
-     Condition *tempcnd;     
-     tempcnd = new Condition(&lines[il],&numCondlines);
+     Condition *pCondition;     
+     pCondition = new Condition(&lines[il],&numCondlines);
      il = il + numCondlines;
 
      int ref_blockno,ref_level;
@@ -67,20 +67,20 @@
 //     cout << "Execute block : " << ref_blockno << 
 //             " level : " << ref_level << "\n";
 
-     InsList *tempblk;
-     tempblk = pAllBlocks[ref_blockno];
+     InsList *pInsList;
+     pInsList = static_cast<InsList*>(allBlocks[ref_blockno]);
   
      char condition[MAXRECL];
-     tempcnd->whatAreYou(MAXRECL,condition);
+     pCondition->whatAreYou(MAXRECL,condition);
 //     cout << "Addind condition : " << condition << "\n";
-     _pCondition[icond] = tempcnd;
-     _pblocks[icond] = tempblk; 
-//     cout << icond << "  " << _pblocks[icond] << "\n";
+
+        _conditions += pCondition;
+        _insLists += pInsList;
 
    }
 
 
-  *no_lines = il + 1;
+  no_lines = il + 1;
   return ;
 }
 //
@@ -88,15 +88,27 @@
 
 //------------------------------ whatAreYou ---------------------------------
 void IfIns::whatAreYou(){
+    Condition *pCondition;
+    InsList *pInsList;
+    
 char condition[MAXRECL];
 cout << "\n";
 indent(_level*2+5);
-_pCondition[0]->whatAreYou(MAXRECL,condition);
-cout  << "if " << condition << " then"  << "\n";
-_pblocks[0]->listInstructions();
-//cout << "_pblocks[0] " << _pblocks[0] << "\n";
+
+    pCondition = static_cast<Condition*>(_conditions[0]);
+    pCondition->whatAreYou(MAXRECL,condition);
+
+    cout  << "if " << condition << " then"  << endl;
+    pInsList = static_cast<InsList*>(_insLists[0]);
+
+    indent(_level*2+5);
+    cout << "     " << pInsList << "\n";
+
 for (int i=1; i<_numCond; i++) {
-_pCondition[i]->whatAreYou(MAXRECL,condition);
+
+        pCondition = static_cast<Condition*>(_conditions[i]);
+        pCondition->whatAreYou(MAXRECL,condition);
+
   indent(_level*2+5);
   if (!strcmp(condition,"else")) {
     cout << "else" << "\n";
@@ -104,16 +116,22 @@
   else {
     cout << "else if " << condition << " then"  << "\n";
   }
-  _pblocks[i]->listInstructions();
+        pInsList = static_cast<InsList*>(_insLists[i]);
+
+        indent(_level*2+5);
+        cout << "     " << pInsList << "\n";
 }
 indent(_level*2+5);
-cout << "end if" << "\n" << "\n";
-cout.flush();
+    cout << "end if" << endl << endl;
+    return;
 }
 
 //----------------------------------- execute --------------------------------
-int IfIns::execute(char* pstate){
+int IfIns::execute( Name& endState ){
 //
+    Condition *pCondition;
+    InsList *pInsList;
+
    int trueBlock;
    int returnStat, i;
 
@@ -137,7 +155,7 @@
              cout << "  If suspended...waiting for objects to be locked\n";
 #endif
              _suspend_flag = 1;
-             ifHandler.addSet(_objName.getString(),&_tobeLocked);
+             ifHandler.addSet(_objName,_tobeLocked);
 		freezeConditions();
              return 2;
         } 
@@ -148,7 +166,9 @@
              goto EndIf;
         }
 //
-        returnStat = _pblocks[trueBlock]->execute(pstate);
+        pInsList = static_cast<InsList*>(_insLists[trueBlock]);
+        returnStat = pInsList->execute(endState);
+	
         if (returnStat == 2 ) { 
             _suspend_flag = 2;
             _isuspended = trueBlock;
@@ -177,7 +197,9 @@
              goto EndIf;
         }
 //
-        returnStat = _pblocks[trueBlock]->execute(pstate);
+        pInsList = static_cast<InsList*>(_insLists[trueBlock]);
+        returnStat = pInsList->execute(endState);
+	
         if (returnStat == 2 ) { 
             _suspend_flag = 2;
             _isuspended = trueBlock;
@@ -189,7 +211,9 @@
 //
    else if ( _suspend_flag == 2 ) {            //--------- _suspend_flag == 2
 //
-        returnStat = _pblocks[_isuspended]->execute(pstate);
+        pInsList = static_cast<InsList*>(_insLists[_isuspended]);
+        returnStat = pInsList->execute(endState);
+	
         if (returnStat == 2 ) { 
              return 2; 
         }
@@ -217,7 +241,7 @@
          << this << ")---------------------\n\n";
 #endif
 //   if (returnStat != 0) {
-//   cout << " State :" << pstate << "\n" << "\n";
+//   cout << " State :" << endState << "\n" << "\n";
 //   }
 //
 
@@ -228,6 +252,8 @@
 //
 void IfIns::lockObjects() {
 //
+    Condition *pCondition;
+
    Name obj;
    SMIObject *pSMIObj;
 
@@ -235,11 +261,12 @@
 	        obj = _tobeLocked.element(0);
 		_tobeLocked.remove(obj);
 	}
-
-	_pCondition[0]->objectSet(&_tobeLocked);
+        pCondition = static_cast<Condition*>(_conditions[0]);
+	pCondition->objectSet(&_tobeLocked);
 
 	for ( int iicond = 1; iicond < _numCond; iicond++ ) {
-		_pCondition[iicond]->addto_objectSet(&_tobeLocked);
+	    pCondition = static_cast<Condition*>(_conditions[iicond]);
+	    pCondition->addto_objectSet(&_tobeLocked);
 	}
 
 //
@@ -264,15 +291,19 @@
 //
 void IfIns::unlockObjects() {
 //
+    Condition *pCondition;
+
    if( !_tobeLocked.isEmpty() ){
        cout << " Object set not empty at end if \n";
        exit(1);
    }
 
-   _pCondition[0]->objectSet(&_tobeLocked);
+    pCondition = static_cast<Condition*>(_conditions[0]);
+    pCondition->objectSet(&_tobeLocked);
 
    for ( int iicond = 1; iicond < _numCond; iicond++ ) {
-         _pCondition[iicond]->addto_objectSet(&_tobeLocked);
+       pCondition = static_cast<Condition*>(_conditions[iicond]);
+       pCondition->addto_objectSet(&_tobeLocked);
    }
 
    Name obj;
@@ -291,6 +322,8 @@
 //
 int IfIns::findTrueBlock() {
 //
+    Condition *pCondition;
+
 #ifdef DEBUG
 	cout << " Looking for true condition " << endl;
 #endif
@@ -303,7 +336,8 @@
 #ifdef DEBUG
 	cout << " Condition : " << icond << endl;
 #endif
-         int  cond_flag = _pCondition[icond]->evaluate();
+        pCondition = static_cast<Condition*>(_conditions[icond]);
+        int  cond_flag = pCondition->evaluate();
 
          if ( cond_flag == -1 ) {
               cout << 
@@ -326,15 +360,22 @@
 }
 //--------------------------- freezeConditions -------------------------
 void IfIns::freezeConditions() {
+    Condition *pCondition;
+    InsList *pInsList;
+
 	for ( int icond=0; icond < _numCond; icond++ ) {
-		_pCondition[icond]->freeze();
+            pCondition = static_cast<Condition*>(_conditions[icond]);
+	    pCondition->freeze();
 	}
 	return;
 }
 //--------------------------- unfreezeConditions -----------------------
 void IfIns::unfreezeConditions() {
+    Condition *pCondition;
+
 	for ( int icond=0; icond < _numCond; icond++ ) {
-		_pCondition[icond]->unfreeze();
+	    pCondition = static_cast<Condition*>(_conditions[icond]);
+            pCondition->unfreeze();
 	}
 	return;
 }
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/ifins.hxx smixx/src/stateManager/ifins.hxx
--- smixx_web/src/stateManager/ifins.hxx	2004-05-26 17:59:22.000000000 +0200
+++ smixx/src/stateManager/ifins.hxx	2006-01-11 14:42:07.000000000 +0100
@@ -19,10 +19,10 @@
 
 class IfIns : public Instruction{
 public :
-  IfIns( char lines[][MAXRECL],int lev,InsList* *pAllBlocks
-       ,int *no_lines, SMIObject *pobj, State* pstat, Action*);
+  IfIns( char lines[][MAXRECL],int lev, PtrVector& allBlocks
+       ,int& no_lines, SMIObject *pobj, State* pstat, Action*);
   void whatAreYou();
-  int execute(char* pstate);   // 0-normal,  1-terminated action, 2-suspended
+  int execute( Name& endState );   // 0-normal,  1-terminated action, 2-suspended
 private:
 //
   void lockObjects();
@@ -35,8 +35,10 @@
   int _level;
   int _numCond;
   Action* _pParentAction;
-  InsList *_pblocks[100];  
-  Condition *_pCondition[100];
+
+    PtrVector _insLists;  // holds the pointers to the instructin Lists
+    PtrVector _conditions; //holds pointers to the corresp. conditions
+    
   int _isuspended;    // block at which it was suspended
   int _suspend_flag;  // non zero means that 'if' was suspended
 //                      1 - suspended because the condition could not be eval
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/insertins.cxx smixx/src/stateManager/insertins.cxx
--- smixx_web/src/stateManager/insertins.cxx	2005-08-15 17:29:08.000000000 +0200
+++ smixx/src/stateManager/insertins.cxx	2005-09-28 18:41:09.000000000 +0200
@@ -11,6 +11,7 @@
    extern Registrar allSMIObjectSets;
 #include "scheduler.hxx"
    extern Scheduler* pSchedulerGl;
+   extern int dbg;
 //-------------------------------------------------
 #include "insertins.hxx"
 #include "smiobject.hxx"
@@ -51,7 +52,7 @@
 
 
 //----------------------------  execute  ---------------------------------------
-int InsertIns::execute(char* pendState){
+int InsertIns::execute( Name& endState ){
 
 //	Name offset = "     "; char* pOffset = offset.getString();
 //	cout << endl << pOffset;
@@ -84,8 +85,10 @@
 			cout << " No value for parameter " << parName << endl;
 		}
 		else {
-//CG			cout << " Parameter " << parName 
-//			<< " has value " << parVal << endl;
+		    if ( dbg > 2 ) {
+                        cout << " Parameter " << parName 
+                        << " has value " << parVal << endl;
+		    }
 			char* parValchr = parVal.getString(); 
 			parValchr[strlen(parValchr)-1] = '\0';
 			objNm = &parValchr[1];
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/insertins.hxx smixx/src/stateManager/insertins.hxx
--- smixx_web/src/stateManager/insertins.hxx	2004-05-26 17:41:42.000000000 +0200
+++ smixx/src/stateManager/insertins.hxx	2005-09-28 18:41:09.000000000 +0200
@@ -22,7 +22,7 @@
 
 	void whatAreYou() ;
 
-	int execute(char* pstate);   // 0-normal,  1-terminated action, 2-suspended
+	int execute( Name& endState );   // 0-normal,  1-terminated action, 2-suspended
 private:
 	int _level;
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/inslist.cxx smixx/src/stateManager/inslist.cxx
--- smixx_web/src/stateManager/inslist.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/stateManager/inslist.cxx	2006-01-11 14:47:28.000000000 +0100
@@ -29,8 +29,8 @@
   _pParentState = pstat;
 }
 
-void InsList::initialise( char lines[][MAXRECL], InsList* *pblocks, 
-                          int *no_lines){
+void InsList::initialise( char lines[][MAXRECL], PtrVector& allBlocks, 
+                          int& no_lines){
 
   int curr_block, curr_level;   // block number and level of the block
                                 // which is being processed
@@ -42,11 +42,11 @@
   for (int il=2;;il++){
 //    cout << lines[il] << "\n";
     if (!strcmp(lines[il],"*END_ACTION")) {
-       *no_lines = il;
+       no_lines = il;
        break;
     }
     else if (!strcmp(lines[il],"*BLOCK")) {
-       *no_lines = il;
+       no_lines = il;
        break;
     }
 
@@ -96,7 +96,7 @@
 
       IfIns *pIfIns;
       pIfIns = new IfIns
-          (&lines[il],curr_level,pblocks,&no_iflines,
+          (&lines[il],curr_level,allBlocks,no_iflines,
 	  _pParentObject,_pParentState,_pParentAction);
 
 	_instructions += pIfIns;
@@ -129,7 +129,7 @@
 //=========================== listInstructions ===========================
 void InsList::listInstructions(){
 	int numIns = _instructions.length();
-//cout << " Num of instructions : " << numIns << "\n";
+cout << " Num of instructions : " << numIns << "\n";
 if (numIns == 0 ) {return;}
 for( int i=0; i<numIns; i++) {
 	void* ptnv = _instructions[i];
@@ -139,7 +139,8 @@
 }
 
 //==============================  execute  =================================
-int InsList::execute(char* pstate){
+int InsList::execute( Name& endState ){
+    
 	int numIns = _instructions.length();
 int temp;
 #ifdef DEBUG
@@ -160,7 +161,8 @@
 	void* ptnv = _instructions[i];
 	Instruction* ptnI = (Instruction*) ptnv;
 
-   temp = ptnI->execute(pstate);
+   temp = ptnI->execute(endState);
+  
    if (temp == 2) { 
      _isuspended = i; 
 #ifdef DEBUG
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/inslist.hxx smixx/src/stateManager/inslist.hxx
--- smixx_web/src/stateManager/inslist.hxx	2004-05-26 17:56:02.000000000 +0200
+++ smixx/src/stateManager/inslist.hxx	2006-01-11 14:47:28.000000000 +0100
@@ -23,10 +23,10 @@
 class InsList {
 public :
   InsList(int blknum, int lev, SMIObject *pobj, State*, Action*);
-  void initialise( char lines[][MAXRECL], InsList* *pblocks, 
-                   int *no_lines);
+  void initialise( char lines[][MAXRECL], PtrVector& allBlocks, 
+                   int& no_lines);
   void listInstructions();
-  int execute(char* pstate);
+  int execute( Name& endState );
 private :
   int _block_id;
   int _level;
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/instruction.hxx smixx/src/stateManager/instruction.hxx
--- smixx_web/src/stateManager/instruction.hxx	2001-05-16 09:13:26.000000000 +0200
+++ smixx/src/stateManager/instruction.hxx	2005-09-28 18:41:09.000000000 +0200
@@ -2,11 +2,12 @@
 #ifndef INSTRUCTION_HH
 #define INSTRUCTION_HH
 
+class Name;
 
 class Instruction {
 public:
   virtual void whatAreYou()  = 0;
-  virtual int execute(char* pstate)  = 0;   // 0-normal,  1-terminated action, 2-suspended
+    virtual int execute(Name& endState)  = 0;   // 0-normal,  1-terminated action, 2-suspended
 };  
 
 #endif
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/parameters.hxx smixx/src/stateManager/parameters.hxx
--- smixx_web/src/stateManager/parameters.hxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/parameters.hxx	2005-10-06 15:58:10.000000000 +0200
@@ -1,7 +1,6 @@
 #ifndef PARAMETERS_HH
 #define PARAMETERS_HH
-#define MAXRECL 81
-#define MAXNAMESIZE 65
+#define MAXRECL 129
 #define MAXSUBOBJECTS 1
 #endif
 //#define DEBUG
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/scheduler.cxx smixx/src/stateManager/scheduler.cxx
--- smixx_web/src/stateManager/scheduler.cxx	2005-08-15 17:29:08.000000000 +0200
+++ smixx/src/stateManager/scheduler.cxx	2005-09-28 15:33:04.000000000 +0200
@@ -179,8 +179,9 @@
 }
 //----------------------- handleObjectSetWhens ------------------------
 void Scheduler::handleObjectSetWhens() {
-//CG	print_msg("handleObjectSetWhens() called");
-//	cout << "handleObjectSetWhens() called" << endl;
+        if ( dbg > 2 ) {
+            print_msg("handleObjectSetWhens() called");
+	}
 	NameList* ptnL = &_reqObjectSetList;
 	ptnL->reset();
 	Name setName; Name temp;
@@ -195,7 +196,9 @@
 	}
 	ptnL->removeAll();
 
-//CG	print_msg("handleObjectSetWhens() finished");	
+        if ( dbg > 2 ) {
+            print_msg("handleObjectSetWhens() finished");
+	}	
 	return;
 }
 //----------------------------------------------------------------------------
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/setins.cxx smixx/src/stateManager/setins.cxx
--- smixx_web/src/stateManager/setins.cxx	2004-11-25 20:58:20.000000000 +0100
+++ smixx/src/stateManager/setins.cxx	2005-09-28 18:41:09.000000000 +0200
@@ -145,7 +145,7 @@
 //----------------------------  execute  ---------------------------------------
 //
 //
-int SetIns::execute(char* pendState){
+int SetIns::execute( Name& endState ){
 //
 //
    Parms *pObjParms = _pParentObject->pObjectParameters();
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/setins.hxx smixx/src/stateManager/setins.hxx
--- smixx_web/src/stateManager/setins.hxx	2004-05-26 17:40:22.000000000 +0200
+++ smixx/src/stateManager/setins.hxx	2005-09-28 18:41:09.000000000 +0200
@@ -21,7 +21,7 @@
       ( char lines[][MAXRECL], const int lev, int& no_lines,
          SMIObject *pobj, State *pstat, Action *pact);
   void whatAreYou() ;
-  int execute(char* pstate);   // 0-normal,  1-terminated action, 2-suspended
+  int execute( Name& endState );   // 0-normal,  1-terminated action, 2-suspended
 private:
   int _level;
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/smiclassregistrar.cxx smixx/src/stateManager/smiclassregistrar.cxx
--- smixx_web/src/stateManager/smiclassregistrar.cxx	2001-05-16 09:13:28.000000000 +0200
+++ smixx/src/stateManager/smiclassregistrar.cxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-//--------------------------  SMIClassRegistrar Class  -----------------------------------
-#include <string.h>
-#include "smiclassregistrar.hxx"
-//                                                         28-October-1996
-//                                                          B. Franek
-// Copyright Information:
-//      Copyright (C) 1996-2001 CCLRC. All Rights Reserved.
-//---------------------------------------------------------------------------
-//
-//--------------------------- Registrar --------------------------------------
-SMIClassRegistrar::SMIClassRegistrar(){
-
-   _numOfObjects = 0;
-
-
-}
-
-//--------------------------- registerObject ----------------------------------
-int SMIClassRegistrar::registerObject(char* objname, SMIClass *pSMIObj) {
-
-   if ( _numOfObjects >= _maxObjects ) { return 0; }
-
-   strcpy(_objectName[_numOfObjects],objname);
-   _pSMIObject[_numOfObjects] = pSMIObj;
-   _numOfObjects++;
-
-   return 1;      
-
-}
-
-//---------------------------- gimePointer ------------------------------------
-SMIClass *SMIClassRegistrar::gimePointer(char* objname) const {
-
-   if ( _numOfObjects == 0 ) {return 0;}
-
-   for (int io = 0; io < _numOfObjects; io++) {
-      if (!strcmp(objname,_objectName[io])) {
-         SMIClass *pSMIObj;
-         pSMIObj = _pSMIObject[io];
-         return pSMIObj;      
-      }
-   }   
-
-   return 0;
-}
-
-
-//--------------------------- numOfObjects ------------------------------------
-int SMIClassRegistrar::numOfObjects() {
-   return _numOfObjects;
-}
-
-//--------------------------- gimeName ----------------------------------------
-int SMIClassRegistrar::gimeName(int inx, char* objname) {
-   if ( inx >= _numOfObjects ) { return 0; }
-
-   strcpy(objname,_objectName[inx]);
-
-   return 1;
-}
-
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/smiclassregistrar.hxx smixx/src/stateManager/smiclassregistrar.hxx
--- smixx_web/src/stateManager/smiclassregistrar.hxx	2001-05-16 09:13:28.000000000 +0200
+++ smixx/src/stateManager/smiclassregistrar.hxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,37 +0,0 @@
-//---------------------- SMIClassRegistrar   Class ---------------------------
-#ifndef SMICLASSREGISTRAR_HH
-#define SMICLASSREGISTRAR_HH
-#include "parameters.hxx"
-//
-//   This class (1 instance) holds the names and pointers
-//   to all the SMI Classes found in the input file.
-//                                                          28-October-1996
-//                                                            B. Franek
-// Copyright Information:
-//      Copyright (C) 1996-2001 CCLRC. All Rights Reserved.
-//--------------------------------------------------------------------------
-//
-//#include "smiclass.hxx"
-class SMIClass;
-
-
-class SMIClassRegistrar {
-public :
-  SMIClassRegistrar();
-  SMIClass *gimePointer(char* objname) const;
-  int registerObject(char *objname, SMIClass *pSMIObj); 
-  int numOfObjects();
-  int gimeName(int inx, char *objname);
-private :
-
-   int _numOfObjects;
-
-   enum { _maxObjects = 200 };
-
-
-   char _objectName[_maxObjects][MAXNAMESIZE];
-   SMIClass *_pSMIObject[_maxObjects];
-};
-
-
-#endif
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/smiobject.cxx smixx/src/stateManager/smiobject.cxx
--- smixx_web/src/stateManager/smiobject.cxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/smiobject.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -55,6 +55,9 @@
    lin = 3;
 
    if ( _classFlag != 0 ) {
+       _associated = 0; // for objects belonging to a class, this is taken 
+                        // from the class and anything comming from the translator
+			// output is ignored
        _className = lines[3];
       lin = 4;
    }
@@ -497,11 +500,7 @@
             cout << " locked by  " << clientObject << "\n";
         }
 
-        char temp[MAXNAMESIZE];
-        clientObject.whatAreYou(temp,MAXNAMESIZE);
-        char objnm_temp[MAXRECL];
-        _objectName.whatAreYou(objnm_temp, MAXRECL);
-        ifHandler.objectLocked(objnm_temp,temp);
+        ifHandler.objectLocked(_objectName,clientObject);
         return;
    }
 //
@@ -533,7 +532,6 @@
 //
 //------------
    int flag,ist;
-   char newState[MAXNAMESIZE];
 
    if ( _associated == 0 ){             // Logical object
         _pCommHandler->publishBusy(this,actionstr.getString());
@@ -740,6 +738,17 @@
   bool SMIObject::associated() const {
      return _associated;
   }
+//-------------------------------------------------------------
+  bool SMIObject::hasAssociatedAttribute() const {
+      int numAt = _attributes.length();
+      if ( numAt <= 0 ) { return 0; }
+      
+      for ( int i=0; i < numAt; i++ ) {
+          if ( _attributes[i] == "ASSOCIATED" ) { return 1; }
+      }
+      
+      return 0;
+  }
 //************************************************************************
 Name SMIObject::externDomain () const {
 
@@ -760,15 +769,6 @@
   Name SMIObject::subobjectName(const int index) const {
      return _subobject[index];
   }
-//*****************************  subobjectName  ****************************
-
-void SMIObject::subobjectName ( int index, char* name ) {
-
-   _subobject[index].whatAreYou(name,MAXNAMESIZE);
-
-   return;
-
-}
 //-------------------------------------------------------------------------
 
 Name SMIObject::currentState() const {
@@ -821,7 +821,7 @@
     State* pState;
     pState = static_cast<State*>(_states.gimePointer(_currStateInx));
         int flag,ist;
-        char newState[MAXNAMESIZE];
+        Name newState;
 //
         flag = pState->execute(_currentActionString, newState);
 //           flag is either -1..action not found
@@ -836,7 +836,7 @@
 //             cout << " action " << _currentActionString 
 //                  << " terminated in state " << newState << endl; cout.flush();
 //           first find out which state it is
-             _currStateInx = stateInx(newState);
+             _currStateInx = stateInx(newState.getString());
 //             cout << " _currStateInx = " << _currStateInx << " \n";
              if ( _currStateInx == -1 ) {    
                 print_obj(_objectName);
@@ -850,7 +850,7 @@
 //             _pStateQ->out();
              { char objnm_temp[MAXRECL];
              _objectName.whatAreYou(objnm_temp, MAXRECL);
-             _pStateQ->add(objnm_temp,newState);}
+             _pStateQ->add(objnm_temp,newState.getString());}
 #ifdef DEBUG
               print_obj(_objectName);
               cout << " end state " << newState << " ->StateQ \n";
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/smiobject.hxx smixx/src/stateManager/smiobject.hxx
--- smixx_web/src/stateManager/smiobject.hxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/smiobject.hxx	2006-03-31 15:49:06.000000000 +0200
@@ -60,14 +60,15 @@
 
   bool associated() const;
 
+  bool hasAssociatedAttribute() const; //this should obviously give the same
+                                       // answer as associated() 
+
   Name externDomain() const;
 
   int name(char* obj_nm, int *numSubobj);	 //returns associated flag
                                                  //can probably be made obsolete
   Name subobjectName(const int index) const;
 
-  void subobjectName(int index, char* name);     //can be made obsolete?
-
   Name currentState() const;
 
   State* pCurrentState( const int subobjinx ) const ;
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/smiobjectset.hxx smixx/src/stateManager/smiobjectset.hxx
--- smixx_web/src/stateManager/smiobjectset.hxx	2005-08-09 17:57:46.000000000 +0200
+++ smixx/src/stateManager/smiobjectset.hxx	2007-03-19 10:24:16.000000000 +0100
@@ -26,7 +26,7 @@
 
 		SMIObjectSet(const SMIObjectSet& );
 		
-		SMIObjectSet& SMIObjectSet::operator=(const SMIObjectSet& );
+		SMIObjectSet& operator=(const SMIObjectSet& );
 
 		Name name() const;
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/state.cxx smixx/src/stateManager/state.cxx
--- smixx_web/src/stateManager/state.cxx	2005-08-09 17:57:48.000000000 +0200
+++ smixx/src/stateManager/state.cxx	2007-03-19 09:55:42.000000000 +0100
@@ -65,7 +65,7 @@
     }
 
 
-   char action_nm[MAXNAMESIZE];
+   Name action_nm;
 
    int no_aclines;
 
@@ -223,7 +223,7 @@
 
 //------------------------------- execute  (for Logical objects) ------------
 
-int State::execute( const Name& actionstr, char* pnewState) const {
+int State::execute( const Name& actionstr, Name& endState ) const {
 //
 //  cout << " state : " << _stateName << " to execute action |" 
 //                              << pname_act << "|\n \n";
@@ -239,10 +239,10 @@
 	pAction = static_cast<Action*>(_actions.gimePointer(i));
 
         if ( action == actionnm ) {
-            int temp = pAction->execute(pnewState,actionstr);
+            int temp = pAction->execute(endState,actionstr);
             if ( temp == 0 ) {  // This means that the last action instruction
 //                           is not terminate_action instruction
-               _stateName.whatAreYou(pnewState,256);
+               endState =_stateName;
                return 1;
             }
             return temp;
@@ -267,8 +267,6 @@
 
   if ( !actionExists(actionnm) ) { return -1; }  
 
-  char actionstr_out[256];
-
   Parms inpars;
   inpars.initFromParmString(actionstr);
 
@@ -303,9 +301,8 @@
   inpars.buildParmString(parmstr);
   temp = actionnm;
   temp += parmstr;
-  temp.whatAreYou(actionstr_out,256);    
 
-  pCommHandler->sendCommand(_objName.getString(),actionstr_out);
+  pCommHandler->sendCommand(_objName.getString(),temp.getString());
   return 1;
 
 }
@@ -403,14 +400,6 @@
 
 }
 
-
-void State::action ( const int index, char* action ) const {
-
-        _actions.gimeName(index).whatAreYou(action,MAXNAMESIZE);
-
-	return;
-
-}
 //----------------------------- actionString ----------------------------------
 //   action/par1/par2=555/par3
 //
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/state.hxx smixx/src/stateManager/state.hxx
--- smixx_web/src/stateManager/state.hxx	2005-08-09 17:57:48.000000000 +0200
+++ smixx/src/stateManager/state.hxx	2005-09-30 16:58:47.000000000 +0200
@@ -29,7 +29,7 @@
 
   void whatAreYou() const;
 //
-  int execute( const Name& actionstr,char* pnewState) const;
+  int execute( const Name& actionstr, Name& endState) const;
 //
   int execute_assoc
       ( const Name& actionstr, const CommHandler* const pCommHandler) const;
@@ -56,8 +56,6 @@
 
   void action( const int index, Action** pAction) const;
 
-  void action( const int index, char* action) const;
-
   void actionString( const int index, char* actionstr, const int maxsize) const;
 
   Name actionString( const int index ) const;
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/state_manager.cxx smixx/src/stateManager/state_manager.cxx
--- smixx_web/src/stateManager/state_manager.cxx	2005-08-09 17:57:48.000000000 +0200
+++ smixx/src/stateManager/state_manager.cxx	2006-03-31 15:59:30.000000000 +0200
@@ -92,14 +92,20 @@
 
 
 // ****************************
-/*
+/*  debug
    cout << "\n \n  The following objects are registered : \n \n";
 
   int numOfObjects;
   numOfObjects = allSMIObjects.numOfObjects();
 
   for (int io=0; io < numOfObjects; io++) {
-     cout << allSMIObjects.gimeName(io) << "\n";
+     SMIObject* ptnr = allSMIObjects.gimePointer(io);
+     bool isAssoc = ptnr->associated();
+     bool hasAssocAtt = ptnr->hasAssociatedAttribute();
+     cout << allSMIObjects.gimeName(io) << "  " << isAssoc << "  " 
+     << hasAssocAtt << endl;
+     if ( isAssoc != hasAssocAtt ) { cout << "********************************" <<
+     endl;}
   }
 */
 //************************************************************************
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/termins.cxx smixx/src/stateManager/termins.cxx
--- smixx_web/src/stateManager/termins.cxx	2004-11-11 14:40:56.000000000 +0100
+++ smixx/src/stateManager/termins.cxx	2005-09-28 18:41:09.000000000 +0200
@@ -28,8 +28,8 @@
 
    _pParentAction = pAction;
 
-   sscanf(lines[0],"%s",_endState);
-//   cout <<  " state : |" << _endState << "| \n";
+   _endState = lines[0];
+//   cout <<  " state : " << _endState << " \n";
 
    no_lines = 1;
    return;
@@ -45,7 +45,7 @@
 
 //-------------------------------  execute  -----------------------------------
 
-int TermIns::execute(char* pendState){
+int TermIns::execute( Name& endState ){
 
    if ( _pParentObject->name() == "&ALLOC" ) {
 
@@ -83,12 +83,12 @@
          if ( idPresent ) {
             valid.replace(doubleq,nullstr);   // get rid of the double quotes
             ptgState->changeName(valid);
-            valid.whatAreYou(pendState,256);
+            endState = valid;
          }
          else {
             valAmpersId.replace(doubleq,nullstr);   // get rid of the double quotes
             ptgState->changeName(valAmpersId);
-            valAmpersId.whatAreYou(pendState,256);
+            endState = valAmpersId;
          }
          valAmpersId.replace(doubleq,nullstr);   // get rid of the double quotes
          allocator = valAmpersId;
@@ -96,18 +96,18 @@
          pCommHandlerGl->domainAllocated(intConnId);
       }
       else {  // this must be RELEASE action
-         strcpy(pendState,_endState);
+         endState = _endState;
          allocator = "\0";
 
          pCommHandlerGl->domainDeallocated(intConnId);
       }
    }
    else {
-       strcpy(pendState,_endState);  
+       endState = _endState; 
    }
 
 #ifdef DEBUG
-cout   << "  terminate_action / state=" << pendState << "\n";
+cout   << "  terminate_action / state=" << endState << "\n";
 cout.flush();
 #endif
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/termins.hxx smixx/src/stateManager/termins.hxx
--- smixx_web/src/stateManager/termins.hxx	2001-05-16 09:13:28.000000000 +0200
+++ smixx/src/stateManager/termins.hxx	2005-09-28 18:41:09.000000000 +0200
@@ -10,18 +10,20 @@
 
 #include "parameters.hxx"
 #include "instruction.hxx"
+#include "name.hxx"
 class SMIObject;
 class State;
 class Action;
 
+
 class TermIns : public Instruction {
 public:
   TermIns( char lines[][MAXRECL], const int lev, 
            SMIObject* pObj, State* pState, Action* pAction, int& no_lines);
   void whatAreYou();
-  int execute(char *pstate);   // 0-normal,  1-terminated action, 2-suspended
+  int execute( Name& endState );   // 0-normal,  1-terminated action, 2-suspended
 private:
-  char _endState[MAXNAMESIZE];
+  Name _endState;
   int _level;
 
   SMIObject* _pParentObject;
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/todo.txt smixx/src/stateManager/todo.txt
--- smixx_web/src/stateManager/todo.txt	2001-07-13 16:43:04.000000000 +0200
+++ smixx/src/stateManager/todo.txt	2007-03-19 09:55:42.000000000 +0100
@@ -1,2 +1,17 @@
 13-Jul-2001  Combine Set_Name  and  NameList class (they are allmost
             identical) and keep NameList class
\ No newline at end of file
+	 
+19-May-2006 The dimension of the input record (MAXRECL) should be dynamized
+
+19-May-2006  initiator to be re-designed
+
+ 1-June-2006 extend &val_of concept in particular to 'if'. Also in addition to
+             &val_of,   $name should be used
+
+ 1-June-2006 Objects with variable states
+ 
+ 1-June-2006 State manager should always check for object existence before
+             blindly using 'null' pointer.
+	    
+ 1-June-2006 !check: Is there a limit on parameter values? In particular, can
+             DIM handle this?
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/version.hxx smixx/src/stateManager/version.hxx
--- smixx_web/src/stateManager/version.hxx	2005-08-09 17:57:48.000000000 +0200
+++ smixx/src/stateManager/version.hxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-#ifndef INCVERSION
-#define INCVERSION
-#define smixxVersion "v28"
-#define smixxDate "14-July-2005:17:07"
-#endif /* INCVERSION */
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/stateManager/version.hxx.in smixx/src/stateManager/version.hxx.in
--- smixx_web/src/stateManager/version.hxx.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/stateManager/version.hxx.in	2007-03-19 10:00:45.000000000 +0100
@@ -0,0 +1,5 @@
+#ifndef INCVERSION
+#define INCVERSION
+#define smixxVersion 	"@SMIXX_TAG@"
+#define smixxDate 	"@SMIXX_DATE@"
+#endif /* INCVERSION */
Binary files smixx_web/src/tclTkGUI/A.gif and smixx/src/tclTkGUI/A.gif differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/History smixx/src/tclTkGUI/History
--- smixx_web/src/tclTkGUI/History	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/History	2007-03-19 09:55:42.000000000 +0100
@@ -0,0 +1,135 @@
+ History File for generic SMI GUI using tcl/Tk
+---------------------------------------------------------------------------
+21-Mar-2006 (Boda Franek)
+ This is not even the first version. It is just a bunch of usefull code
+ which I 'hacked' during the last Christmas and that will serve as a good start.
+============================  tclTkGUI-v00 ====================================
+=== 31-March-2006:17:27 ==========  v30  =================
+=== 19-May-2006:20:34 ==========  v31  =================
+=== 21-May-2006:21:01 ==========  v31r1  =================
+19-Jan-2007 (Boda Franek)
+ This is the first usable version of the GUI
+============================  tclTkGUI-v01  ==================================
+
+ 25-Jan-2007
+ 
+ 1) objectParPanel_create.tcl ...
+ 	a) procedure 'objectParHeadingPanel_create' removed, as it creates just
+	   one label and the label creation was put directly into
+	   procedure 'objectParInfoPanel'
+	   
+	b) procedure 'objectParInfoPanel' now takes an extra argument 'title'
+	
+	c) new procedure 'objectParPanel_display' that displays the panel as
+	   a top level window.
+	   
+ 2) objectParPanel_create.tcl
+        procedure 'objectParPanel_create' and  'objectParPanel_display'
+	take extra argument 'title'
+	
+ 3) main.tcl
+     procedure paramPanel_display modified in such a way, that it is possible
+     to display parameter panel either as a part of object window, or as
+     a toplevel window.This is achieved by a simple switch. It is left so that
+     panels are displayed as toplevels.
+==============================  tclTkGUI-v02 ===================================
+ 26-Jan-2007 (Boda Franek)
+ 
+   - new file canvasObjects.tcl ... suite of procedures for managing objects
+        on canvas
+	
+   - main.tcl  & and  actionParPanel_display.tcl ... quick hack to display
+       objects on canvas rather than as independent windows
+       
+ it appears reasonably functional --> tag
+=============================  tclTkGUI-v03  ===================================
+ 31-Jan-2007 (Boda Franek)
+ 
+    Added some baloon help. Files affected : 
+           canvasObjects.tcl, main.tcl, mainPanel.tcl
+	   
+================================================================================
+ 5-Feb-2007 (Boda Franek)
+ 
+   - new files  A.gif, P.gif and X.gif  containing small letter A,P and X to be
+      used on some object buttons.
+      
+   - topbar.tcl ... taking font from options
+   
+   - parametersGroups.tcl ... 
+   	a) making sure, that entry widget turns white once it receives input
+	
+	b) lining up parameters on the display on the right
+	
+   - main.tcl ...
+   	a) adding some options
+	b) creating images from the new gif files..see above
+	
+   - canvasObjects.tcl ... 'pasting' the new images on 'action', 'parameters' 
+        and remove buttons
+	
+   - mainPanel.tcl ... allowing the GUI Logo to adjust itself
+=============================  tclTkGUI-v04  ===================================
+=============================  tclTkGUI-v05  ===================================
+ 5-Feb-2007 (Boda Franek)
+ 
+            State Colors (file main.tcl & canvasObjects.tcl)
+	    -----------
+  - These are defined in the array stateColor('object name')
+  
+  - some defaults are defined  in main.tcl
+
+  - state DEAD and &DEAD are special cases 
+=============================  tclTkGUI-v06  ===================================  
+13-Feb-2007 (Boda Franek)
+
+    New, integrated way to browse for objects which also allows changing their
+    --------------------------------------------------------------------------
+    order.
+    -----
+    
+    - new file objectSelectionPanel.tcl containing the necessary software
+
+    - new file Scrolled_Listbox.tcl containing generic code for scrollable lists
+      picked up from B.B.Welch book
+      
+    - the above uses the 3 new gif files for its buttons : 
+         downArrow.gif, upArrow.gif and rightArrow.gif  
+    
+    - main.tcl  sourcing the new software
+    
+    - mainPanel.tcl new procedure 'browseForObjects' using the new software
+    
+    - canvasObjects.tcl fixed a minor bug
+=============================  tclTkGUI-v07  ===================================
+    - mainPanel.tcl ... obsolete procedures 'findAndAddObjects' and 'getDomains'
+                       removed
+		       
+    - main.tcl ... adjusting options
+    
+    
+    - objectSelectionPanel.tcl  ...  warning messages made childern of the 
+              corresponding widget. This preserves correct stacking order
+=============================  tclTkGUI-v08  ===================================	      
+   16-Feb-2007 (Boda Franek)
+   
+    - Allowing to save and retrieve object configuration
+      --------------------------------------------------
+        necessary changes to mainPanel.tcl, topbar.tcl
+	
+    - objectSelectionPanel.tcl ... objects deleted on click of 3rd mouse button
+            rather than 2nd
+	    
+    - parameterGroups.tcl  ... no value represented by zero length string
+ =============================  tclTkGUI-v09  ===================================
+   18-Feb-2007  (Boda Franek)
+   
+   - listBox_create.tcl  changed format from DOS to Unix
+   
+   - canvasObjects.tcl ... bug fixed in  'proc updateObjectOnCanvas'
+            before a state of an object is updated, check is made wheather
+	    the object is displayed
+	    
+   - objectSelectionPanel.tcl ... option '-activestyle' taken out, because older
+            versions of Tcl/Tk do not support it
+	    
Binary files smixx_web/src/tclTkGUI/P.gif and smixx/src/tclTkGUI/P.gif differ
Binary files smixx_web/src/tclTkGUI/SMIXXLogo.gif and smixx/src/tclTkGUI/SMIXXLogo.gif differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/Scrolled_Listbox.tcl smixx/src/tclTkGUI/Scrolled_Listbox.tcl
--- smixx_web/src/tclTkGUI/Scrolled_Listbox.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/Scrolled_Listbox.tcl	2007-02-13 11:11:20.000000000 +0100
@@ -0,0 +1,35 @@
+# 
+# Example 30-2
+# Scroll_Set manages optional scrollbars.
+#
+
+proc Scroll_Set {scrollbar geoCmd offset size} {
+	if {$offset != 0.0 || $size != 1.0} {
+		eval $geoCmd					;# Make sure it is visible
+	}
+	$scrollbar set $offset $size
+}
+
+#======================================================================
+#
+# Example 30-3
+# Listbox with optional scrollbars.
+#
+
+proc Scrolled_Listbox { f args } {
+	frame $f
+	listbox $f.list \
+		-xscrollcommand [list Scroll_Set $f.xscroll \
+			[list grid $f.xscroll -row 1 -column 0 -sticky we]] \
+		-yscrollcommand [list Scroll_Set $f.yscroll \
+			[list grid $f.yscroll -row 0 -column 1 -sticky ns]]
+	eval {$f.list configure} $args
+	scrollbar $f.xscroll -orient horizontal \
+		-command [list $f.list xview]
+	scrollbar $f.yscroll -orient vertical \
+		-command [list $f.list yview]
+	grid $f.list -sticky news
+	grid rowconfigure $f 0 -weight 1
+	grid columnconfigure $f 0 -weight 1
+	return $f.list
+}
Binary files smixx_web/src/tclTkGUI/X.gif and smixx/src/tclTkGUI/X.gif differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/actionParPanel_display.tcl smixx/src/tclTkGUI/actionParPanel_display.tcl
--- smixx_web/src/tclTkGUI/actionParPanel_display.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/actionParPanel_display.tcl	2007-03-19 09:55:42.000000000 +0100
@@ -0,0 +1,153 @@
+#====================================================================
+#
+#                           Boda Franek    Dec 2005
+# Copyright Information:
+#       Copyright (C) 2005 CCLRC. All Rights Reserved
+#
+#  $Id: actionParPanel_display.tcl,v 1.10 2007/01/26 14:34:44 franek Exp $
+#====================================================================
+#===============================================================================
+proc actionParPanel_display {object action parameters} {
+# The panel is modal and has 3 sections :
+#  1 - Heading
+#  2 - parameters
+#  3 - controls  OK and Cancel buttons
+#===============================================================================
+	global objectId
+	global actionParPanelid actionParPanelidAnswer
+	global actionParPanelAction actionParPanelObject
+    
+	if { [info exists actionParPanelid] } {
+		bell
+		wm deiconify $actionParPanelid
+		raise $actionParPanelid
+		update idletasks
+		return
+	}
+    
+	set actionParPanelAction $action
+	set actionParPanelObject $object
+
+# create the Panel 
+	set actionParPanelid [dialog_create "Action Parameters"]
+    
+# get the window path for the information part of the dialog   
+	set info [dialog_info $actionParPanelid]
+
+# position it in the right place relative to the parent window
+#	set parentWin $objectId($object)
+        set parentWin .
+	set parentPosX [winfo rootx $parentWin]
+	set parentPosY [winfo rooty $parentWin]
+	
+	set x [expr $parentPosX+20]
+	set y [expr $parentPosY+20]
+    
+    puts stdout "Placing $actionParPanelid  at x $x  y $y"
+	wm geometry $actionParPanelid "+$x+$y"  
+	
+	set infoOnlyId [actionParInfoPanel $info.settings $object $action $parameters]
+	pack $infoOnlyId
+
+    set cntls [dialog_controls $actionParPanelid]
+    
+	button $cntls.ok -text ok -command { set actionParPanelidAnswer 1}
+	pack $cntls.ok -side left -expand yes
+
+    button $cntls.cancel -text Cancel -command { set actionParPanelidAnswer 0}
+    pack $cntls.cancel -side left -expand yes
+
+    focus $cntls.ok
+
+    wm protocol $actionParPanelid WM_DELETE_WINDOW "$cntls.cancel invoke"
+
+	dialog_wait $actionParPanelid actionParPanelidAnswer
+	
+	if { $actionParPanelidAnswer == "1" } {
+		actionParPanelOK
+	}
+	actionParPanel_destroy
+
+    return 
+}
+#===========================================================================
+proc actionParPanel_destroy {} {
+    global actionParPanelid
+
+    destroy $actionParPanelid
+    unset actionParPanelid
+
+    ParameterGroups::group_delete 1
+    return
+}
+#===========================================================================
+proc actionParHeadingPanel_create {win object action} {
+
+	frame $win        
+        	label $win.title -text "object: $object  action: $action" \
+			-relief flat
+        	pack $win.title
+	return $win
+}
+#===========================================================================
+proc actionParOnlyPanel_create {win parameters} {
+
+	frame $win
+	        actionParameterGroup_setup $parameters
+
+        	ParameterGroups::panel_create $win.parameters  1
+        	pack $win.parameters
+	return $win
+}
+#===========================================================================
+proc actionParInfoPanel  {win object action parameters}	{
+	
+	frame $win
+		set head [actionParHeadingPanel_create $win.head $object $action]
+		set parOnly [actionParOnlyPanel_create $win.par $parameters]
+		
+		pack $head
+	        
+		frame $win.sep -height 2 -borderwidth 1 -relief sunken
+        	pack $win.sep -fill x -pady 4
+		
+		pack $parOnly
+	return $win
+}		
+#==============================================================================
+proc actionParPanelOK {} {
+    global actionParPanelid actionParPanelidAnswer
+    global actionParPanelObject actionParPanelAction
+
+    if { [ParameterGroups::allValExists 1] == "0" } {
+        tk_messageBox -message "All parameters have to have values assigned"
+        return
+    }
+
+    set parameters [ ParameterGroups::getGroupParValues 1]
+
+    dispatchAction $actionParPanelObject $actionParPanelAction $parameters
+
+    return
+
+}
+#===================================================================================
+
+#======================================================================
+proc actionParameterGroup_setup {parameters} {
+
+    foreach parm $parameters {	
+	set name [lindex $parm 0]
+	set type [lindex $parm 1]
+	set def [lindex $parm 2]
+	if { $def == "" } {
+		set def &noval
+	}	
+        
+#tk_messageBox -message " $name $def $type "
+        set id [string tolower $name]    
+
+         ParameterGroups::parameter_create 1 $id $name $type -1
+         ParameterGroups::parameter_set 1 $id $def
+    }
+}   
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/assemble smixx/src/tclTkGUI/assemble
--- smixx_web/src/tclTkGUI/assemble	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/assemble	2006-12-06 11:42:14.000000000 +0100
@@ -0,0 +1,16 @@
+#! /bin/tcsh -f
+# takes as input a file containing source statements and assembles
+# all the sourced code on stdout
+#
+set FILE = ${1}
+set GUIdir = ${2}
+set efftcldir = ${3}
+
+foreach item (`cat $FILE`)
+	if ( $item == "source" ) then
+		continue
+	endif
+	eval cat $item
+end
+
+exit
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/canvasObjects.tcl smixx/src/tclTkGUI/canvasObjects.tcl
--- smixx_web/src/tclTkGUI/canvasObjects.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/canvasObjects.tcl	2007-02-18 09:23:22.000000000 +0100
@@ -0,0 +1,166 @@
+#=========================================================================
+proc getObjectId {object} {
+	set objId [string tolower $object]
+
+	set inx [string first :: $objId]
+	set inx1 [expr $inx+1]
+	set objId [string replace $objId $inx $inx1 /]
+
+
+	set inx [string first :: $objId]
+	if { $inx == "-1" } {
+		return $objId
+	}
+	set inx1 [expr $inx+1]
+	set objId [string replace $objId $inx $inx1 /]
+	return $objId
+}
+#=========================================================================
+proc updateObjectOnCanvas {win object state} {
+	global stateColor objectsOnCanvas
+
+	if { [ lsearch $objectsOnCanvas $object ] == "-1" } {
+	# the object is not displayed
+		return
+	}
+	
+        set body $win.canvas.frame       
+
+	set obId [getObjectId $object]
+        $body.state$obId configure -text $state
+	
+	if { [info exists stateColor($state)] } {
+		$body.state$obId configure -bg $stateColor($state)
+	} else {
+		$body.state$obId configure -bg white
+	}
+	
+	if { $state == "DEAD" || $state == "&DEAD" } {
+		$body.state$obId configure -bg black -fg white
+	}	
+	return
+} 
+#=========================================================================
+proc removeObjectFromCanvas {win object} {
+	global objectsOnCanvas
+	
+	set canvas $win.canvas
+        set body $win.canvas.frame
+	set obId [getObjectId $object]
+
+	destroy $body.menubut$obId $body.domain$obId $body.object$obId \
+		$body.state$obId $body.actions$obId $body.parameters$obId
+
+	set inx [lsearch $objectsOnCanvas $object]
+	set objectsOnCanvas [lreplace $objectsOnCanvas $inx $inx]
+        
+	update
+	set botpos [winfo height $body]
+	set rightpos [winfo width $body]
+	$canvas configure -scrollregion "0 0 $rightpos $botpos"        
+
+	return
+}	
+#=========================================================================
+proc addObjectToCanvas {win object} {
+	global imA imP imX
+	global objectsOnCanvas
+
+	if { [info exists objectsOnCanvas] } {
+		set inx [lsearch $objectsOnCanvas $object]
+		if { $inx != "-1" } {
+		# object is already there
+			bell
+			return
+		}
+	}
+	lappend objectsOnCanvas $object
+
+	set inx [string first :: $object]
+	set domain [string range $object 0 [expr $inx-1] ]
+	set objectNm [string range $object [expr $inx+2] end ]
+	
+	set canvas $win.canvas
+        set body $win.canvas.frame
+        
+	set lineNo [lrange [grid size $body] 1 1]
+	set obId [getObjectId $object]
+	
+	if { [lsearch [font names] hel1font] == -1 } {	
+		font create hel1font -family helvetica -size 2
+	}
+
+	menubutton $body.menubut$obId -image $imX  \
+                   -menu $body.menubut$obId.m -font hel1font -background white
+	menu $body.menubut$obId.m
+	$body.menubut$obId.m add command \
+		 -label "Remove Object" -command [list removeObjectFromCanvas $win $object]
+	grid $body.menubut$obId -row $lineNo -padx 5 -pady 0 -column 5
+
+        label $body.domain$obId -text $domain \
+                                -background white -relief flat -font helbold12font
+        grid $body.domain$obId -row $lineNo -padx 10 -pady  0 -column 2 -sticky w
+        
+        label $body.object$obId -text $objectNm  \
+		-background white -relief flat -font helbold12font
+        grid $body.object$obId -row $lineNo -padx 10 -column 3 -sticky w
+        
+        label $body.state$obId -text state \
+		-background white -relief groove -font helbold12font
+        grid $body.state$obId -row $lineNo -padx 10 -column 4 -sticky w
+
+
+        menubutton $body.actions$obId -image $imA  \
+	     -menu $body.actions$obId.menu \
+	     -background white -font hel1font
+	menu $body.actions$obId.menu -postcommand [list actionMenu_update $body.actions$obId.menu $object]
+        grid  $body.actions$obId -row $lineNo -padx 2 -column 0
+        
+        button $body.parameters$obId -image $imP \
+	     -command [list paramPanel_display $object] \
+	     -background white -font hel1font
+        grid  $body.parameters$obId -row $lineNo -padx 1 -column 1
+
+	balloonhelp_for $body.actions$obId "click to display available actions"
+	balloonhelp_for $body.parameters$obId "click to display object parameters"
+	balloonhelp_for $body.menubut$obId "Remove object from display"
+        
+	update
+	set botpos [winfo height $body]
+	set rightpos [winfo width $body]
+	$canvas configure -scrollregion "0 0 $rightpos $botpos"        
+        return
+}
+#=============================================================================
+proc objectPanel_create {win} {
+	frame $win
+
+		set height 200
+		set width  400
+		set borderwidth 2
+
+		set hscroll $win.hscroll
+		set vscroll $win.vscroll
+		set canvas $win.canvas
+
+		scrollbar $hscroll -orient horiz -command "$canvas xview"
+		scrollbar $vscroll               -command "$canvas yview"
+		canvas $canvas -relief sunken -borderwidth $borderwidth \
+                              -width $width -height $height \
+			      -background white \
+                              -xscrollcommand "$hscroll set" \
+                              -yscrollcommand "$vscroll set"
+        	# Ensure that window resizings retain scroll bars.
+		pack $hscroll -side bottom -fill x 
+		pack $vscroll -side right  -fill y
+		pack $canvas -fill both -expand yes
+
+		frame $canvas.frame
+       			$canvas create window 0 0 \
+			       -window $canvas.frame -anchor nw 
+			       
+		$canvas.frame configure -background white
+
+	set objectsOnCanvas {}
+	return $win
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/convertHEXtoEASCII.tcl smixx/src/tclTkGUI/convertHEXtoEASCII.tcl
--- smixx_web/src/tclTkGUI/convertHEXtoEASCII.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/convertHEXtoEASCII.tcl	2006-11-19 17:26:23.000000000 +0100
@@ -0,0 +1,133 @@
+#==============================================================================
+#
+#                                  Boda Franek    November 2006
+# Copyright Information:
+#      Copyright (C) 2005 CCLRC.   All Rights Reserved
+#
+#    $Id: convertHEXtoEASCII.tcl,v 1.2 2006/11/19 16:26:23 franek Exp $
+#==============================================================================
+proc convertHEXtoEASCII {instring} {
+#=====================================================================
+#   every pair of characters in the 'instring' (starting with character 0
+#   and chacter 1 will be interpreted as a HEX number representing
+#    an ASCII character. This will be converted to the correspondig ASCII
+#   character if printable. If non-printable, \x will be pre-pended
+#   to the pair. An exception is '\'. This will be converted to '\\'
+#=====================================================================
+	set strlen [string length $instring]
+	set outstring ""
+
+	for {set i 0} {$i<$strlen} {incr i 2} {
+		set i1 [expr $i+1]
+		if { $i1 >= $strlen } {
+			bgerror "the input string has odd number of characters"
+			return ""
+		}
+		set a [string range $instring $i $i1]
+#		puts stdout " $a"
+		set ahex "0x$a"
+		
+		if { [catch {format "%c" $ahex} b] } {
+			bgerror $b
+			return ""
+		}
+
+		if { $b == "\\" } {
+			append outstring "\\\\"
+			continue
+		} 
+				
+		if { $b == " " } {
+			append outstring $b
+			continue
+		}
+				
+		if { [string is graph $b] } {
+			append outstring $b
+			continue
+		}
+		
+		if { $b == "\a" } {
+			append outstring "\\" a
+		} elseif { $b == "\b" } {
+			append outstring "\\" b
+		} elseif { $b == "\t" } {
+			append outstring "\\" t
+		} elseif { $b == "\n" } {
+			append outstring "\\" n
+		} elseif { $b == "\v" } {
+			append outstring "\\" v
+		} elseif { $b == "\f" } {
+			append outstring "\\" f
+		} elseif { $b == "\r" } {
+			append outstring "\\" r
+		} else {
+			append outstring "\\x"
+			append outstring $a
+		}
+	}
+	
+	return $outstring
+}
+#===========================================================================
+proc convertEASCIItoHEX {instring} {
+#==========================================================================
+#  Input string should consist only of printable characters or
+# escape sequences. An escape sequence begins with \ and is followed either
+# by another \ or by x and 2 hex digits representing character.
+#==========================================================================
+	set strlen [string length $instring]
+	set outstring ""
+	
+	for {set i 0} {$i<$strlen} {incr i} {
+		set ch [string range $instring $i $i]
+		if { $ch == "\\" } {
+			set specials "\\abtnvfr"
+			set i1 [expr $i+1]	
+			set ch1 [string range $instring $i1 $i1]
+			if { [string first $ch1 $specials] >= 0 } {
+				if { $ch1 == "\\" } {
+					binary scan "\\" "H2" bout					
+				} elseif { $ch1 == "a" } {
+					binary scan "\a" "H2" bout
+				} elseif { $ch1 == "b" } {
+					binary scan "\b" "H2" bout
+				} elseif { $ch1 == "t" } {
+					binary scan "\t" "H2" bout
+				} elseif { $ch1 == "n" } {
+					binary scan "\n" "H2" bout
+				} elseif { $ch1 == "v" } {
+					binary scan "\v" "H2" bout
+				} elseif { $ch1 == "f" } {
+					binary scan "\f" "H2" bout
+				} elseif { $ch1 == "r" } {
+					binary scan "\r" "H2" bout
+				}
+				append outstring $bout
+				incr i 
+				continue
+			} 
+
+			if { $ch1 == "x" || $ch1 == "X" } {
+				set i2 [expr $i1+1]
+				set i3 [expr $i2+1]
+				if { $i3 >= $strlen } {
+					bgerror " Illegal escape sequence\n"
+					return ""
+				}
+				append outstring [string range $instring $i2 $i3]
+				incr i 3
+				continue
+			} else {
+				bgerror " Illegal escape sequence\n"
+				return ""
+			}
+		} else {
+			binary scan $ch "H2" bout
+			append outstring $bout
+		}
+				
+	}
+	
+	return $outstring
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/dnsinfo.tcl smixx/src/tclTkGUI/dnsinfo.tcl
--- smixx_web/src/tclTkGUI/dnsinfo.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/dnsinfo.tcl	2007-01-19 15:03:14.000000000 +0100
@@ -0,0 +1,21 @@
+#==============================================================================
+#
+#                                  Boda Franek    December 2006
+# Copyright Information:
+#      Copyright (C) 2005-2006 CCLRC.   All Rights Reserved
+#
+#    $Id: dnsinfo.tcl,v 1.4 2007/01/19 14:03:14 franek Exp $
+#==============================================================================
+proc dnsinfo_create {win} {
+	global hel10font
+	
+	frame $win -relief sunken -borderwidth 1 -background gray70
+		label $win.l -text "Connecting to DNS"
+		pack $win.l -fill x
+		
+	return $win
+}
+proc dnsinfo_update {win mess} {
+	$win.l configure -text $mess
+	return
+}
Binary files smixx_web/src/tclTkGUI/downArrow.gif and smixx/src/tclTkGUI/downArrow.gif differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/extract-section smixx/src/tclTkGUI/extract-section
--- smixx_web/src/tclTkGUI/extract-section	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/extract-section	2006-12-06 11:42:14.000000000 +0100
@@ -0,0 +1,41 @@
+#! /bin/tcsh -f
+
+set FILE = ${1}
+set firstLine = ${2}
+set lastLine = ${3}
+
+#echo $FILE
+#echo $firstLine
+#echo $lastLine
+
+set nl = `wc -l $FILE | awk '{print $1}'`
+if ( $lastLine == "end" ) then
+	set lastLine = $nl
+endif
+
+if ( $nl >= $lastLine ) then
+	@ numLinesToExtract = ($lastLine - $firstLine) + 1
+else
+	@ numLinesToExtract = ($nl - $firstLine) + 1
+endif
+
+#echo $nl
+
+#echo $numLinesToExtract
+
+#Num of lines starting from firstline to the end nl-firstline+1
+@ numLinesFromFirst = ($nl - $firstLine) + 1 
+
+#echo $numLinesFromFirst
+
+#extract the lines starting with the first to the end of file
+
+set TMP = /tmp/FILE$$
+
+tail -n $numLinesFromFirst $FILE > $TMP
+
+# now extract the rest
+head -n $numLinesToExtract $TMP
+
+rm -f $TMP
+exit
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/listBox_create.tcl smixx/src/tclTkGUI/listBox_create.tcl
--- smixx_web/src/tclTkGUI/listBox_create.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/listBox_create.tcl	2007-02-18 09:07:55.000000000 +0100
@@ -0,0 +1,30 @@
+#==============================================================================
+#
+#                                  Boda Franek    December 2006
+# Copyright Information:
+#      Copyright (C) 2005-2006 CCLRC.   All Rights Reserved
+#
+#    $Id: listBox_create.tcl,v 1.5 2007/02/18 08:07:55 franek Exp $
+#==============================================================================
+#===================================================================================
+proc listBox_create {win title} {
+     
+	frame $win -borderwidth 1
+		set labelId [label $win.label -text $title]
+		pack $labelId
+		
+		set listBoxId $win.listb
+		set scrollId $win.scroll
+		
+		listbox $listBoxId -yscroll "$scrollId set" -setgrid 1 -height 5 -width 20 -bg white
+		scrollbar $scrollId -command "$listBoxId yview"
+
+		pack $scrollId -side right -fill y -pady 5 
+
+		pack $listBoxId -side left -fill both -expand 1 -pady 5
+	return $win
+}
+#=============================================================================
+proc listBox_input {win} {
+	return "$win.listb"
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/main.tcl.in smixx/src/tclTkGUI/main.tcl.in
--- smixx_web/src/tclTkGUI/main.tcl.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/main.tcl.in	2007-03-19 10:01:48.000000000 +0100
@@ -0,0 +1,165 @@
+#! /usr/bin/wish -f
+#==============================================================================
+# Generic SMI GUI
+#
+#                                  Boda Franek    December 2005
+# Copyright Information:
+#      Copyright (C) 2005 CCLRC.   All Rights Reserved
+#
+#    $Id: main.tcl,v 1.1 2006/03/21 11:27:03 franek Exp $
+#==============================================================================
+global objects
+set hel10font [font create hel10font -family helvetica -size 10]
+set helbold10font [font create helbold10font -family helvetica -size 10 -weight bold]
+
+set hel12font [font create hel12font -family helvetica -size 12]
+set helbold12font [font create helbold12font -family helvetica -size 12 -weight bold]
+
+option add *Label.font $hel12font
+option add *Label.borderwidth 2
+option add *Label.relief sunken
+#==============================================================================
+proc create_objectWidg { win object widthd widtho } {
+    global objectId
+    frame $win
+        puts stdout "Registering $object"
+        set objectId($object) $win
+	set domobj [split $object :]
+	set domain [lindex $domobj 0]
+	set name [lindex $domobj 2]
+	label $win.domain -width $widthd -text $domain
+        label $win.name -width $widtho -text $name
+        label $win.state -width 20 -text "dummy"
+        button $win.param -text "Parameters" -width 10
+        menubutton $win.act -text "Actions" -width 7 -menu $win.act.menu
+        menu $win.act.menu -postcommand "actionMenu_update $win.act.menu $object"
+    
+        pack $win.domain $win.name $win.state $win.act $win.param -side left -padx 2
+	
+    return $win
+}
+#========================================================================================
+proc actionMenu_update {win object} {
+    set actions [getObjectActions $object]
+
+    $win delete 0 last
+
+    $win add command -label "$object - actions"
+    $win add separator
+    foreach action $actions {
+        $win add command -label $action -command "actionCommand $object $action" 
+    }
+    return
+}
+#=======================================================================================
+proc actionCommand {object action} {
+
+#tk_messageBox -message "object $object  action $action"
+    set parameters [getActionParameters $object $action]
+tk_messageBox -message $parameters
+    return
+}
+#=======================================================================================
+proc update_objectWidg { object } {
+    global objectId
+    
+    set win $objectId($object)
+    $win.state configure -text [getState $object]
+    return
+}
+#============================================================================    
+proc userUpdate { type object } {
+    global objectId
+    if {![info exists objectId($object)]} {
+        puts stdout "Object <$object> is not registered"
+	return
+    }
+    puts stdout "$type $object"
+    puts stdout [getState $object]
+    update_objectWidg $object
+    return
+}
+#=============================================================================
+proc getObjects { } {
+    global platform testRun
+    global argc argv env
+    global objects maxDomain maxObjName
+    
+#    puts stdout " $argc    $argv"
+
+    
+    if { $argc >= 1 } {
+        set inObjectFile [lindex $argv 0]
+	puts stdout $inObjectFile
+    }
+    
+    if { $argc == 0 && $platform == "windows" && $testRun == 1} {
+        set inObjectFile $env(HOME)/Desktop/objectList.txt
+    }
+#    lappend objects BODA::OBJECT
+#    lappend objects BABAR::RUN_CONTROL
+#    set maxDomain 7
+#    set maxObjName 18
+
+    set inObjectFileId [open $inObjectFile]
+ 
+    set maxDomain 0
+    set maxObjName 0
+       
+    while { [gets $inObjectFileId objName] > -1 } {
+        puts stdout $objName
+        lappend objects $objName
+	set domobj [split $objName :]
+	set domain [lindex $domobj 0]
+	set name [lindex $domobj 2]
+	set lendomain [string length $domain]
+	set lenname [string length $name]
+	if { $lendomain > $maxDomain } {
+	    set maxDomain $lendomain
+	}
+	if { $lenname > $maxObjName } {
+	    set maxObjName $lenname
+	}
+    }
+    incr maxDomain 3
+    incr maxObjName 3
+    return
+}
+#=============================================================================
+proc createObjectWidg {} {
+    global objects maxDomain maxObjName
+    
+    set num 0
+    foreach object $objects {
+        incr num
+        create_objectWidg .object$num $object $maxDomain $maxObjName
+	registerObject $object
+	pack .object$num
+    }
+    return
+}
+#==========================================================================    
+global smitcldir 
+set prefix "@prefix@"
+set smitcldir "@datadir@/@PACKAGE@"
+if { [info exists env(SMIDIR)] } {
+    set smitcldir $env(SMIDIR)/src/tclTkGUI/
+}
+source $smitcldir/tcl-smi.tcl
+
+global testRun
+global platform
+
+set testRun 1
+
+set platform $tcl_platform(platform)
+if { $platform != "windows" && $platform != "unix" } {
+    tk_messageBox -message "Unsupported Platform $platform"
+    exit
+}
+
+getObjects
+createObjectWidg
+
+startMonitoring
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/mainPanel.tcl smixx/src/tclTkGUI/mainPanel.tcl
--- smixx_web/src/tclTkGUI/mainPanel.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/mainPanel.tcl	2007-02-16 11:48:01.000000000 +0100
@@ -0,0 +1,93 @@
+#==============================================================================
+# Generic SMI GUI
+#
+#                                  Boda Franek    December 2006
+# Copyright Information:
+#      Copyright (C) 2005 - 2006 CCLRC.   All Rights Reserved
+#
+#    $Id: mainPanel.tcl,v 1.13 2007/02/16 10:48:01 franek Exp $
+#==============================================================================
+proc mainPanel_create {win} {
+	
+	frame $win
+		set titId [title_create $win.tit]
+		pack $titId
+		
+		set buttonsId [mainPanelButtons_create $win.buts]
+		
+		frame $win.sep -height 2 -borderwidth 1 -relief sunken
+		pack $win.sep -fill x -pady 4
+
+		label $win.butslab -text "Object Selection" -relief flat -pady 4
+		pack $win.butslab		
+		pack $buttonsId 
+	return $win
+}
+#============================================================================
+proc title_create {win} {
+	global GUIdir
+	global hel32font
+
+	frame $win
+		set logoGif $GUIdir/SMIXXLogo.gif
+		set im [image create photo -file $logoGif]
+		label $win.pic -image $im -relief flat
+		label $win.gui -text "Generic GUI" -font hel32font  -padx 20 -relief flat
+		pack $win.pic $win.gui -side left
+	return $win
+}
+#=========================================================================================
+proc mainPanelButtons_create {win} {
+	
+	frame $win	
+		
+		set labentry $win.labentry
+		frame $labentry
+			label $labentry.l -text "Enter object manually:" -relief flat
+			entry $labentry.e -textvariable entObject -bg white
+			pack $labentry.l $labentry.e -side top
+			bind $labentry.e <Return> {addObject $entObject}
+			bind $labentry.e <FocusIn> "$labentry.e configure -bg azure2"
+			bind $labentry.e <FocusOut> "$labentry.e configure -bg white"
+
+		button $win.addObjects -text "Browse" -command browseForObjects
+		pack $labentry -side left -padx 20
+		pack $win.addObjects -side left -padx 20
+		
+		button $win.fromFile -text "From File" -command retrieveConfiguration
+		pack $win.fromFile -side left -padx 20
+	return $win
+}
+#===========================================================================================
+proc retrieveConfiguration {} {
+	
+	set filename [tk_getOpenFile -title "Objects from Configuration File"]
+	puts stdout $filename
+	if { $filename == "" } {
+		return
+	}
+	if [catch {open $filename r} chanId] {
+		tk_messageBox -message "cannot open $filename : $chanId"
+		return
+	}
+	
+	while { [ gets $chanId objName ] >= 0} {
+		addObject $objName	
+	}
+	
+	close $chanId
+	return
+}
+#===========================================================================================
+proc browseForObjects {} {
+	set selection [ objectSelectionPanel_show ]
+	
+	if { $selection != "" } { 
+		foreach obj $selection {
+			addObject $obj
+		}
+	}
+
+	return
+}
+	
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/makeExecutable smixx/src/tclTkGUI/makeExecutable
--- smixx_web/src/tclTkGUI/makeExecutable	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/makeExecutable	2007-02-16 11:45:33.000000000 +0100
@@ -0,0 +1,47 @@
+#! /bin/tcsh -f
+
+# It will take the main.tcl and replace the source statements by
+# the actual code
+
+
+set GUIdir = $SMIDIR/src/tclTkGUI
+set efftcldir = $SMIDIR/src/utilities/efftcl
+
+set MAIN = $GUIdir/main.tcl
+set PART1 = /tmp/PART1$$
+set PART2 = /tmp/PART2$$
+set PART3 = /tmp/PART3$$
+
+set SOURCEINS = /tmp/SOURCEINS$$
+
+set FINALGUI = /tmp/smiGUI.tcl$$
+
+set first = `grep -n sourced-files-beg $MAIN| sed 's/:/ /' |awk '{print $1}'`
+set last = `grep -n sourced-files-end $MAIN| sed 's/:/ /' |awk '{print $1}'`
+
+set first1 = $first
+set last1 = $last
+
+@ first1++
+@ last1--
+
+#echo $first
+#echo $last
+
+$GUIdir/extract-section $MAIN 1 $first > $PART1
+$GUIdir/extract-section $MAIN $first1 $last1 > $SOURCEINS
+$GUIdir/extract-section $MAIN $last end > $PART3
+
+
+$GUIdir/assemble $SOURCEINS $GUIdir $efftcldir > $PART2
+
+cat $PART1 > $FINALGUI
+cat $PART2 >> $FINALGUI
+cat $PART3 >> $FINALGUI
+
+chmod a+x $FINALGUI
+cp $FINALGUI ${SMIDIR}/${ODIR}/smiGUI.tcl
+cp $GUIdir/*.gif  ${SMIDIR}/${ODIR}/.
+
+exit
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/objectParPanel_create.tcl smixx/src/tclTkGUI/objectParPanel_create.tcl
--- smixx_web/src/tclTkGUI/objectParPanel_create.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/objectParPanel_create.tcl	2007-01-25 12:57:42.000000000 +0100
@@ -0,0 +1,134 @@
+#====================================================================
+#
+#                           Boda Franek    Nov 2006
+# Copyright Information:
+#       Copyright (C) 2005 CCLRC. All Rights Reserved
+#
+#  $Id: objectParPanel_create.tcl,v 1.11 2007/01/25 11:57:42 franek Exp $
+#====================================================================
+#===============================================================================
+proc objectParPanel_create {win parameters title} {
+# The panel has 3 sections :
+#  1 - Heading
+#  2 - parameters
+#  3 - controls  OK and Cancel buttons
+#===============================================================================
+	set parGroupId $win
+
+	frame $win    
+		set info [objectParInfoPanel $win.info $parGroupId $parameters $title]
+		pack $info
+
+		set cntls $win.dismiss
+		button $cntls -text Dismiss -command "objectParPanel_destroy $win"
+
+		pack $cntls -side left -expand yes
+
+	return $win 
+}
+#===========================================================================
+proc objectParPanel_display {win parameters title} {
+
+	if { [winfo exists $win] } {
+		bell
+		wm deiconify $win
+		raise $win
+		update idletasks
+		return
+	}
+	
+	set parGroupId $win	
+	toplevel $win
+		set info [objectParInfoPanel $win.info $parGroupId $parameters $title]
+		pack $info
+
+		set cntls $win.dismiss
+		button $cntls -text Dismiss -command "objectParPanel_destroy $win"
+
+		pack $cntls -side left -expand yes
+		
+		wm protocol $win WM_DELETE_WINDOW "$cntls invoke"
+		
+	return $win
+}	
+#===========================================================================
+proc objectParPanel_destroy {win} {
+	
+	destroy $win
+	
+	set parGroupId $win
+	ParameterGroups::group_delete $parGroupId
+	return
+}
+#===========================================================================
+proc objectParOnlyPanel_create {win parGroupId parameters} {
+
+	frame $win
+	        objectParameterGroup_setup $parGroupId $parameters
+
+        	ParameterGroups::panel_create $win.parameters  $parGroupId
+        	pack $win.parameters
+	return $win
+}
+#===========================================================================
+proc objectParInfoPanel  {win parGroupId parameters title}	{
+	
+
+	frame $win
+
+		set parOnly [objectParOnlyPanel_create $win.parOnly $parGroupId $parameters]
+
+		frame $win.sep1 -height 2 -borderwidth 1 -relief sunken
+        	pack $win.sep1 -fill x -pady 4
+		
+		label $win.title -text $title -relief flat
+        	pack $win.title
+	        
+		frame $win.sep2 -height 2 -borderwidth 1 -relief sunken
+        	pack $win.sep2 -fill x -pady 4
+		
+		pack $parOnly
+		
+		frame $win.sep3 -height 2 -borderwidth 1 -relief sunken
+        	pack $win.sep3 -fill x -pady 4
+
+	return $win
+}		
+#======================================================================
+proc objectParameterGroup_setup {parGroupId parameters} {
+
+    foreach parm $parameters {	
+	set name [lindex $parm 0]
+	set type [lindex $parm 1]
+	set def [lindex $parm 2]
+	if { $def == "" } {
+		set def &noval
+	}	
+        
+#tk_messageBox -message " $name $def $type "
+        set id [string tolower $name]    
+
+         
+         ParameterGroups::parameter_create $parGroupId $id $name $type 9
+	 ParameterGroups::parameter_setInhibit $parGroupId $id
+         ParameterGroups::parameter_set $parGroupId $id $def
+    }
+}   
+#======================================================================
+proc objectParameterGroup_update {parGroupId parameters} {
+
+	foreach parm $parameters {	
+		set name [lindex $parm 0]
+		set type [lindex $parm 1]
+		set val [lindex $parm 2]
+		if { $val == "" } {
+			set val &noval
+		}	
+        
+#tk_messageBox -message " $name $def $type "
+		set id [string tolower $name]    
+
+		ParameterGroups::parameter_set $parGroupId $id $val
+	}
+	return
+}   
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/objectSelectionPanel.tcl smixx/src/tclTkGUI/objectSelectionPanel.tcl
--- smixx_web/src/tclTkGUI/objectSelectionPanel.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/objectSelectionPanel.tcl	2007-02-18 09:26:20.000000000 +0100
@@ -0,0 +1,268 @@
+
+#===============================================================================
+proc getDomainsForList {} {
+	set domainList [exec getDomains]
+		
+	set domains {}
+	
+	foreach item $domainList {
+		set splititem [split $item /]
+		set dom [lindex $splititem 0]
+		lappend domains $dom
+		set node($dom) [lindex $splititem 1]
+	}
+	set domainsSorted [lsort $domains]
+	return $domainsSorted
+}
+#==============================================================================
+proc getObjectsForList {domain} {
+	set domobjects [ exec getDomainObjects $domain ]
+	set domobjectsSorted [lsort $domobjects]
+	return $domobjectsSorted
+}
+proc selectAll {win} {
+}
+#===============================================================================
+proc objectSelectionLists_create { win } {
+	# The procedure creates three labelled and scrollabel lists side by side
+	global GUIdir
+	
+	frame $win
+		# Domains list ------------------------------------------------------
+		set domainsLabel [label $win.domainsLabel -text "Visible Domains"]
+		set  domains [Scrolled_Listbox $win.domains \
+			-width 20 -height 10 ]
+
+		# Domain objects list -----------------------------------------------
+		set objectsLabel [label $win.objectsLabel -text "Domain Objects"]
+		set objects [Scrolled_Listbox $win.objects \
+			-width 20 -height 10 -selectmode extended ]
+#			-width 20 -height 10 -selectmode extended -activestyle none]
+# older versions of Tcl/Tk do not support option '-activestyle'
+
+		# Selecting a domain will get the domain's objects and display them in objects
+		bind $domains <ButtonRelease-1> \
+			[list showDomainObjects %W $objects]
+
+		# Cntr-a will select all thw objects of the domain
+		bind $objects <Control-Key-a> \
+			[list %W selection set 0 end]
+
+		# Selected objects list ----------------------------------------------
+		set selObjectsLabel [label $win.selObjectsLabel -text "Selected Objects"]
+		set selObjects [Scrolled_Listbox $win.selObjects \
+			-width 20 -height 10 -selectmode extended]
+
+		# Selecting objects will remove them from the list
+		bind $selObjects <ButtonRelease-3> \
+			[list ListDeleteSel %W ]
+
+		# Right arrow button that will be placed in front of the selected objects list
+		if { [lsearch [image names] "::img::rightArrow"] == "-1" } {
+			set arrow [image create photo ::img::rightArrow -file $GUIdir/rightArrow.gif]
+		} else {
+			set arrow ::img::rightArrow
+		}
+		set selButton [button $win.selBut -image $arrow \
+			 -command [list transferSelectedItems $objects $selObjects] ]
+
+		set upDownButtons [upDownButtons_create $win.upDown $selObjects]
+
+		# place the elements on the frame
+		grid $win.domainsLabel -row 0 -column 0
+		grid $win.domains -row 1 -column 0
+
+		grid $win.objectsLabel -row 0 -column 1
+		grid $win.objects -row 1 -column 1
+
+		grid $selButton -row 1 -column 2 -padx 10
+
+		grid $win.selObjectsLabel -row 0 -column 3
+		grid $win.selObjects -row 1 -column 3
+
+		grid $upDownButtons -row 1 -column 4 -sticky ns
+
+		# Insert all the domains
+		set values [getDomainsForList]
+		foreach x $values {
+			$domains insert end $x
+		}
+
+	return $win
+}
+#==================================================================================
+proc upDownButtons_create {win selObjects} {
+	global GUIdir
+	
+	frame $win
+
+		# Up arrow button that will be placed behind of the selected objects list
+		if { [lsearch [image names] "::img::upArrow"] == "-1" } {
+			set uparrow [image create photo ::img::upArrow -file $GUIdir/upArrow.gif]
+		} else {
+			set uparrow ::img::upArrow
+		}
+		set upButton [button $win.upBut -image $uparrow \
+			 -command [list moveSelectedItemsUp $selObjects] ]
+
+		# down arrow button that will be placed behind of the selected objects list
+		if { [lsearch [image names] "::img::downArrow"] == "-1" } {
+			set downarrow [image create photo ::img::downArrow -file $GUIdir/downArrow.gif]
+		} else {
+			set downarrow ::img::downArrow
+		}
+		set downButton [button $win.downBut -image $downarrow \
+			 -command [list moveSelectedItemsDown $selObjects] ]
+		pack $upButton -anchor n -expand true
+		pack $downButton -anchor s -expand true
+	return $win
+}		
+#==================================================================================
+proc moveSelectedItemsUp {win} {
+	# the items selected
+	set selection [$win curselection]
+	
+	if { $selection == "" } {
+		bell
+		tk_messageBox -message "Select something!" -parent $win
+		return
+	}
+
+	set first [lindex $selection 0]
+	set last  [lindex $selection end]
+#tk_messageBox -message "$first  $last"
+
+	if { $first == "0" } {
+		bell
+		return
+	}
+
+	set itemabove [$win get [expr $first - 1]]
+#tk_messageBox -message $itemabove
+	$win insert [expr $last + 1] $itemabove
+	$win delete [expr $first - 1]
+	
+}
+#==================================================================================
+proc moveSelectedItemsDown {win} {
+	# the items selected
+	set selection [$win curselection]
+
+	if { $selection == "" } {
+		bell
+		tk_messageBox -message "Select something!" -parent $win
+		return
+	}
+
+
+	set first [lindex $selection 0]
+	set last  [lindex $selection end]
+#tk_messageBox -message "$first  $last  [$win size]"
+
+	if { $last >= [expr [$win size] - 1] } {
+		bell
+		return
+	}
+
+	set itembellow [$win get [expr $last + 1]]
+#tk_messageBox -message $itembellow
+	$win delete [expr $last + 1]
+	$win insert [expr $first] $itembellow
+
+	$win see [expr $last + 1]	
+}
+#================================================================================
+proc objectSelectionLists_selection {win} {
+	# the procedure returns the selected objects in a list
+	set src $win.selObjects.list
+
+	return [$src get 0 end]
+}
+#================================================================================
+proc showDomainObjects {src dst} {
+	# The procedure will find out the list of the objects for the selected domain and
+	# displays them in the appropriate list
+
+	#First clear the previous object list
+	$dst delete 0 end
+	update idletasks
+
+	# Find which domain was selected
+	set i [$src curselection]
+	set domain [$src get $i]
+
+	# Now get the domain objects
+	set objects [getObjectsForList $domain]
+	foreach obj $objects {
+		$dst insert end $obj
+	}
+	focus $dst
+}
+#================================================================================
+proc transferSelectedItems {src dst} {
+	# the procedure will transfer selected items from $src list to $dst list
+	# so far transferred
+	set all [$dst get 0 end]
+	
+	set selection [$src curselection]
+	if { $selection == "" } {
+		bell
+		tk_messageBox -message "Select something!" -parent $src
+		return
+	}
+	
+	foreach i  $selection {
+		set sel [$src get $i]
+		# make sure that the item has not been already selected
+		if { [lsearch $all $sel] == "-1" } {	
+			$dst insert end [$src get $i]
+		}
+	}
+
+	set size [$dst size]
+	$dst see $size
+	update idletasks
+}
+#================================================================================
+proc ListDeleteSel {w} {
+	foreach i [lsort -integer -decreasing [$w curselection]] {
+		$w delete $i
+	}
+}
+#=================================================================================
+proc objectSelectionPanel_show {} {
+	global objectSelectionPanelPrompt 
+
+	set top [dialog_create ObjectSelectionPanel]
+		set info [dialog_info $top]
+		set cntls [dialog_controls $top]
+		set win $top
+
+		set listBoxesId [objectSelectionLists_create $info.listBoxes ]
+
+		pack $listBoxesId -expand true -fill both	
+
+		button $cntls.ok -text OK -command {set objectSelectionPanelPrompt 1}
+		pack $cntls.ok -side left -expand yes
+
+		button $cntls.cancel -text Cancel -command {set objectSelectionPanelPrompt 2}
+		pack $cntls.cancel -side left -expand yes
+
+		set objectSelectionPanelPrompt 0
+		wm protocol $win WM_DELETE_WINDOW "$cntls.cancel invoke"
+
+		dialog_wait $win objectSelectionPanelPrompt
+
+		if { $objectSelectionPanelPrompt == "2" } {
+			set selection {}
+			return $selection
+		}
+
+		set selection [objectSelectionLists_selection $listBoxesId]
+		return $selection
+}
+#=================================================================================
+
+#button .b -text "Make Selection" -command {tk_messageBox -message [objectSelectionPanel_show]}
+#pack .b
+#==================================================================================================
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/parameterGroups.tcl smixx/src/tclTkGUI/parameterGroups.tcl
--- smixx_web/src/tclTkGUI/parameterGroups.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/parameterGroups.tcl	2007-03-19 09:55:43.000000000 +0100
@@ -0,0 +1,216 @@
+#====================================================================
+#
+#                           Boda Franek    Jan 2006
+# Copyright Information:
+#       Copyright (C) 2006 CCLRC. All Rights Reserved
+#
+#  $Id: parameterGroups.tcl,v 1.10 2007/02/16 10:54:14 franek Exp $
+#====================================================================
+namespace eval ParameterGroups {
+    namespace export group_delete parameter_create parameter_set panel_create 
+    namespace export allValExists getGroupParValues parameter_setInhibit
+    namespace export group_exists
+
+#======================================================================
+proc parameter_create {groupId id name type {width 1}} {
+# list of parameters belonging to the group
+    global grpPars
+# param data    
+    global grpParam
+
+    lappend grpPars($groupId) $id
+    set grpParam($groupId/$id/name) $name
+    set grpParam($groupId/$id/type) $type
+    set grpParam($groupId/$id/width) $width
+    set grpParam($groupId/$id/val) ""
+    set grpParam($groupId/$id/valExists) 0
+    set grpParam($groupId/$id/state) normal
+
+    return
+}
+#==================================================================
+proc group_exists {groupId} {
+	global grpPars
+	
+	return [info exists grpPars($groupId)]
+}
+#==================================================================
+proc parameter_setInhibit {groupId id} {
+	global grpPars
+	global grpParam
+    
+	if { [lsearch $grpPars($groupId) $id] == -1 } {
+        	tk_messageBox -message "No such parameter : $id"
+        	return
+	}
+ 
+	set grpParam($groupId/$id/state) disabled
+	return
+}	
+#==================================================================
+proc group_delete {groupId } {
+    global grpPars
+    global grpParam
+
+    foreach id $grpPars($groupId) {
+        unset grpParam($groupId/$id/name) 
+        unset grpParam($groupId/$id/type)
+        unset grpParam($groupId/$id/width)
+        unset grpParam($groupId/$id/val)
+        unset grpParam($groupId/$id/valExists)
+        unset grpParam($groupId/$id/state)
+    } 
+    unset grpPars($groupId)
+
+    return
+}
+#==================================================================
+proc parameter_set { groupId id val} {
+    global grpPars grpParWin
+    global grpParam
+    
+    if { [lsearch $grpPars($groupId) $id] == -1 } {
+        tk_messageBox -message "No such parameter : $id"
+        return
+    }
+    
+    if { $val == "&noval" } {
+        set grpParam($groupId/$id/valExists) 0
+        set grpParam($groupId/$id/val) ""
+    } else {
+        set grpParam($groupId/$id/valExists) 1
+        set grpParam($groupId/$id/val) $val
+	if {[info exists grpParWin($groupId)]} {
+		set win $grpParWin($groupId)
+		if {[winfo exists $win]} {
+			$win.$id/val configure -bg white
+		}
+	}
+    }
+    return
+}
+#==================================================================
+proc getParm_name { groupId id } {
+    global grpPars
+    global grpParam
+    return $grpParam($groupId/$id/name)
+} 
+#==================================================================
+proc getParm_type { groupId id } {
+    global grpPars
+    global grpParam
+    return $grpParam($groupId/$id/type)
+} 
+#==================================================================
+proc getParm_width { groupId id } {
+    global grpPars
+    global grpParam
+    return $grpParam($groupId/$id/width)
+} 
+#==================================================================
+proc getParm_val { groupId id } {
+    global grpPars
+    global grpParam
+    return $grpParam($groupId/$id/val)
+} 
+#==================================================================
+proc getParm_valExists { groupId id } {
+    global grpPars
+    global grpParam
+    return $grpParam($groupId/$id/valExists)
+} 
+
+#==================================================================
+proc getParm_state { groupId id } {
+    global grpPars
+    global grpParam
+    return $grpParam($groupId/$id/state)
+} 
+#==================================================================
+proc panel_create {win groupId} {
+    global grpPars grpParWin
+    global grpParam
+#puts stdout " Creating parpanel of group $groupId   $win"
+
+	set grpParWin($groupId) $win
+	
+    frame $win
+        set winColor [$win cget -bg]
+		label $win.namTit -text "Name" -relief flat
+		grid $win.namTit -row 0 -column 0 -pady 3 -padx 2
+
+
+        label $win.valTit -text "Value" -relief flat
+        grid $win.valTit -row 0 -column 1 -pady 3 -padx 2
+
+        label $win.typTit -text "Type" -relief flat
+        grid $win.typTit -row 0 -column 2 -pady 3 -padx 2
+
+        set i 0
+        foreach id $grpPars($groupId) {
+            set name [getParm_name $groupId $id]
+            set type [getParm_type $groupId $id]
+            set width [getParm_width $groupId $id]
+            set state [getParm_state $groupId $id]
+            set valExists [getParm_valExists $groupId $id]
+            set entryColor White
+            if { $valExists == 0 } {
+                set entryColor $winColor
+            }
+
+            incr i
+            label $win.$id/name -text $name -relief flat
+            grid $win.$id/name -row $i -column 0 -sticky e -padx 5
+            if { $type != "c" } {
+	    	if { $state == "disabled" } {
+			label $win.$id/val -textvariable grpParam($groupId/$id/val)  \
+				-bg $entryColor
+		} else {
+                	entry $win.$id/val -textvariable grpParam($groupId/$id/val)  \
+                       -borderwidth 1 -highlightthickness 1 \
+                      -state $state -bg $entryColor
+                	bind $win.$id/val <Key> "$win.$id/val configure -background white
+                                         set grpParam($groupId/$id/valExists) 1"
+		}
+		grid $win.$id/val -row $i -column 1  -padx 5 -pady 3 -sticky e
+
+                label $win.$id/type -text $type -relief flat
+                grid $win.$id/type -row $i -column 2 -padx 5 -pady 3
+            } else {
+                checkbutton $win.$id/val -variable grpParam($groupId/$id/val) \
+                           -onvalue yes -offvalue no  -state $state \
+                           -selectcolor Green -bg $entryColor
+                grid $win.$id/val -row $i -column 1 -sticky w -padx 5 -pady 3
+
+            }
+        }
+
+    return $win
+}
+#===================================================================================
+proc getGroupParValues {grId } {
+    global grpPars
+    global grpParam
+
+    set parameters {}
+
+    foreach id $grpPars($grId) {
+        lappend parameters [list $grpParam($grId/$id/name) $grpParam($grId/$id/type) $grpParam($grId/$id/val)]
+    }
+
+    return $parameters
+}
+#==================================================================================
+proc allValExists {groupId} {
+    global grpPars
+    global grpParam
+
+    foreach id $grpPars($groupId) {
+        if { $grpParam($groupId/$id/valExists) == "0" } {
+            return 0
+        }
+    }
+    return 1
+}
+}
+
Binary files smixx_web/src/tclTkGUI/rightArrow.gif and smixx/src/tclTkGUI/rightArrow.gif differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/selectFromListPanel_show.tcl smixx/src/tclTkGUI/selectFromListPanel_show.tcl
--- smixx_web/src/tclTkGUI/selectFromListPanel_show.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/selectFromListPanel_show.tcl	2007-01-16 16:08:34.000000000 +0100
@@ -0,0 +1,55 @@
+#==================================================================
+proc selectFromListPanel_show {title items} {
+	global listSelectionPanelPrompt
+
+	set top [dialog_create ListSelectionPanel]
+	set info [dialog_info $top]
+	set cntls [dialog_controls $top]
+	set win $top
+        
+	set listBoxId [listBox_create $info.listBox $title]
+	pack $listBoxId
+	
+	set inp [listBox_input $listBoxId]
+	$inp configure -selectmode extended	
+	
+	foreach item $items {
+		$inp insert end $item
+	}
+	
+
+	button $cntls.ok -text OK -command {set listSelectionPanelPrompt 2}
+	pack $cntls.ok -side left -expand yes
+	
+	button $cntls.cancel -text Dismiss -command {set listSelectionPanelPrompt -1}
+	pack $cntls.cancel -side left -expand yes
+
+
+	set listSelectionPanelPrompt 0
+	focus $inp
+	$inp selection set 0
+	wm protocol $win WM_DELETE_WINDOW "$cntls.cancel invoke"	
+	
+
+	dialog_wait $win listSelectionPanelPrompt
+		
+	set selection {}
+	set numselection {}
+
+	if {$listSelectionPanelPrompt =="-1"} {
+		set selection {}
+	}
+	if {$listSelectionPanelPrompt == "2"} {
+		set numselection [$inp curselection]
+		foreach nsel $numselection {
+			lappend selection [$inp get $nsel]
+		}
+	}
+	
+	grab release $win
+	wm withdraw $win
+	destroy $win
+	
+	return  $selection
+}
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/simpleEntry_show.tcl smixx/src/tclTkGUI/simpleEntry_show.tcl
--- smixx_web/src/tclTkGUI/simpleEntry_show.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/simpleEntry_show.tcl	2006-12-18 07:50:37.000000000 +0100
@@ -0,0 +1,92 @@
+#====================================================================
+#
+#                           Boda Franek    Dec 2006
+# Copyright Information:
+#       Copyright (C) 2005-2006 CCLRC. All Rights Reserved
+#
+#  $Id: simpleEntry_show.tcl,v 1.1 2006/12/18 06:50:37 franek Exp $
+#====================================================================
+#===============================================================================
+proc simpleEntry_show {text {ok "OK"} {cancel "Cancel"} } {
+# The panel is modal and has 2 sections :
+#  1 - Entry
+#  3 - controls  OK and Cancel buttons
+#===============================================================================
+	global simpleEntryWinId simpleEntryAnswer simpleEntryResult
+    
+	if { [info exists simpleEntryWinId] } {
+		bell
+		wm deiconify $simpleEntryWinId
+		raise $simpleEntryWinId
+		update idletasks
+		return
+}
+# create the Window 
+	set simpleEntryWinId [dialog_create "SimpleEntry"]
+    
+# get the window path for the information part of the dialog   
+	set info [dialog_info $simpleEntryWinId]
+
+# position it in the right place relative to the parent window
+	set parentWin .
+ 
+	set parentPosX [winfo rootx $parentWin]
+	set parentPosY [winfo rooty $parentWin]
+	
+	set x [expr $parentPosX+20]
+	set y [expr $parentPosY+20]
+    
+	wm geometry $simpleEntryWinId "+$x+$y"  
+	
+	set lab [label $info.lab -text $text -bg Yellow]
+	set ent [entry $info.ent -textvariable simpleEntryResult ]
+	
+	pack $lab $ent -pady 5
+
+	set cntls [dialog_controls $simpleEntryWinId]
+	button $cntls.ok -text $ok -command "executeOK "
+
+	pack $cntls.ok -side left -expand yes
+
+	button $cntls.cancel -text $cancel -command { set simpleEntryAnswer 0}
+	pack $cntls.cancel -side left -expand yes
+
+	bind $info.ent <Return> "$cntls.ok invoke"
+	focus $info.ent
+
+	wm protocol $simpleEntryWinId WM_DELETE_WINDOW "$cntls.cancel invoke"
+
+	set simpleEntryResult {}
+	dialog_wait $simpleEntryWinId simpleEntryAnswer
+	
+#	puts stdout $simpleEntryAnswer
+#	puts stdout $simpleEntryResult
+	simpleEntry_destroy
+
+	if { $simpleEntryAnswer == 0 } {
+		return ""
+	} else {
+		return $simpleEntryResult
+	} 
+     
+}
+#===========================================================================
+proc simpleEntry_destroy {} {
+    global simpleEntryWinId
+
+    destroy $simpleEntryWinId
+    unset simpleEntryWinId
+
+    return
+}
+#==============================================================================
+proc executeOK {} {
+    global simpleEntryWinId simpleEntryAnswer
+    
+    set simpleEntryAnswer 1
+
+
+    return
+
+}
+#===================================================================================
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/smiTclGui.in smixx/src/tclTkGUI/smiTclGui.in
--- smixx_web/src/tclTkGUI/smiTclGui.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/smiTclGui.in	2006-05-11 22:37:33.000000000 +0200
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+prefix=@prefix@
+datadir=@datadir@
+pkgdatadir=${datadir}/@PACKAGE@
+
+exec /usr/bin/wish ${pkgdatadir}/tcl/main.tcl 
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/tcl-smi.tcl smixx/src/tclTkGUI/tcl-smi.tcl
--- smixx_web/src/tclTkGUI/tcl-smi.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/tcl-smi.tcl	2007-03-19 09:55:43.000000000 +0100
@@ -0,0 +1,359 @@
+#==============================================================================
+# Tcl/Tk  -  SMI  Interface
+#
+#                                  Boda Franek    December 2005
+# Copyright Information:
+#      Copyright (C) 2006 CCLRC.   All Rights Reserved
+#
+#    $Id: tcl-smi.tcl,v 1.21 2007/01/19 14:44:59 franek Exp $
+#==============================================================================
+proc registerObject { name } {
+	global guiPID
+	global objectList
+
+	if { [info exists objectList] } {
+		if { [lsearch $objectList $name] != -1 } {
+			puts stdout " object $name is already registered in tcl-smi"
+			return 1
+		}
+	}
+    
+	lappend objectList $name
+	exec tellMonObjects $guiPID register/$name    
+	return 0
+}
+#===========================================================================
+proc requestObjectRemoval {objName} {
+	global guiPID
+	global objectList
+#	tk_messageBox -message " removal of object $objName not implemented yet"
+	if { [lsearch $objectList $objName] == "-1"  } {
+		tk_messageBox -message "non-existing object $objName can not be removed"
+	}
+	exec tellMonObjects $guiPID remove/$objName
+	return
+}
+#===========================================================
+proc startMonitoring {} {
+	global guiPID
+    global pipe
+	global monObjectsPID
+    global objectList
+    global oLfileName
+    global tcl_platform env
+
+    set platform $tcl_platform(platform)
+    
+    if { $platform == "windows" } {
+        set tempDir $env(TEMP)
+    } else {
+        set tempDir /tmp
+    }
+
+	set guiPID [pid]
+
+	set logfile $tempDir/monObjects.log
+	set errfile $tempDir/monObjects.err
+
+	if [catch {open "| monObjects $guiPID"} pipe] {
+    		tk_messageBox -message "cannot open pipe : $pipe"
+    		exit
+	}
+
+	set monObjectsPID [pid $pipe]
+#tk_messageBox -message $monObjectsPID
+	after 2000
+
+    fileevent $pipe readable [list Reader $pipe]
+    return
+}
+#=======================================================================
+proc stopMonitoring {} {
+	global guiPID
+	global monObjectsPID
+	global tcl_platform
+
+	set platform $tcl_platform(platform)
+
+	catch {exec tellMonObjects $guiPID exit/}
+            
+#	if { $platform == "windows" } {
+#		catch {exec TASKKILL /F /PID $monObjectsPID}
+#	} else {
+#		catch {exec kill -9 $monObjectsPID}  
+#	}
+
+	return
+}
+#=======================================================================
+proc Reader { pipe } {
+    global inString inStringTime    
+    global objectState objectActions objectParameters
+
+#tk_messageBox -message reader
+    if [eof $pipe] {
+        if { [catch {close $pipe} result] } {
+        	puts stderr "close $pipe ... failed"
+                puts stderr $result
+        }
+#	tk_messageBox -message "process monObjects exited"
+	puts stdout "process monObjects exited"
+        exit
+    }
+    gets $pipe inString
+    set type [getInStringType]
+#tk_messageBox -message "time:$inStringTime   Type:$type"
+#    puts stdout $inString
+
+    if {$type == "*time-tick"} {
+#        timeTickUpdate
+        return
+    }
+
+    if {$type != "*object"} {
+        puts stdout "Proc Reader : Unknown Type |$type|"
+        puts stdout $inString
+        return
+    }           
+    set object [getInStringObject]
+
+#    set state [getInStringObjectState]
+
+    unpackInString $object
+    
+#    puts stdout [getObjectActions $object [getState $object]]
+    
+    userUpdate $type $object
+
+    return    
+}
+###################################################################
+
+proc getInStringType {} {
+    global inString inStringList inStringTime 
+    set inStringList [split $inString /]
+    set inStringTime [lindex $inStringList 0]
+    set type [lindex $inStringList 1]
+    return $type
+}
+###################################################################
+proc getInStringObject {} {
+    global inStringList
+    set object [lindex $inStringList 2]
+    return $object
+}
+#===========================================================================
+proc unpackInString {object} {
+    global inStringList
+    global objectState objectParameters objectActions actionParameters
+
+	
+#	puts stdout $inStringList
+	
+    set noElements [llength $inStringList]
+
+    set point 4
+    set state [lindex $inStringList 4]
+    set objectState($object) $state
+   
+#                    Object Parameters
+    incr point
+# The next element is either *pars if object has parameters or *end_state
+    if {[lindex $inStringList $point] == "*pars" } {
+    	set begpars $point
+        set parameters ""
+        set endpars [findElement [lrange $inStringList $point end] "*end_pars"]
+	if { $endpars <0 } {
+		tk_messageBox -message "Wrong Syntax - processing object parameters,\n \
+		      *end_pars not found:\n $inStringList"
+		exit
+	}
+#   this points to *end_pars
+	incr point $endpars
+	incr begpars
+	set endpars $point
+	incr endpars -1
+	set objparList [lrange $inStringList $begpars $endpars]
+#	puts stdout " "
+#	puts stdout "begpars $begpars   endpars  $endpars"
+#	puts stdout $objparList
+	set objectParameters($object) [processParameters $objparList]
+#	puts stdout $objectParameters($object)
+# this points to *end_state
+	incr point
+    } 
+    
+	if {[lindex $inStringList $point] != "*end_state" } {
+		tk_messageBox -message "Wrong syntax - *end_state not found:\n $inStringList"
+		exit
+	}	
+    
+    
+#      
+#                 Object Actions
+#tk_messageBox -message "point $point   noElements $noElements"
+# now it looks : *action......*end_action *action....*end_action
+
+    set actions ""
+    
+    
+    incr point 
+    if {$noElements <= $point} {
+        return
+    }
+#tk_messageBox -message "point $point  [lindex $inStringList $point]"
+    while { 1 == 1 } {
+        set element [lindex $inStringList $point]
+	if { $element != "*action" } {
+		tk_messageBox -message "Wrong Syntax :$inStringList"
+		exit
+	}
+	set iend [findElement [lrange $inStringList $point end] "*end_action"]
+	if { $iend < 0 } {
+		tk_messageBox -message "Wrong Syntax - *end_action not found:$inStringList"
+		exit
+	}
+	
+	incr iend $point
+	set first $point
+	incr first
+	set last $iend
+	incr last -1
+	set actionList [lrange $inStringList $first $last]
+#	puts stdout $actionList
+	set action [lindex $actionList 0]
+	lappend actions $action
+	if {[llength $actionList] > 1} {
+		if { [lindex $actionList 1] != "*pars" || [lindex $actionList end] != "*end_pars" } {
+			tk_messageBox -message "Wrong syntax - *pars or *end_pars not found: $inStringList"
+			exit
+		}
+		set actionParameters($object/$state/$action) [processParameters [lrange $actionList 2 end-1] ]
+#		puts stdout $actionParameters($object/$state/$action)
+	}
+	set point $iend
+        incr point
+	if {$noElements <= $point} {
+		break
+	}
+    }
+    
+#    puts stdout $actions
+    set objectActions($object/$state) $actions
+#tk_messageBox -message $actions
+    return 
+}
+#=======================================================================================
+proc processParameters {parameters} {
+
+	set noPar [llength $parameters]
+	
+	for {set i 0} {$i < $noPar} {incr i} {
+		set parm [lindex $parameters $i]
+		if {[string first = $parm] == -1} {
+			set nametype $parm
+			set def ""
+		} else {
+			set splitted [split $parm =]
+			set nametype [lindex $splitted 0]
+			set def [lindex $splitted 1]
+		}
+		set brakinx [string first ( $nametype]
+		set name [string range $nametype 0 [expr $brakinx - 1] ]
+		set type [string range $nametype [expr $brakinx + 1] [expr [string length $nametype] - 2]]
+		
+		if { $type == "S" } {
+                	set defEASCII [convertHEXtoEASCII $def]
+			set parmNew [list $name $type $defEASCII]
+                } else {
+                	set parmNew [list $name $type $def]
+                }
+		lappend parsNew $parmNew
+	}
+	return $parsNew
+}
+#==========================================================================
+proc findElement {inpList elem} {
+	set inx [lsearch $inpList $elem]
+	return $inx
+}
+#==========================================================================
+proc getState {object} {
+    global objectState
+    
+    return $objectState($object)
+
+}
+#===========================================================================
+proc getObjectParameters {object} {
+	global objectParameters
+
+	if { [info exists objectParameters($object)] == 0 } {
+		return {}
+	} else {
+		return $objectParameters($object)
+	}
+}
+#===========================================================================
+proc getObjectActions {object state} {
+	global objectActions
+
+	if { [info exists objectActions($object/$state)] == 0 } {
+		set actions {}
+	} else {
+		set actions $objectActions($object/$state)
+	}
+
+	return $actions
+}
+#==========================================================================
+proc getActionParameters {object state action} {
+	global actionParameters
+
+	if { [info exists actionParameters($object/$state/$action)] == 0 } {
+		set parameters {}
+	} else {
+		set parameters $actionParameters($object/$state/$action)
+	}
+	
+	return $parameters
+}
+#============================= dispatchAction =============================
+proc dispatchAction {object action {parameters none} } {
+	global guiPID
+
+    set dbg 0
+
+   set actionString $action
+  
+    if { $parameters != "none" } {
+        foreach par $parameters {
+            set parname [lindex $par 0]
+	    set partype [lindex $par 1]
+            set parval  [lindex $par 2]
+	    if { $partype == "S" } {	    
+	    	set parvalConv [ convertEASCIItoHEX $parval ]
+            } else {
+            	set parvalConv $parval
+            }
+
+            append actionString "/" $parname " ${partype} " $parvalConv
+        }
+    } 
+   
+    if {$dbg != "0"} {
+        set confirm [tk_messageBox -type okcancel -icon warning \
+        -message \
+	"Object: $object 
+Action string:  $actionString"]
+
+        if {$confirm =="cancel"} {
+            return
+        }
+     }
+
+
+	catch {exec tellMonObjects $guiPID "command/$object/$actionString" &} 
+#     logMessage "Sent Command : $actionString  to Object : $object"
+     return
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/testParPanel.tcl smixx/src/tclTkGUI/testParPanel.tcl
--- smixx_web/src/tclTkGUI/testParPanel.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/testParPanel.tcl	2007-03-19 09:55:43.000000000 +0100
@@ -0,0 +1,23 @@
+#! /usr/bin/wish -f
+# 
+source actionParPanel_display.tcl
+source parameterGroups.tcl
+source $env(SMIDIR)/src/utilities/efftcl/dialog.tcl
+source dispatchAction.tcl
+
+#=====================================================================
+proc settingsButton_createNew {win} {
+    global infoGrey hel10font 
+
+    
+    button $win -text "Settings"  -relief flat \
+  -command {actionParPanel_display BODA::OBJECT GOTO_FIRST {{APAR S abcd} {BPAR I {}} {CPAR F 1.78}} }
+    
+    return $win
+}
+#==================================================================
+#==================================================================
+  
+   set settingsIdNew [settingsButton_createNew .settingsNew]
+
+    pack $settingsIdNew -side left -padx 8
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/testSelectFromListPanel.tcl smixx/src/tclTkGUI/testSelectFromListPanel.tcl
--- smixx_web/src/tclTkGUI/testSelectFromListPanel.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/testSelectFromListPanel.tcl	2006-11-26 10:03:45.000000000 +0100
@@ -0,0 +1,29 @@
+#! /usr/bin/wish -f
+# 
+source listBox_create.tcl
+source $env(SMIDIR)/src/utilities/efftcl/my_dialog.tcl
+source selectFromListPanel_show.tcl
+
+#=====================================================================
+proc settingsButton_createNew {win} {
+    global infoGrey hel10font 
+
+    
+    button $win -text "Settings"  -relief flat \
+  -command "selectFromListPanel_show Domains {DOMAIN1 DOMAIN2 DOMAIN3 DOMAIN4 DOMAIN5 DOMAIN6} "
+    
+    return $win
+}
+#==================================================================
+  frame .d
+  
+   set settingsIdNew [settingsButton_createNew .d.settingsNew]
+
+    pack $settingsIdNew -side left -padx 8
+    
+    pack .d
+
+#	set listBoxId [listBox_create .d.listBox Test]
+#		set listBoxId [label $info.listBox -text hey]
+#	pack $listBoxId
+	
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/testobjectParPanel.tcl smixx/src/tclTkGUI/testobjectParPanel.tcl
--- smixx_web/src/tclTkGUI/testobjectParPanel.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/testobjectParPanel.tcl	2007-01-25 12:58:31.000000000 +0100
@@ -0,0 +1,41 @@
+#! /usr/bin/wish -f
+# 
+source objectParPanel_create.tcl
+source parameterGroups.tcl
+
+#=====================================================================
+proc settingsButton_createNew {win} {
+    global infoGrey hel10font 
+
+    
+    button $win -text "display"  -relief flat \
+  -command {display}
+    
+    return $win
+}
+#==================================================================
+proc display {} {
+	global wintop
+#	  set panelId [objectParPanel_create $wintop.panel  {{APAR S abcd} {BPAR I {}} {CPAR F 1.78}} Hovno]	
+#	  pack $panelId -side top
+	  set panelId [objectParPanel_display .parms  {{APAR S abcd} {BPAR I {}} {CPAR F 1.78}} Hovno]	
+	puts stdout [winfo toplevel $panelId]
+	puts stdout $panelId
+}
+#==================================================================
+  
+   set settingsIdNew [settingsButton_createNew .settingsNew]
+   
+   global panelId
+   global wintop
+#    set wintop .object_BODA::OBJECT
+ 
+     set wintop .tt:tt  
+    toplevel $wintop
+    	frame $wintop.f
+    		label $wintop.f.l1 -text XXXXXXXX
+    		set but [settingsButton_createNew $wintop.f.but]
+		pack $wintop.f.l1 $but -side left
+		
+ 
+ 	pack $wintop.f
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/tclTkGUI/topbar.tcl smixx/src/tclTkGUI/topbar.tcl
--- smixx_web/src/tclTkGUI/topbar.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/tclTkGUI/topbar.tcl	2007-02-16 11:48:01.000000000 +0100
@@ -0,0 +1,62 @@
+#==============================================================================
+#
+#                                  Boda Franek    December 2006
+# Copyright Information:
+#      Copyright (C) 2005-2006 CCLRC.   All Rights Reserved
+#
+#    $Id: topbar.tcl,v 1.6 2007/02/16 10:48:01 franek Exp $
+#==============================================================================
+proc topbar_create {win} {
+	global hel10font
+	
+	frame $win -relief flat -relief ridge -borderwidth 2 -background gray70
+		set fileId [fileButton_create $win.file]
+		pack $fileId -side left -padx 8
+	return $win
+}
+#==============================================================================
+proc fileButton_create {win} {
+	global hel10font
+	
+	menubutton $win -text "File" -relief flat \
+	           -background gray70 -menu $win.menu
+	
+	menu $win.menu
+	$win.menu add command -label "Save the configuration" \
+				-command saveConfiguration
+	$win.menu add command -label "Exit" -command exitProcedure
+	return $win
+}
+#=============================================================================
+proc saveConfiguration {} {
+	global objectsOnCanvas
+	
+	set filename [tk_getSaveFile -title "Configuration File"]
+	puts stdout $filename
+	if { $filename == "" } {
+		return
+	}
+	if [catch {open $filename w} chanId] {
+		tk_messageBox -message "cannot open $filename : $chanId"
+		return
+	}
+	
+	set i 0
+	while { "1" == "1" } {
+		set elem [lindex $objectsOnCanvas $i]
+		if { $elem == "" } {
+			break
+		}
+		puts $chanId $elem
+		incr i
+	}
+	
+	close $chanId
+	return
+}
+#=============================================================================
+proc exitProcedure {} {
+
+	stopMonitoring
+	return
+}
Binary files smixx_web/src/tclTkGUI/upArrow.gif and smixx/src/tclTkGUI/upArrow.gif differ
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/translator/History smixx/src/translator/History
--- smixx_web/src/translator/History	2005-08-09 17:57:48.000000000 +0200
+++ smixx/src/translator/History	2007-03-19 09:55:43.000000000 +0100
@@ -800,3 +800,16 @@
 === 20-May-2005:15:58 ==========  v27  =================
 === 25-May-2005:12:04 ==========  v27r1  =================
 === 14-July-2005:17:07 ==========  v28  =================
+=== 28-September-2005:15:35 ==========  v28r1  =================
+=== 06-October-2005:15:38 ==========  v29  =================
+=== 20-January-2006:14:46 ==========  v29r1  =================
+
+ 31-Mar=2006  (Boda Franek)
+ 
+ isofclassobject.cxx   method outSobj : warning issued when the object has
+            ASSOCIATED attribute declared because this is taken from the class
+	    
+ 
+=== 31-March-2006:17:27 ==========  v30  =================
+=== 19-May-2006:20:34 ==========  v31  =================
+=== 21-May-2006:21:01 ==========  v31r1  =================
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/translator/isofclassobject.cxx smixx/src/translator/isofclassobject.cxx
--- smixx_web/src/translator/isofclassobject.cxx	2001-05-16 09:13:30.000000000 +0200
+++ smixx/src/translator/isofclassobject.cxx	2006-03-31 16:34:00.000000000 +0200
@@ -2,6 +2,8 @@
 //                         IsOfClassObject  Class
 //                                                 B. Franek
 //                                                 24 April 2000
+// Copyright Information:
+//      Copyright (C) 1999-2006 CCLRC. All Rights Reserved.
 //-----------------------------------------------------------------------
 //
 #include <stdlib.h>
@@ -21,7 +23,10 @@
 : SMLUnit("Object",5) {
 	_name = name;
 	_associated = assoc;
-
+// _associated is commpletely ignored, because this is taken from 
+// the class. The only reason I am leaving it here is because I want to keep
+// the translator output unchanged, so that it can be easily compared
+// BF 31 March 2006
 	_isOfClass = "UNKNOWN";
 
 //	cout << endl << "Object  " << _name << endl;
@@ -96,6 +101,13 @@
 	sobj << _isOfClass.getString() << endl;
 
 	for (int i=0; i<n2; i++) {
+            if (  _pAttributeBlock->_attributes[i].getString() == "ASSOCIATED" )
+	    {
+	        cout << " **** Warning ****  is_of_class type object : "
+		     << pStr << " has \"ASSOCIATED\" attribute" << endl;
+		cout << " this will be ignored and whatever is in the class taken"
+		     << endl;
+	    }
 		sobj << _pAttributeBlock->_attributes[i].getString() << endl;
 	}
 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/History smixx/src/utilities/History
--- smixx_web/src/utilities/History	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/History	2007-01-19 16:18:12.000000000 +0100
@@ -0,0 +1,26 @@
+
+
+  18-Jan-2007 (Boda Franek)
+**** This poor subdirectory so far did not have a History file ****
+
+  Process 'monObjects' can receive commands from 'tellMonObjects' by declaring
+  itself as DIM server with a command service. The name of the server and
+  the service have to be unique for the pair and also known to both. Untill
+  now it was an adhoc string 'hardcoded' to both. This of course meant that
+  only one pair could run in a given DNS domain.
+    To make this more general, I addopted the following convention:
+  
+  For the name of the server :
+  
+  node-name[/'localId']/SMIGUI
+  
+  and for the service :
+  
+  node-name[/'localId']/SMIGUI/CMNDS
+  
+  The 'localId' is supplied(or not) as the first argument to both processes.
+  It has to be some identifier that uniquely identifies the pair such as
+  PID of the GUI that uses them. 
+  
+-----------------------  tclTkGUI-v01  -------------------------------------   
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/_orig_balloon.tcl smixx/src/utilities/efftcl/_orig_balloon.tcl
--- smixx_web/src/utilities/efftcl/_orig_balloon.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/_orig_balloon.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,116 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: use "wm" commands to manage a balloon help window
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+
+option add *Balloonhelp*background white widgetDefault
+option add *Balloonhelp*foreground black widgetDefault
+option add *Balloonhelp.info.wrapLength 3i widgetDefault
+option add *Balloonhelp.info.justify left widgetDefault
+option add *Balloonhelp.info.font \
+    -*-lucida-medium-r-normal-sans-*-120-* widgetDefault
+
+toplevel .balloonhelp -class Balloonhelp \
+    -background black -borderwidth 1 -relief flat
+
+label .balloonhelp.arrow -anchor nw \
+    -bitmap @[file join $env(EFFTCL_LIBRARY) images arrow.xbm]
+pack .balloonhelp.arrow -side left -fill y
+
+label .balloonhelp.info
+pack .balloonhelp.info -side left -fill y
+
+wm overrideredirect .balloonhelp 1
+wm withdraw .balloonhelp
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_for <win> <mesg>
+#
+#  Adds balloon help to the widget named <win>.  Whenever the mouse
+#  pointer enters this widget and rests within it for a short delay,
+#  a balloon help window will automatically appear showing the
+#  help <mesg>.
+# ----------------------------------------------------------------------
+proc balloonhelp_for {win mesg} {
+    global bhInfo
+    set bhInfo($win) $mesg
+
+    bind $win <Enter> {balloonhelp_pending %W}
+    bind $win <Leave> {balloonhelp_cancel}
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_control <state>
+#
+#  Turns balloon help on/off for the entire application.
+# ----------------------------------------------------------------------
+set bhInfo(active) 1
+
+proc balloonhelp_control {state} {
+    global bhInfo
+
+    if {$state} {
+        set bhInfo(active) 1
+    } else {
+        balloonhelp_cancel
+        set bhInfo(active) 0
+    }
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_pending <win>
+#
+#  Used internally to mark the point in time when a widget is first
+#  touched.  Sets up an "after" event so that balloon help will appear
+#  if the mouse remains within the current window.
+# ----------------------------------------------------------------------
+proc balloonhelp_pending {win} {
+    global bhInfo
+
+    balloonhelp_cancel
+    set bhInfo(pending) [after 1500 [list balloonhelp_show $win]]
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_cancel
+#
+#  Used internally to mark the point in time when the mouse pointer
+#  leaves a widget.  Cancels any pending balloon help requested earlier
+#  and hides the balloon help window, in case it is visible.
+# ----------------------------------------------------------------------
+proc balloonhelp_cancel {} {
+    global bhInfo
+
+    if {[info exists bhInfo(pending)]} {
+        after cancel $bhInfo(pending)
+        unset bhInfo(pending)
+    }
+    wm withdraw .balloonhelp
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_show <win>
+#
+#  Used internally to display the balloon help window for the
+#  specified <win>.
+# ----------------------------------------------------------------------
+proc balloonhelp_show {win} {
+    global bhInfo
+
+    if {$bhInfo(active)} {
+        .balloonhelp.info configure -text $bhInfo($win)
+
+        set x [expr [winfo rootx $win]+10]
+        set y [expr [winfo rooty $win]+[winfo height $win]]
+        wm geometry .balloonhelp +$x+$y
+        wm deiconify .balloonhelp
+        raise .balloonhelp
+    }
+    unset bhInfo(pending)
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/_orig_progressGauge.tcl smixx/src/utilities/efftcl/_orig_progressGauge.tcl
--- smixx_web/src/utilities/efftcl/_orig_progressGauge.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/_orig_progressGauge.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,42 @@
+option add *Gauge.borderWidth 2 widgetDefault
+option add *Gauge.relief sunken widgetDefault
+option add *Gauge.length 200 widgetDefault
+option add *Gauge.color gray widgetDefault
+ 
+proc gauge_create {win {color ""}} {
+    frame $win -class Gauge
+    
+    set len [option get $win length Length]
+    canvas $win.display -borderwidth 0 -background white \
+         -highlightthickness 0 -width $len -height 20
+    pack $win.display -expand yes
+    
+    if {$color == ""} {
+       set color [option get $win color Color]
+    }
+    
+    $win.display create rectangle 0 0 0 20 \
+         -outline "" -fill $color -tags bar
+	 
+    $win.display create text [expr 0.5*$len] 10 \
+          -anchor c -text "0%" -tags value
+	  
+    return $win
+}
+proc gauge_value {win val} {
+    if { $val < 0 | $val > 100 } {
+        puts stdout "bad value for gauge"
+	return
+    }
+    
+    set msg [format "%3.0f%%" $val]
+#    puts stdout $msg
+    $win.display itemconfigure value -text $msg
+    
+    set w [expr 0.01*$val*[winfo width $win.display]]
+    set h [winfo height $win.display]
+    $win.display coords bar 0 0 $w $h
+    
+    update
+}
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/balloon.tcl smixx/src/utilities/efftcl/balloon.tcl
--- smixx_web/src/utilities/efftcl/balloon.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/balloon.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,120 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: use "wm" commands to manage a balloon help window
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+
+option add *Balloonhelp*background white widgetDefault
+option add *Balloonhelp*foreground black widgetDefault
+option add *Balloonhelp.info.wrapLength 3i widgetDefault
+option add *Balloonhelp.info.justify left widgetDefault
+option add *Balloonhelp.info.font \
+    -*-lucida-medium-r-normal-sans-*-120-* widgetDefault
+
+toplevel .balloonhelp -class Balloonhelp \
+    -background black -borderwidth 1 -relief flat
+bind .balloonhelp <Button-1> {balloonhelp_cancel}
+bind .balloonhelp <Button-2> {balloonhelp_cancel}    
+bind .balloonhelp <Button-3> {balloonhelp_cancel}
+
+#label .balloonhelp.arrow -anchor nw \
+#    -bitmap @[file join $env(EFFTCL_LIBRARY) images arrow.xbm]
+#pack .balloonhelp.arrow -side left -fill y
+
+label .balloonhelp.info -background white
+pack .balloonhelp.info -side left -fill y 
+
+wm overrideredirect .balloonhelp 1
+wm withdraw .balloonhelp
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_for <win> <mesg>
+#
+#  Adds balloon help to the widget named <win>.  Whenever the mouse
+#  pointer enters this widget and rests within it for a short delay,
+#  a balloon help window will automatically appear showing the
+#  help <mesg>.
+# ----------------------------------------------------------------------
+proc balloonhelp_for {win mesg} {
+    global bhInfo
+    set bhInfo($win) $mesg
+
+#    bind $win <Enter> {balloonhelp_pending %W}
+    bind $win <Button-3> {balloonhelp_pending %W}
+#    bind $win <Leave> {balloonhelp_cancel}
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_control <state>
+#
+#  Turns balloon help on/off for the entire application.
+# ----------------------------------------------------------------------
+set bhInfo(active) 1
+
+proc balloonhelp_control {state} {
+    global bhInfo
+
+    if {$state} {
+        set bhInfo(active) 1
+    } else {
+        balloonhelp_cancel
+        set bhInfo(active) 0
+    }
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_pending <win>
+#
+#  Used internally to mark the point in time when a widget is first
+#  touched.  Sets up an "after" event so that balloon help will appear
+#  if the mouse remains within the current window.
+# ----------------------------------------------------------------------
+proc balloonhelp_pending {win} {
+    global bhInfo
+
+    balloonhelp_cancel
+    set bhInfo(pending) [after 200 [list balloonhelp_show $win]]
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_cancel
+#
+#  Used internally to mark the point in time when the mouse pointer
+#  leaves a widget.  Cancels any pending balloon help requested earlier
+#  and hides the balloon help window, in case it is visible.
+# ----------------------------------------------------------------------
+proc balloonhelp_cancel {} {
+    global bhInfo
+
+    if {[info exists bhInfo(pending)]} {
+        after cancel $bhInfo(pending)
+        unset bhInfo(pending)
+    }
+    wm withdraw .balloonhelp
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_show <win>
+#
+#  Used internally to display the balloon help window for the
+#  specified <win>.
+# ----------------------------------------------------------------------
+proc balloonhelp_show {win} {
+    global bhInfo
+
+    if {$bhInfo(active)} {
+        .balloonhelp.info configure -text $bhInfo($win)
+
+        set x [expr [winfo rootx $win]+10]
+        set y [expr [winfo rooty $win]+[winfo height $win]]
+        wm geometry .balloonhelp +$x+$y
+        wm deiconify .balloonhelp
+        raise .balloonhelp
+    }
+    unset bhInfo(pending)
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/balloon1.tcl smixx/src/utilities/efftcl/balloon1.tcl
--- smixx_web/src/utilities/efftcl/balloon1.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/balloon1.tcl	2007-01-31 11:16:24.000000000 +0100
@@ -0,0 +1,116 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: use "wm" commands to manage a balloon help window
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+
+option add *Balloonhelp*background yellow widgetDefault
+option add *Balloonhelp*foreground black widgetDefault
+option add *Balloonhelp.info.wrapLength 3i widgetDefault
+option add *Balloonhelp.info.justify left widgetDefault
+option add *Balloonhelp.info.font \
+    -*-lucida-medium-r-normal-sans-*-120-* widgetDefault
+
+toplevel .balloonhelp -class Balloonhelp \
+    -background black -borderwidth 1 -relief flat
+
+#label .balloonhelp.arrow -anchor nw \
+#    -bitmap @[file join $env(EFFTCL_LIBRARY) images arrow.xbm]
+#pack .balloonhelp.arrow -side left -fill y
+
+label .balloonhelp.info
+pack .balloonhelp.info -side left -fill y
+
+wm overrideredirect .balloonhelp 1
+wm withdraw .balloonhelp
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_for <win> <mesg>
+#
+#  Adds balloon help to the widget named <win>.  Whenever the mouse
+#  pointer enters this widget and rests within it for a short delay,
+#  a balloon help window will automatically appear showing the
+#  help <mesg>.
+# ----------------------------------------------------------------------
+proc balloonhelp_for {win mesg} {
+    global bhInfo
+    set bhInfo($win) $mesg
+
+    bind $win <Enter> {balloonhelp_pending %W}
+    bind $win <Leave> {balloonhelp_cancel}
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_control <state>
+#
+#  Turns balloon help on/off for the entire application.
+# ----------------------------------------------------------------------
+set bhInfo(active) 1
+
+proc balloonhelp_control {state} {
+    global bhInfo
+
+    if {$state} {
+        set bhInfo(active) 1
+    } else {
+        balloonhelp_cancel
+        set bhInfo(active) 0
+    }
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_pending <win>
+#
+#  Used internally to mark the point in time when a widget is first
+#  touched.  Sets up an "after" event so that balloon help will appear
+#  if the mouse remains within the current window.
+# ----------------------------------------------------------------------
+proc balloonhelp_pending {win} {
+    global bhInfo
+
+    balloonhelp_cancel
+    set bhInfo(pending) [after 1000 [list balloonhelp_show $win]]
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_cancel
+#
+#  Used internally to mark the point in time when the mouse pointer
+#  leaves a widget.  Cancels any pending balloon help requested earlier
+#  and hides the balloon help window, in case it is visible.
+# ----------------------------------------------------------------------
+proc balloonhelp_cancel {} {
+    global bhInfo
+
+    if {[info exists bhInfo(pending)]} {
+        after cancel $bhInfo(pending)
+        unset bhInfo(pending)
+    }
+    wm withdraw .balloonhelp
+}
+
+# ----------------------------------------------------------------------
+#  USAGE:  balloonhelp_show <win>
+#
+#  Used internally to display the balloon help window for the
+#  specified <win>.
+# ----------------------------------------------------------------------
+proc balloonhelp_show {win} {
+    global bhInfo
+
+    if {$bhInfo(active)} {
+        .balloonhelp.info configure -text $bhInfo($win)
+
+        set x [expr [winfo rootx $win]+10]
+        set y [expr [winfo rooty $win]+[winfo height $win]]
+        wm geometry .balloonhelp +$x+$y
+        wm deiconify .balloonhelp
+        raise .balloonhelp
+    }
+    unset bhInfo(pending)
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/confirm.tcl smixx/src/utilities/efftcl/confirm.tcl
--- smixx_web/src/utilities/efftcl/confirm.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/confirm.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,77 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: simple confirmation dialog
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+# modified by B.Franek on 10-Jun-2002. Adding access to the window
+
+option add *Confirm*icon.bitmap questhead widgetDefault
+option add *Confirm*mesg.wrapLength 4i widgetDefault
+
+proc confirm_ask {mesg {ok "OK"} {cancel "Cancel"}} {
+    global confirmStatus
+#
+#--- B.Franek 10-Jun-2002    
+    global confirmWinId
+    if {[info exists confirmWinId]} {
+        puts stdout \
+         "can not pop up another confirm window untill the curent is destroyed"
+        return
+    }
+#----
+
+    set top [dialog_create Confirm]
+    set confirmWinId $top
+
+    set info [dialog_info $top]
+    label $info.icon
+    pack $info.icon -side left -padx 8 -pady 8
+    label $info.mesg -text $mesg
+    pack $info.mesg -side right -expand yes -fill both -padx 8 -pady 8
+
+    set cntls [dialog_controls $top]
+    button $cntls.ok -text $ok -command {set confirmStatus 1}
+#---- B. Franek   21 Dec 2004
+    if { $ok != "nil" } {
+        pack $cntls.ok -side left -expand yes
+    }
+    button $cntls.cancel -text $cancel -command {set confirmStatus 0}
+#---- B. Franek   06 Dec 2004
+    if { $cancel != "nil" } {
+        pack $cntls.cancel -side left -expand yes
+    }
+    focus $cntls.ok
+
+    wm protocol $top WM_DELETE_WINDOW "$cntls.cancel invoke"
+
+    dialog_wait $top confirmStatus
+    destroy $top
+#---- B.Franek 10-Jun-2002
+    unset confirmWinId
+#----
+    return $confirmStatus
+}
+#---- B.Franek 10-Jun-2002
+#============================================================================
+proc confirm_destroy {} {
+    global confirmStatus
+    set confirmStatus destroyed
+    return
+}
+#============================================================================
+proc confirm_controls {} {
+    global confirmWinId
+    return [dialog_controls $confirmWinId]
+}
+#============================================================================
+proc confirm_info {} {
+    global confirmWinId
+    return [dialog_info $confirmWinId]
+}
+#----
+   
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/dialog.tcl smixx/src/utilities/efftcl/dialog.tcl
--- smixx_web/src/utilities/efftcl/dialog.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/dialog.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,78 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: procedures to create dialogs
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+# Modified (bug fixed) by B.Franek on 04-Dec-2002
+
+proc dialog_create {class {win "auto"}} {
+    if {$win == "auto"} {
+        set count 0
+        set win ".dialog[incr count]"
+        while {[winfo exists $win]} {
+            set win ".dialog[incr count]"
+        }
+    }
+    toplevel $win -class $class
+
+    frame $win.info
+    pack $win.info -expand yes -fill both -padx 4 -pady 4
+
+    frame $win.sep -height 2 -borderwidth 1 -relief sunken
+    pack $win.sep -fill x -pady 4
+
+    frame $win.controls
+    pack $win.controls -fill x -padx 4 -pady 4
+
+    wm title $win $class
+    wm group $win .
+
+    after idle [format {
+        update idletasks
+        wm minsize %s [winfo reqwidth %s] [winfo reqheight %s]
+    } $win $win $win]
+
+    return $win
+}
+
+proc dialog_info {win} {
+    return "$win.info"
+}
+
+proc dialog_controls {win} {
+    return "$win.controls"
+}
+
+proc dialog_wait {win varName} {
+    dialog_safeguard $win
+
+    set x [expr [winfo rootx .]+50]
+    set y [expr [winfo rooty .]+50]
+    wm geometry $win "+$x+$y"
+
+    wm deiconify $win
+#-------- B.Franek  04-Dec-2002 ----------------
+    update idletasks
+#----------
+    
+    grab set $win
+    vwait $varName
+
+    grab release $win
+    wm withdraw $win
+}
+
+bind modalDialog <ButtonPress> {
+    wm deiconify %W
+    raise %W
+}
+proc dialog_safeguard {win} {
+    if {[lsearch [bindtags $win] modalDialog] < 0} {
+        bindtags $win [linsert [bindtags $win] 0 modalDialog]
+    }
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/my_dialog.tcl smixx/src/utilities/efftcl/my_dialog.tcl
--- smixx_web/src/utilities/efftcl/my_dialog.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/my_dialog.tcl	2007-01-16 16:31:46.000000000 +0100
@@ -0,0 +1,78 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: procedures to create dialogs
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+# Modified (bug fixed) by B.Franek on 04-Dec-2002
+
+proc dialog_create {class {win "auto"}} {
+    if {$win == "auto"} {
+        set count 0
+        set win ".dialog[incr count]"
+        while {[winfo exists $win]} {
+            set win ".dialog[incr count]"
+        }
+    }
+    toplevel $win -class $class
+
+    frame $win.info
+    pack $win.info -expand yes -fill both -padx 4 -pady 4
+
+    frame $win.sep -height 2 -borderwidth 1 -relief sunken
+    pack $win.sep -fill x -pady 4
+
+    frame $win.controls
+    pack $win.controls -fill x -padx 4 -pady 4
+
+    wm title $win $class
+    wm group $win .
+
+#    after idle [format {
+#        update idletasks
+#        wm minsize %s [winfo reqwidth %s] [winfo reqheight %s]
+#    } $win $win $win]
+
+    return $win
+}
+
+proc dialog_info {win} {
+    return "$win.info"
+}
+
+proc dialog_controls {win} {
+    return "$win.controls"
+}
+
+proc dialog_wait {win varName} {
+    dialog_safeguard $win
+
+#    set x [expr [winfo rootx .]+50]
+#    set y [expr [winfo rooty .]+50]
+#    wm geometry $win "+$x+$y"
+
+    wm deiconify $win
+#-------- B.Franek  04-Dec-2002 ----------------
+    update idletasks
+#----------
+    
+    grab set $win
+    vwait $varName
+
+    grab release $win
+    wm withdraw $win
+}
+
+bind modalDialog <ButtonPress> {
+    wm deiconify %W
+    raise %W
+}
+proc dialog_safeguard {win} {
+    if {[lsearch [bindtags $win] modalDialog] < 0} {
+        bindtags $win [linsert [bindtags $win] 0 modalDialog]
+    }
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/notice.tcl smixx/src/utilities/efftcl/notice.tcl
--- smixx_web/src/utilities/efftcl/notice.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/notice.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,33 @@
+# ----------------------------------------------------------------------
+#  EXAMPLE: simple notice dialog
+# ----------------------------------------------------------------------
+#  Effective Tcl/Tk Programming
+#    Mark Harrison, DSC Communications Corp.
+#    Michael McLennan, Bell Labs Innovations for Lucent Technologies
+#    Addison-Wesley Professional Computing Series
+# ======================================================================
+#  Copyright (c) 1996-1997  Lucent Technologies Inc. and Mark Harrison
+# ======================================================================
+
+option add *Notice*dismiss.text "Dismiss" widgetDefault
+
+proc notice_show {mesg {icon "info"}} {
+    set top [dialog_create Notice]
+
+    set x [expr [winfo rootx .]+50]
+    set y [expr [winfo rooty .]+50]
+    wm geometry $top "+$x+$y"
+
+    set info [dialog_info $top]
+    label $info.icon -bitmap $icon
+    pack $info.icon -side left -padx 8 -pady 8
+    label $info.mesg -text $mesg -wraplength 4i
+    pack $info.mesg -side right -expand yes -fill both -padx 8 -pady 8
+
+    set cntls [dialog_controls $top]
+    button $cntls.dismiss -command "destroy $top"
+    pack $cntls.dismiss -pady 4
+
+    focus $cntls.dismiss
+    return $top
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/progressGauge.tcl smixx/src/utilities/efftcl/progressGauge.tcl
--- smixx_web/src/utilities/efftcl/progressGauge.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/progressGauge.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,45 @@
+option add *Gauge.borderWidth 2 widgetDefault
+option add *Gauge.relief sunken widgetDefault
+option add *Gauge.length 200 widgetDefault
+option add *Gauge.color gray widgetDefault
+ 
+proc gauge_create {win {color ""}} {
+    frame $win -class Gauge
+    
+    set len [option get $win length Length]
+    canvas $win.display -borderwidth 0 -background white \
+         -highlightthickness 0 -width $len -height 20
+    pack $win.display -expand yes
+    
+    if {$color == ""} {
+       set color [option get $win color Color]
+    }
+    
+    $win.display create rectangle 0 0 0 20 \
+         -outline "" -fill $color -tags bar
+	 
+    $win.display create text [expr 0.5*$len] 10 \
+          -anchor c -text "0%" -tags value
+	  
+    return $win
+}
+proc gauge_value {win val {color ""}} {
+    if { $val < 0 } {
+        puts stdout "bad value for gauge"
+	return
+    }
+    
+    set msg [format "%3.0f%%" $val]
+#    puts stdout $msg
+    $win.display itemconfigure value -text $msg
+    if { $color != "" } {
+        $win.display itemconfigure bar -fill $color
+    }
+    
+    set w [expr 0.01*$val*[winfo width $win.display]]
+    set h [winfo height $win.display]
+    $win.display coords bar 0 0 $w $h
+    
+    update
+}
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/efftcl/testProgressGauge.tcl smixx/src/utilities/efftcl/testProgressGauge.tcl
--- smixx_web/src/utilities/efftcl/testProgressGauge.tcl	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/efftcl/testProgressGauge.tcl	2006-11-26 10:10:35.000000000 +0100
@@ -0,0 +1,45 @@
+
+source dialog.tcl
+source notice.tcl
+source progressGauge.tcl
+#============================= Example  =====================================
+proc updateScript {idGauge} {
+	global i idNotice
+	
+	incr i
+        if { $i >= 100} {
+		set cntls [dialog_controls $idNotice]
+		set info [dialog_info $idNotice]
+		pack forget $idGauge
+		pack $cntls.dismiss
+		$info.mesg configure -text Finished 
+		return
+	}	
+	gauge_value $idGauge $i
+        after 1000 [list updateScript $idGauge]
+        return
+}
+global idNotice
+set idNotice [notice_show " Starting process"]
+set cntls [dialog_controls $idNotice]
+pack forget $cntls.dismiss
+
+#global idGauge
+set idGauge [gauge_create $cntls.gauge PaleGreen]
+pack $idGauge -expand yes -fill both -padx 10 -pady 10
+
+global i
+set i 0
+#after 1000 [list updateScript $idGauge]
+update
+gauge_value $idGauge 10 Blue
+after 5000
+gauge_value $idGauge 20 Yellow
+after 1000
+gauge_value $idGauge 30 Pink
+after 1000
+gauge_value $idGauge 40
+after 1000
+gauge_value $idGauge 50
+after 1000
+gauge_value $idGauge 120 Red
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/getDomainObjects.cxx smixx/src/utilities/getDomainObjects.cxx
--- smixx_web/src/utilities/getDomainObjects.cxx	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/getDomainObjects.cxx	2006-11-26 10:08:09.000000000 +0100
@@ -0,0 +1,27 @@
+#include <iostream>
+#include <string>
+#include <smiuirtl.hxx>
+using namespace std;
+
+class Domain: public SmiDomain
+{
+	public:
+		Domain(char* name): SmiDomain(name) {};
+};
+
+int main(int argc, char* argv[])
+{
+	Domain *domainp;
+	domainp = new Domain(argv[1]);
+
+//	cout << domainp->getNObjects() << endl;
+
+	SmiObject* pSmiObject;
+	
+	while ( pSmiObject = domainp->getNextObject() )
+	{
+		cout << pSmiObject->getName() << endl;
+	}
+	
+	return 0;
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/getDomains.cxx smixx/src/utilities/getDomains.cxx
--- smixx_web/src/utilities/getDomains.cxx	2004-08-10 10:43:30.000000000 +0200
+++ smixx/src/utilities/getDomains.cxx	2007-03-19 09:55:43.000000000 +0100
@@ -20,7 +20,7 @@
 			smiDomain = server;

 			smiDomain.erase(ll-4,4);

 //			smiDomain.copy(server,ll-4);

-			cout << smiDomain  << " @ " << ptr << endl;

+			cout << smiDomain  << "/" << ptr << endl;
 		}

 	}

 

diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/getObjectState.cxx smixx/src/utilities/getObjectState.cxx
--- smixx_web/src/utilities/getObjectState.cxx	2004-11-25 17:58:20.000000000 +0100
+++ smixx/src/utilities/getObjectState.cxx	2006-05-11 23:07:36.000000000 +0200
@@ -22,6 +22,9 @@
         cerr << "Error No object specified" << endl;
         exit(1);
     }
+    if ( argc > 2) {
+        putenv("DIM_DNS_NODE", argv[2]);
+    }
     
     if ( getenv("DIM_DNS_NODE") == 0 ) {
         cerr << "***Error getObjectState DIM_DNS_NODE is undefined" << endl;
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/getTimeString.c smixx/src/utilities/getTimeString.c
--- smixx_web/src/utilities/getTimeString.c	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/getTimeString.c	2005-12-11 11:20:34.000000000 +0100
@@ -0,0 +1,10 @@
+#include <time.h>
+char* getTimeString() {
+	time_t t;
+        char* z;
+        
+        t = time((time_t *)0);
+        z = ctime(&t);
+        *(char *)strchr(z,'\n') = '\0';
+        return z;
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/getdomainobjects.cxx smixx/src/utilities/getdomainobjects.cxx
--- smixx_web/src/utilities/getdomainobjects.cxx	2004-11-11 14:40:58.000000000 +0100
+++ smixx/src/utilities/getdomainobjects.cxx	1970-01-01 01:00:00.000000000 +0100
@@ -1,38 +0,0 @@
-//----------------------   M a i n   P r o g r a m  --------------------------
-
-#include <stdlib.h>
-#include "smixx_common.hxx"
-#include <string.h>
-#include <ctype.h>
-#include "name.cc"
-
-extern "C" int smiui_connect_domain(char* smiDomainStr);
-extern "C" int smiui_get_next_object(char* smiDomainStr, char* object_nm) ;
-
-int main(int argc, char* argv[]) {
-
-  Name smiDomain; 
-
-  smiDomain = argv[1]; smiDomain.upCase();
-  char* smiDomainStr = smiDomain.getString();
-
-  
-  int numOfObjects = smiui_connect_domain(smiDomainStr);
-
-   cout << numOfObjects  << endl;
-   cout.flush();
-
-   for ( int io=0; io < numOfObjects; io++ ) {
-      char object_nm[500];
-      int iflg = smiui_get_next_object(smiDomainStr,object_nm) ;
-      
-      char* ptr =strstr(object_nm,"::"); ptr+=2;
-
-      cout << ptr << endl;
-      if ( iflg == 0 ) {break;}
-   }
-
-   exit(0);
-
-
-}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/monObjectState.cxx smixx/src/utilities/monObjectState.cxx
--- smixx_web/src/utilities/monObjectState.cxx	2004-11-25 17:58:20.000000000 +0100
+++ smixx/src/utilities/monObjectState.cxx	2006-05-11 23:08:16.000000000 +0200
@@ -46,6 +46,10 @@
         exit(1);
     }
     
+    if ( argc > 2) {
+        putenv("DIM_DNS_NODE", argv[2]);
+    }
+    
     if ( getenv("DIM_DNS_NODE") == 0 ) {
         cerr << "***Error getObjectState DIM_DNS_NODE is undefined" << endl;
         exit(11);
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/monObjects.cxx smixx/src/utilities/monObjects.cxx
--- smixx_web/src/utilities/monObjects.cxx	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/monObjects.cxx	2007-03-19 09:55:43.000000000 +0100
@@ -0,0 +1,635 @@
+//===========================================================================
+//
+//                                      Boda Franek   Dec 2005
+// Copyright Information:
+//      Copyright (C) 2005 CCLRC. All Rights Reserved
+//
+// $Id: monObjects.cxx,v 1.20 2007/01/19 15:18:21 franek Exp $
+//===========================================================================
+
+#include <iostream>
+#include <istream>
+#include <string>
+#include <vector>
+#include <dis.hxx>
+using namespace std;
+#include <stdlib.h>
+#include <smiuirtl.hxx>
+#include "smixx_common.hxx"
+
+#include <ctype.h>
+#include "getTimeString.c"
+
+void removeObject(char* name);
+void registerObject(char* name);
+void sendCommandToObject(char* commandString);
+
+const static int timer_tick(60);
+
+static int logflg;
+static ofstream logFile;
+
+class MyObject;
+
+
+MyObject* findObject(char* name);
+MyObject* pFirstRegisteredObject = 0;
+
+//==========================================================================
+class Timer:public DimTimer
+{
+public:
+    Timer(int time) : DimTimer(time) {};
+    void timerHandler();
+};
+//==========================================================================
+void Timer::timerHandler() {
+    string timeString = getTimeString();
+
+    cout << timeString.substr(4,15) << "/*time-tick" << endl;
+
+    stop();
+    start(timer_tick);
+}
+//==========================================================================
+class MyObject: public SmiObject
+{    
+    void  smiStateChangeHandler();
+    void smiExecutingHandler();
+    void getPars (string& parsString);  
+    void getActionPars(SmiAction* ptrAct, string& parsString); 
+    void getParam(SmiParam* ptrPar, string& parString);
+    
+
+public:
+    MyObject(char* fullObjName): SmiObject(fullObjName) { }
+    	MyObject* prev;
+    	MyObject* next;
+};
+//===========================================================================
+class Command: public DimCommand 
+{ 
+	void commandHandler() 
+	{ 
+		char temp[10];
+//        cout << "Received : " << getString() << endl;
+		
+		if ( strncmp(getString(),"register/",9) == 0 )
+		{
+			registerObject(getString()+9);
+		}
+		else if ( strncmp(getString(),"remove/",7) == 0 )
+		{
+			removeObject(getString()+7);
+		}
+		else if ( strncmp(getString(),"exit/",5) == 0 )
+		{
+			exit(0);
+		}
+				
+		else if ( strncmp(getString(),"command/",8) == 0 )
+		{
+			sendCommandToObject(getString()+8);
+		}
+		else
+		{
+//			cout << " *** monObjects: unknown command" << endl;
+		}
+	} 
+	public: 
+		Command(const char* serviceName);
+}; 
+//==========================================================================
+Command::Command(const char* serviceName)
+	: DimCommand(serviceName,"C")
+{
+}
+//==========================================================================
+int convertStringToHex(char* outstr, char* instr, int noutMax)
+{
+/* It will convert input character string to a string, in which every character on input
+  is interpreted as integer and is represented by exactly two characters. For example:
+  character 7  is represented by character 3 followed by chacter 7 or
+  BELL character is represented by character 0 followed by character 7 
+  instr   is a pointer to the input string
+  outstr  is a pointer to the output string
+  noutMax is the max number of characters in the output string. when zero,
+          the function simply returns the number of characters that would be output
+	  into the outstr */
+	  
+	int i;
+	int ich;
+	char* pin;
+	char* pout;
+	
+	int lenin = strlen(instr);
+	int nout = 2*lenin;
+	if ( noutMax == 0 ) { return nout; }
+	if ( nout > noutMax )
+	{ 
+		printf(" Not enough space in the output string \n");
+		return -1;
+	}
+	
+	pin = instr;
+	pout = outstr;
+	
+	for ( i=0; i<lenin; i++)
+	{
+		ich = static_cast<int>(*(pin+i));
+		sprintf(pout,"%02X",ich);
+		pout = pout + 2;
+	}
+	
+	*pout = '\0';
+	return nout;	
+}
+//============================================================================
+int convertHexToString(char* outstr, char* instr, int noutMax)
+{
+/* Each pair of characters (starting with the 0th and the 1st) is interpreted
+   as hex number and converted into the corresponding character. For example
+   the pair 07 is converted into BELL character or
+   the pair 37 is converted into character 7
+   It also follows, that number of characters in the input string has to be
+   even.
+   instr is pointer to the input string
+   outstr is pointer to the output string
+   noutMax  is the max number of characters in the output string. when zero,
+          the function simply returns the number of characters that would be output
+	  into the outstr */
+   
+	int i;
+	int ich;
+	char* pin;
+	char* pout;
+	char buf[3];
+	
+	int lenin = strlen(instr);
+	int nout = lenin/2;
+	
+	if ( (lenin % 2) != 0 )
+	{
+		printf(" No of characters in the input string is not even \n");
+		return -1;
+	}
+	if ( noutMax == 0 ) { return nout; }
+	if ( nout > noutMax )
+	{ 
+		printf(" Not enough space in the output string \n");
+		return -1;
+	}
+	
+	pin = instr;
+	pout = outstr;
+
+	for ( i=0; i<lenin; i = i + 2 )
+	{
+		buf[0] = *(pin+i); buf[1] = *(pin+i+1);
+		sscanf(buf,"%X",&ich);
+		*pout = static_cast<char>(ich);
+		pout = pout +1;
+	}
+	
+	*pout = '\0';
+	return nout;
+}
+//==========================================================================
+void MyObject::getParam(SmiParam* ptrPar, string& parString) {
+    int parType, hasValue;
+    
+    parString = "";
+    
+    parType = ptrPar->getType();
+    hasValue = ptrPar->hasValue();
+	
+    parString = parString + "/" + ptrPar->getName() ; 
+	
+    if (parType == 0) { parString += "(S)";}
+    else if (parType == 1) { parString += "(I)";}
+    else if (parType == 2) { parString += "(F)";}
+	
+    if (hasValue) {
+	parString += "=";
+        if (parType == 0) {
+		char* point = ptrPar->getValueString();
+//		printf("\n\n parameter %s \n value :",ptrPar->getName());
+		int nout = convertStringToHex(NULL,point,0);
+		if ( nout < 0 ) { exit (1);}
+		char* tempVal = new char[nout+1];
+		convertStringToHex(tempVal, point, nout);
+			
+		parString += tempVal;
+		delete [] tempVal; 
+	}
+	else if (parType == 1) {
+            int vali=ptrPar->getValueInt();
+	    char cvali[10];
+	    sprintf(cvali,"%i",vali);
+	    parString += cvali;
+        }
+        else if (parType == 2) {
+            double  valf=ptrPar->getValueFloat();
+            char cvalf[15];
+	    sprintf(cvalf,"%e",valf);
+	    parString += cvalf;
+	}
+    }    
+    return;
+}
+//==========================================================================
+void MyObject::getPars(string& parsString) {
+    SmiParam* ptrPar;
+    string parString;
+    int first = 0;
+    
+    parsString = "";
+
+    int parType, hasValue;
+        
+    while ( ptrPar = getNextParam() ) {
+        if ( first == 0 ) {
+	    first = 1;
+	    parsString = "/*pars";
+	}
+	getParam(ptrPar,parString);
+	parsString += parString;
+    }
+    if (first == 1) {parsString += "/*end_pars";}
+    return;
+}
+//==========================================================================
+void MyObject::getActionPars(SmiAction* ptrAct,string& parsString) {
+    SmiParam* ptrPar;
+    string parString;
+    int first = 0;
+    
+    parsString = "";
+
+    int parType, hasValue;
+        
+    while ( ptrPar = ptrAct->getNextParam() ) {
+        if ( first == 0 ) {
+	    first = 1;
+	    parsString = "/*pars";
+	}
+	getParam(ptrPar,parString);
+	parsString += parString;
+    }
+    if ( first == 1) {parsString += "/*end_pars";}
+    return;
+}
+//============================================================================
+void MyObject::smiStateChangeHandler() {
+    char* state = getState();
+    string timeString = getTimeString();
+    SmiParam* ptrPar;
+    SmiAction* ptrAct;
+    string parsString;
+    
+    cout << timeString.substr(4,15) << "/*object/" 
+         << getName() << "/*state/";
+    
+    if (state != 0) {
+        cout  << state  ;
+	getPars(parsString);
+	cout << parsString;
+	cout << "/*end_state";
+	
+	while ( ptrAct = getNextAction() ) {
+	    cout << "/*action" ;
+	    cout << "/" << ptrAct->getName();
+	    getActionPars(ptrAct,parsString);
+	    cout << parsString;
+	    cout << "/*end_action";
+	}
+	cout << endl;
+    }
+    else {
+        cout << "&DEAD/*end_state" << endl ;
+    }
+}
+//===========================================================================
+void MyObject::smiExecutingHandler() {
+    string timeString = getTimeString();
+
+    if ( getBusy() ) {
+        cout << timeString.substr(4,15) << "/*object/" << getName() << "/*state/";
+        cout << "&Busy/*end_state" << endl;
+    }
+}
+
+//===========================================================================
+void testVersion(ifstream& infile) {
+    string basicString = "Dec 10 14:38:32/*object/&o/*state/READY&n/*pars/PAR&n(S)=UNDEFINED/BPAR&n(S)/CPAR&n(I)=6/DPAR&n(F)=1.700000e+00/*end_pars/*end_state/*action/GOTO_SECOND&n/*pars/APAR&n(S)=5/BPAR&n(S)/*end_pars/*end_action/*action/STAY_HERE&n/*pars/CPAR&n(S)/*end_pars/*end_action";
+    string objName;
+    string outString; int i;
+
+    int num = 0; char cnum[4];
+
+    while (getline((istream&)infile,objName,'\n')) {
+        num++;
+        sprintf(cnum,"%i",num);
+	outString = basicString;
+        i = outString.find("&o",0);
+        outString.replace(i,2,objName.c_str());
+        while ( 1 == 1 ) {
+            i = outString.find("&n",i+1);
+            if ( i == string::npos ) break;
+            outString.replace(i,2,cnum);
+        }
+        sleep(1);
+        cout << outString << endl;
+    }
+
+    return;
+}
+//===========================================================================
+void registerObject(char* name) {
+
+	MyObject* ptnrObject;
+	MyObject* ptr;
+    
+	ptnrObject = new MyObject(name);
+
+	if ( pFirstRegisteredObject == 0 )
+	{  /* the first object to be registered */
+		pFirstRegisteredObject = ptnrObject;
+		ptnrObject->prev = 0;
+		ptnrObject->next = 0;
+	}
+	else
+	{
+	/***  check whether the object was already registered */
+		if ( findObject(name) != 0 ) 
+		{
+			cout << "error/Object " << name << " already registered" << endl;
+			return;
+		}
+		
+		ptr = pFirstRegisteredObject;
+		while ( ptr->next != 0 ) ptr = ptr->next; 
+		
+		ptr->next = ptnrObject; /*put the new object at the end */
+		ptnrObject->prev = ptr;
+		ptnrObject->next = 0;  /* mark the end of the list */
+	}
+					
+	return;
+}
+//==============================================================================
+void removeObject(char* name) {
+	string timeString = getTimeString();
+
+	MyObject* ptnrObject;
+	MyObject* ptnrNext;
+	MyObject* ptnrPrev;
+	
+	ptnrObject = findObject(name);
+	
+	if ( ptnrObject == 0 ) 
+	{
+		cout << timeString.substr(4,15)
+		     << "/*error/Object " << name << " is not registered"
+		      << endl;
+		return;
+	}
+	
+	ptnrPrev = ptnrObject->prev;
+	ptnrNext = ptnrObject->next;
+	
+	if ( ptnrObject == pFirstRegisteredObject )
+	{   /* It is the first object */
+		pFirstRegisteredObject = ptnrNext;
+		if ( ptnrNext == 0 )
+		{  /* it is the only object */
+		}
+		else 
+		{
+			ptnrNext->prev = 0;
+		}
+	}
+	else 
+	{
+		ptnrPrev->next = ptnrNext;
+		if ( ptnrNext == 0 )
+		{  /* it is the last object */
+		}
+		else
+		{
+			ptnrNext->prev = ptnrPrev;
+		}
+	}
+	delete ptnrObject;
+	cout << timeString.substr(4,15)
+		<< "/*info/removed/" << name << endl;
+	return;
+} 
+//===========================================================================
+SmiAction* findAction(MyObject* ptr, char* actionName) {
+	SmiAction* pa;
+	
+	while ( pa = ptr->getNextAction() )
+	{
+		if ( strcmp(pa->getName(),actionName) == 0 )
+		{
+			return pa;
+		}
+	}
+	return 0;
+}
+//===========================================================================
+MyObject* findObject(char* name) {
+	MyObject* ptr;
+	
+	ptr = pFirstRegisteredObject;
+
+	while ( ptr != 0 )
+	{
+		if ( strcmp(name,ptr->getName()) == 0 )
+		{
+			return ptr;
+		}
+	 	ptr = ptr->next;
+	} 
+	return 0;
+}
+//===========================================================================
+void sendCommandToObject(char* commandString) {
+	char* ptemp;
+	char* pObjectName;
+	char* pActionName;
+	char* pParString;
+	
+	
+	ptemp = new char[strlen(commandString)+1];
+	strcpy(ptemp,commandString);
+//	cout << "Received command :" << ptemp << endl;
+	
+	pObjectName = strtok(ptemp,"/");
+	
+	pActionName = strtok(NULL,"/");
+	
+//	cout << "Object |" << pObjectName << "| Action : |" << pActionName << "|" << endl;
+	
+	
+	MyObject* ptrObj = findObject(pObjectName);
+	if ( ptrObj == 0 ) {
+		cout << " Object |" << pObjectName << "| not found" << endl;
+		return;
+	}
+//	cout << " Object |" << ptrObj->getName() << "| found \n" << endl;
+
+//	cout << "|" << pObject << "|  |" << pAction << "|" << endl;
+	SmiAction* pa = findAction(ptrObj,pActionName); 
+	if ( pa == 0 )
+	{
+		cout << " Action |" << pActionName << "| not found" << endl;
+		return;
+	}
+//	cout << " Sending " << pActionName << endl;
+
+	
+        while ( pParString = strtok(NULL,"/") )
+	{
+//		cout << pParString << endl;
+		char* pName = pParString;
+		char* pNameEnd = strstr(pName," "); *pNameEnd = '\0';
+		char* pType = pNameEnd + 1; *(pType+1) = '\0';
+		char* pVal = pType + 2;
+//		cout << "monObjects....Name :|" << pName << "| Type :|" << pType << "| Value :|" << pVal << "|" << endl;
+		if ( *pType == 'S' ) 
+		{
+			int nout = convertHexToString(NULL,pVal,0);
+			if ( nout < 0 ) { return;}
+			char* tempVal = new char[nout+1];
+			convertHexToString(tempVal, pVal, nout);
+//			cout << " Converted value |" << tempVal << "|" << endl;
+			int iflg = pa->setParam(pName,tempVal);
+//			cout << " iflg : " << iflg << endl;
+			delete [] tempVal;
+		}
+		if ( *pType == 'I' ) 
+		{
+			int iVal;
+			sscanf(pVal,"%d",iVal);
+			pa->setParam(pName,iVal);
+		}
+		if ( *pType == 'F' ) 
+		{
+			double dVal;
+			sscanf(pVal,"%f",dVal);
+			pa->setParam(pName,dVal);
+		}		
+	} 
+
+	pa->send();
+	delete [] ptemp;
+
+	return;
+}
+//===========================================================================
+int getNode(string& node) {
+	char hostname[256];
+	int flg;
+	
+	flg = gethostname(hostname,255);
+	if ( flg != 0 ) {
+		return 1;
+	}
+//	cout << flg << hostname << endl;
+	node = hostname;
+	
+	return 0;
+}	
+//===========================================================================
+int main(int argc, char* argv[]) {
+
+	string serverName; int flg;
+	if ( getNode(serverName) != 0 ) {
+		cerr << "Error  Can not determine pid/host " << endl;
+		exit(1);
+	}
+	
+	if ( argc == 2 ) {
+		serverName = serverName + "/" + argv[1];
+	}
+	serverName = serverName + "/SMIGUI";
+		
+	string serviceName = serverName + "/CMNDS";
+	Command cmnd(serviceName.c_str());
+	
+	DimServer::start(serverName.c_str());
+
+/*    if ( argc <= 1 ) {
+        cerr << "Error No object file specified" << endl;
+        exit(1);
+    }
+       
+    string objectFile;
+    objectFile = argv[1];
+    
+    logflg = 0; 
+
+    if (argc > 1) {
+        logflg = 1;
+	string logFileName;
+	logFileName = argv[2];
+
+        logFile.open(logFileName.c_str());
+
+    }
+ 
+      
+    FILE *pObjectFile = fopen(objectFile.c_str(),"r+");
+
+    if (pObjectFile == NULL) {
+        cerr << "Failed to open object file " << objectFile << endl;
+	exit(21);
+    }
+
+    if (logflg) logFile << " Opened object list :" << objectFile << endl;
+    
+    ifstream infile (objectFile.c_str());
+    string objName;
+
+    getline(infile,objName,'\n');
+    if ( objName == "*test" ) {
+        testVersion(infile);
+        fclose(pObjectFile);
+	while ( 1 ) { sleep(10);}
+    }
+    */
+// This is the real thing...check the dns server
+    
+    if ( argc > 3) {
+        putenv("DIM_DNS_NODE", argv[3]);
+    }
+    
+    if ( getenv("DIM_DNS_NODE") == 0 ) {
+        cerr << "***Error monObjects DIM_DNS_NODE is undefined" << endl;
+        exit(11);
+    } 
+    
+    DimCurrentInfo dns("DIS_DNS/VERSION_NUMBER",2,-1);
+    if ( dns.getInt() == -1 ) {
+        cerr << "***Error monObjects Name server is not running" << endl;
+        exit(12);
+    } 
+ /*      
+    void* refistream;
+    while ( 1 ) {
+        registerObject(objName);
+        refistream = getline(infile,objName,'\n');
+	if (!refistream) break;
+    }
+    fclose(pObjectFile);
+   */ 
+    Timer timer(timer_tick);
+
+    while ( 1 ) { sleep(10);}
+    
+    exit(0);
+
+
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/monObjectsServiceName.cxx smixx/src/utilities/monObjectsServiceName.cxx
--- smixx_web/src/utilities/monObjectsServiceName.cxx	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/monObjectsServiceName.cxx	2007-01-18 12:14:16.000000000 +0100
@@ -0,0 +1,31 @@
+#include <iostream>
+#include <stdio.h>
+#include <unistd.h>
+#include <string.h>
+using namespace std;
+int main() {
+
+	int pid;
+	char cpid[10];
+	char hostname[256];
+	int flg;
+	char serviceName[512];
+	
+	pid =getpid();
+	flg = gethostname(hostname,255);
+	if ( flg != 0 ) {
+		return 1;
+	}
+	
+	strcpy(serviceName,"SMIGUI/SERVER/CMNDS/");
+	
+	strcat(serviceName,hostname);
+	strcat(serviceName,"/");
+	
+	sprintf(cpid,"%d",pid);
+	strcat(serviceName,cpid);
+	
+//	printf("%s",serviceName);
+	cout << serviceName;
+    return 0;
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/serverInError.cxx smixx/src/utilities/serverInError.cxx
--- smixx_web/src/utilities/serverInError.cxx	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/serverInError.cxx	2005-07-14 16:04:23.000000000 +0200
@@ -0,0 +1,32 @@
+#include <iostream>
+#include <dic.hxx>
+#include <string>
+using namespace std;
+
+
+int main()
+{
+	string smiDomain;
+    char *service, *format;
+    int type;
+
+    DimBrowser brsm, br;
+
+    brsm.getServices("*_SMI/VERSION_NUMBER");
+    while( type = brsm.getNextService(service,format) )
+    {
+        DimCurrentInfo ver(service,-1);
+
+        cout << ver.getInt() << "  " << service << endl;    
+    }
+
+    br.getServices("*::*/VERSION_NUMBER");
+    while( type = br.getNextService(service,format) )
+    {
+        DimCurrentInfo ver(service,-1);
+
+        cout << ver.getInt() << "  " << service << endl;    
+    }
+
+    return 0;
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/tellMonObjects.cxx smixx/src/utilities/tellMonObjects.cxx
--- smixx_web/src/utilities/tellMonObjects.cxx	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/tellMonObjects.cxx	2007-01-19 16:18:24.000000000 +0100
@@ -0,0 +1,54 @@
+
+//---------------------- Client sends commands ---------------
+#include <stdlib.h>
+#include <iostream>
+#include <string>
+#include <dic.hxx> 
+using namespace std;
+//===========================================================================
+int getNode(string& node) {
+	char hostname[256];
+	int flg;
+	
+	flg = gethostname(hostname,255);
+	if ( flg != 0 ) {
+		return 1;
+	}
+//	cout << flg << hostname << endl;
+	node = hostname;
+	
+	return 0;
+}
+//==========================================================================
+int main( int argc, char* argv[] ) 
+{ 
+	string serviceName; int flg; int iarg;
+	
+//    printf("%d\n",argc);
+	if ( argc < 2 ) {
+		printf(" ***error  no arguments \n");
+		exit (1);
+	}
+	
+	if ( getNode(serviceName) != 0 ) {
+		cerr << "Error  Can not determine pid/host " << endl;
+		exit(1);
+	}
+	
+	iarg = 1;
+	if (argc == 3) {
+		serviceName = serviceName + "/" + argv[1];
+		iarg = 2;
+	} 
+	serviceName = serviceName + "/SMIGUI/CMNDS";
+
+
+//cout << "|" << serviceName.c_str() << "|" << endl;
+//cout << "|" << argv[iarg] << "|" << endl;
+	
+	DimClient::sendCommand(serviceName.c_str(),argv[iarg]); 
+	exit (0);
+} 
+
+//------------------------------------------------------------
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/src/utilities/waitObjectNotBusy.cxx smixx/src/utilities/waitObjectNotBusy.cxx
--- smixx_web/src/utilities/waitObjectNotBusy.cxx	1970-01-01 01:00:00.000000000 +0100
+++ smixx/src/utilities/waitObjectNotBusy.cxx	2005-07-14 16:04:23.000000000 +0200
@@ -0,0 +1,108 @@
+//----------------------   M a i n   P r o g r a m  --------------------------
+// $Id
+#include <iostream>
+#include <string>
+using namespace std;
+#include <stdlib.h>
+#include <smiuirtl.hxx>
+#include "smixx_common.hxx"
+
+#include <ctype.h>
+
+//==========================================================================
+class MyObject: public SmiObject
+{    
+    void  smiStateChangeHandler();
+    void smiExecutingHandler();
+    
+public:
+    MyObject(char* fullObjName): SmiObject(fullObjName) { }
+};
+//==========================================================================
+void MyObject::smiStateChangeHandler() {
+    char* state = getState();
+    if (state != 0) {
+        cout << getName() << " in state " << state << endl;
+    }
+    else {
+        cout << getName() << " in state " << "*DEAD" << endl;
+    }
+}
+//===========================================================================
+void MyObject::smiExecutingHandler() {
+    if ( getBusy() ) {
+        cout << getName() << " Busy" << endl;
+    }
+}
+//===========================================================================
+int main(int argc, char* argv[]) {
+// waitObjectNotBusy 'domain'::'object  'timeout'
+//         0                  1             2
+
+    string fullObjectName;
+    string smiDomain;
+    string objectName;
+    int timeout;
+
+    if ( argc <= 1 ) {
+        cerr << "Error No object specified" << endl;
+        exit(1);
+    }
+    
+    if ( argc >= 3 ) {
+        sscanf(argv[3],"%d",timeout);
+    }
+    
+    if ( getenv("DIM_DNS_NODE") == 0 ) {
+        cerr << "***Error getObjectState DIM_DNS_NODE is undefined" << endl;
+        exit(11);
+    } 
+    
+    DimCurrentInfo dns("DIS_DNS/VERSION_NUMBER",2,-1);
+    if ( dns.getInt() == -1 ) {
+        cerr << "***Error getObjectState Name server is not running" << endl;
+        exit(12);
+    }
+    
+    int i;
+    for(i = 0; i < strlen(argv[1]); i++) {
+          fullObjectName += toupper(argv[1][i]);
+    }
+
+    int ipos = fullObjectName.find("::");
+
+    if ( ipos < 0 ) {
+        cerr << "***Error Domain not specified" << endl;
+        exit(2);
+    }
+    
+    smiDomain = fullObjectName.substr(0,ipos);
+    
+    objectName = fullObjectName.substr(ipos+2,fullObjectName.length());
+
+    char* ptnr = const_cast<char*> (smiDomain.c_str());
+    
+    SmiDomain domain(ptnr);
+    
+    int numOfObjects = domain.getNObjects();
+    if ( numOfObjects == 0 ) {
+        cerr << "***Error Domain is not running" << endl;
+        exit(3);
+    }
+
+    ptnr = const_cast<char*> (fullObjectName.c_str());
+    
+    MyObject object(ptnr);
+    
+
+    if ( object.getState() == 0 ) {
+        cerr << "***Error Object does not exists" << endl;
+        exit(4);
+    }
+
+    while ( 1 ) { sleep(10);}
+    
+    exit(0);
+
+
+}
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/Makefile.am smixx/support/Makefile.am
--- smixx_web/support/Makefile.am	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/Makefile.am	2006-05-19 17:06:54.000000000 +0200
@@ -0,0 +1,25 @@
+#
+# 
+#
+EXTRA_DIST		= smixx-config.in smixx.spec
+bin_SCRIPTS		= smixx-config
+aclocaldir		= $(datadir)/aclocal
+dist_aclocal_DATA	= smixx.m4
+dist_man_MANS		= smixx-config.1	\
+			  smiSM.1		\
+			  smiGen.1		\
+			  smiTrans.1		\
+			  smiGUI.1		\
+			  smiPreproc.1		\
+			  smiSendCommand.1	\
+			  smiKill.1		\
+			  smiListDomain.1	\
+			  smiDomainExists.1	\
+		          smiProxyExists.1	\
+			  smiGetVersions.1	\
+			  smiGetDomains.1	\
+			  smimake.1
+
+#
+# EOF
+#
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiDomainExists.1 smixx/support/smiDomainExists.1
--- smixx_web/support/smiDomainExists.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiDomainExists.1	2006-05-19 17:00:38.000000000 +0200
@@ -0,0 +1,56 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIDOMAINEXISTS 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiDomainExists \- checks if a domain is available
+.SH SYNOPSIS
+.B smiDomainExists
+.I  "DOMAIN"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiDomainExists
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiDomainExists\fP checks if a domain is available.  If so, it
+outputs
+.IP
+\fBsetenv \fIDOMAIN\fB_EXISTS yes\fR
+.PP
+Otherwise, it outputs 
+.IP
+\fBsetenv \fIDOMAIN\fB_EXISTS no\fR
+
+.SH OPTIONS
+None.
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiGUI.1 smixx/support/smiGUI.1
--- smixx_web/support/smiGUI.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiGUI.1	2006-05-14 20:56:53.000000000 +0200
@@ -0,0 +1,77 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIGUI 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiGUI \- generic graphical user interface for SMI domains
+.SH SYNOPSIS
+.B smiGUI
+.RI [ options ] " DOMAIN " [ FILE ]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiGUI
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiGUI\fP starts a generic graphical user interface for the
+specified domain \fIDOMAIN\fR.  The GUI layout can be specified in the
+file \fIFILE\fR.
+.PP
+Included in the Tool Set is a Generic Configurable User Interface for
+visualisation of a specific domain. The UI allows the visualisation of
+the states of objects in a certain domain, as well as sending commands
+to them. The set of objects to be displayed, it's position and
+the color of it's states are configurable.  
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Show summary of options.
+.TP
+.B \-a
+Allocate domain.
+.TP
+.B \-w
+Ignored
+.TP
+.B \-r
+GUI is read-only.
+.TP
+.BI \-d " DOMAIN"
+Domain name
+.TP
+.B \-c " FILE"
+Configuration file for GUI
+.TP
+.BI \-u " USER"
+Set user name 
+.TP
+.SH SEE ALSO
+.BR smiTrans (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiGen.1 smixx/support/smiGen.1
--- smixx_web/support/smiGen.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiGen.1	2006-05-14 20:50:22.000000000 +0200
@@ -0,0 +1,252 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIGEN 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiGen \- generates skeleton/proxy code for user state handlers. 
+.SH SYNOPSIS
+.B smiGen
+.RI [ options ] " FILE"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiGen
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiGen\fP generates as many output files as associated objects each
+one called \fIobject_name\fR\fB_skel.c\fR or
+\fIobject_name\fR\fB_skel.cxx\fR. 
+.PP
+Proxy skelettons can also be generated from the SMI specification
+files by running the Proxy Generator. The output is a file per proxy
+called \fIobject_name\fR\fB_skel.c\fR. I.e. they are C files where
+the possible states and actions are defined and the user can insert 
+own code and decide on the next state of the proxy whenever a command
+is received. The recommended procedure is to copy the file
+\fBobject_name\fB_skel.c\fR to \fIobject_name\fB.c\fR and modify this
+one, if possible store t he user routines in separate files. The
+resulting C code should be linked with the \fBSMIRTL\fR library. At
+run time this process requires as parameter the \fIdomain_name\fR as
+given to the State Manager.  
+.SH "C API"
+SMIRTL implements the routines used by a proxy in order to connect,
+receive commands and transmit state changes to its associated object
+in a SM. These routines are: 
+.TP 
+\fBsmi_attach\fR(\fIobj_name\fB, \fIcommand_handler\fB)
+Parameters:
+.RS
+.TP
+\fBchar\fR *\fIobj_name\fB 
+The name of the associated object to connect
+to. In the form \fIdomain_name\fB::\fIobject_name\fB 
+.TP
+\fBvoid\fR (*\fIcommand_handler\fR)() 
+The routine to be called when a command arrives from the SM,
+\fBhandle_command\fR is called with no parameters.
+.RE
+.IP
+\fBsmi_attach\fR should be called by a proxy at startup in order to
+connect to its associated object in the SM. 
+.TP
+\fBsmi_set_par\fR(\fIpar\fR, \fIvalue\fR, \fItype\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR *\fIpar\fR 
+The parameter name.
+.TP
+\fBvoid\fR *\fIvalue\fR 
+The value of the parameter (passed by reference).
+.TP
+\fBint\fR \fItype\fR 
+The parameter type: (\fBSTRING\fR, \fBINTEGER\fR or \fBBFLOAT\fR).
+.RE
+.IP
+\fBsmi_set_par\fR should be used in order to set object parameters for
+associated objects. If an associated objects has parameters,
+\fBsmi_set_par\fR should be called once for each parameter before the
+first \fBsmi_set_state\fR. Further parameter setting can be done by
+the proxy at any time but they will only take effect at the next
+\fBsmi_set_state\fR.  
+.TP
+\fBsmi_set_state\fR(\fIstate\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR *state 
+The state of the proxy.
+.RE
+.IP
+Set the initial or new state of the proxy by sending it to its
+associated object in the SM. An \fBsmi_set_state\fR should be done at 
+start-up in order to communicate the proxy's initial state. 
+.TP
+\fBsmi_terminate_action\fR(\fIstate\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR *state 
+The state of the proxy.
+.RE
+.IP
+Set the new state of the proxy after executing an action, by sending
+it to its associated object in the SM. 
+.TP
+\fBsmi_get_cmnd\fR(\fIcmnd\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR *\fIcmnd\fR
+The command just received
+.RE
+.IP
+When inside the \fIcommand_handler\fR the user can use this routine to
+get the command, the command is composed of the action name and any 
+parameters in the form \fIaction\fR/\fIpar0\fR=\fIval0\fR/\fIpar1\fR=\fIval1\fR... . 
+.TP
+\fBsmi_get_action\fR(\fIaction\fR, \fIn_params\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR *action 
+The last action received
+.TP
+\fBint\fR n_params 
+Number of parameters with this action
+.RE
+.IP
+When inside the comman_handler the user can use this routine to get
+the action name and nr. of parameters. 
+.TP
+\fBint smi_test_action\fR(\fIaction\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR *action 
+Action name to compare with the received action.
+.RE
+.IP
+Test if the action received is \fIaction\fR. The function returns 1 if
+it is, 0 if not. 
+.TP
+\fBint smi_get_next_par\fR(\fIparam\fR, \fItype\fR, \fIsize\fR)
+.RS
+.IP
+\fBchar\fR *param 
+The name of the parameter
+.TP
+\fBint\fR *type 
+The type of the parameter (\fBSTRING\fR, \fBINTEGER\fR, \fBFLOAT\fR)
+.TP
+\fBint\fR *size 
+The size of the parameter
+.RE
+.IP
+When inside the command handler this routine can be used to retrieve
+the parameters present on a received command. The function will return
+0 when all parameters have been read, otherwise it returns the
+parameter name, the parameter type and the size necessary to store the
+parameter. 
+.TP
+\fBint smi_get_par_value\fR(\fIparam\fR, \fIvalue\fR)
+Parameters:
+.RS
+.TP
+\fBchar\fR 
+*param The name of the parameter
+.TP
+\fBvoid\fR *value 
+The parameter value
+.RE
+.IP
+When inside the command handler this routine can be used to retrieve
+the parameter value for the parameter returned by
+\fBsmi_get_next_par\fR. The value argument will be filled with either
+an integer, a double float or a string (the size was specified in the 
+previous routine) depending on the parameter type. This function can
+also be used directly if the user knows the parameter name, type and
+size. The function will return 0 if the specified parameter does not
+exist. 
+.TP
+\fBsmi_volatile\fR()
+\fBsmi_volatile()\fR makes a proxy live only while its associated SMI
+Domain is active, i.e., a proxy can call \fBsmi_volatile()\fR
+(normally at start-up) in order to die whenever the SMI domain the
+proxy is attached to dies. 
+.SH "C++ API"
+.RS
+class SmiProxy
+.br
+{
+.br
+public:
+.br
+  SmiProxy(char* name);
+  SmiProxy(); 
+  ~SmiProxy(); 
+  void   attach(char* domain);
+  void   attach(char* domain, char * name);
+  void   setVolatile();
+  int    setState(char* state);
+  char*  getState();
+  int    setParameter(char* parName, int parValue);
+  int    setParameter(char* parName, double parValue);
+  int    setParameter(char* parName, char* parValue);
+  int    getParameterInt(char* parName);
+  double getParameterFloat(char* parName);
+  char*  getParameterString(char* parName);
+  int    getParameterType(char* parName);
+.br
+};
+.RE
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Show summary of options.
+.TP 
+.B \-p
+Generate proxies.
+.TP
+.B \-c
+Generate C proxies.
+.TP
+.B \-C
+Generate C++ proxies (default).
+.TP
+.B \-m
+Generate a Makefile for the proxies. 
+.TP
+.B \-i
+Generate include files for SMI objects. 
+.TP
+.SH SEE ALSO
+.BR smiTrans (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiGetDomains.1 smixx/support/smiGetDomains.1
--- smixx_web/support/smiGetDomains.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiGetDomains.1	2006-05-19 17:05:55.000000000 +0200
@@ -0,0 +1,51 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIGETDOMAINS 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiGetDomains \- lists available domains
+.SH SYNOPSIS
+.B smiGetDomains
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiGetDomains
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiGetDomains\fP lists available domains, on one line each.  The
+format is 
+.IP
+\fIDOMAIN\fB@\fIHOST\fR
+
+.SH OPTIONS
+None.
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiGetVersions.1 smixx/support/smiGetVersions.1
--- smixx_web/support/smiGetVersions.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiGetVersions.1	2006-05-19 17:03:22.000000000 +0200
@@ -0,0 +1,47 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIGETVERSIONS 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiGetversions \- get version of SMI++
+.SH SYNOPSIS
+.B smiGetVersions
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiGetversions
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiGetVersions\fP reports the version numbers of SMI++.
+.SH OPTIONS
+None.
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiKill.1 smixx/support/smiKill.1
--- smixx_web/support/smiKill.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiKill.1	2006-05-14 23:37:05.000000000 +0200
@@ -0,0 +1,46 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIKILL 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiKill \- kill a SM for the specified domain
+.SH SYNOPSIS
+.B smiKill
+.RI "DOMAIN"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiKill
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiKill\fP kills the SM for the specified domain \fIDOMAIN\fR.
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiListDomain.1 smixx/support/smiListDomain.1
--- smixx_web/support/smiListDomain.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiListDomain.1	2006-05-19 17:00:30.000000000 +0200
@@ -0,0 +1,48 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMILISTDOMAIN 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiListDomain \- list services in a domain
+.SH SYNOPSIS
+.B smiListDomain
+.I "DOMAIN"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiListDomain
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiListDomain\fP lists the objects in the specified domain \fIDOMAIN\fR.
+.SH OPTIONS
+None.
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiPreproc.1 smixx/support/smiPreproc.1
--- smixx_web/support/smiPreproc.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiPreproc.1	2006-05-14 22:30:56.000000000 +0200
@@ -0,0 +1,69 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMISM 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiPreproc \- pre-process an SMI input file
+.SH SYNOPSIS
+.B smiPreproc
+.RI [ options ] " INPUT OUPUT"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiPreproc
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiPreproc\fP pre-processes an SMI input file, expanding C
+pre-processor statements.  That means that one can keep partial SMI
+systems in separate files and put them together in a simple steering
+file. 
+.PP
+The input file \fIINPUT\fR is an SMI specification file with possibly
+C pre-processor statements.  The output file \fIOUTPUT\fR is also a
+valid SMI specification file, with all pre-processor statements
+expanded. 
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Show summary of options.
+.TP
+.B \-v
+Show version of program.
+.TP
+.BI \-d LEVEL
+Set the debug level
+.TP
+.BI \-p " C-pre-preprocessor-flags"
+Specify the C pre-processor flags (e.g., \fB-D\fIMACRO\fR, \fB-I\fIPATH\fR).
+.TP
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiTrans (1),
+.BR smiGen (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiProxyExists.1 smixx/support/smiProxyExists.1
--- smixx_web/support/smiProxyExists.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiProxyExists.1	2006-05-19 17:02:02.000000000 +0200
@@ -0,0 +1,56 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIPROXYEXISTS 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiProxyExists \- checks if a proxy is available
+.SH SYNOPSIS
+.B smiProxyExists
+.I  "PROXY"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiProxyExists
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiProxyExists\fP checks if a proxy is available.  If so, it
+outputs
+.IP
+\fBsetenv \fIPROXY\fB_EXISTS yes\fR
+.PP
+Otherwise, it outputs 
+.IP
+\fBsetenv \fIPROXY\fB_EXISTS no\fR
+
+.SH OPTIONS
+None.
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiSM.1 smixx/support/smiSM.1
--- smixx_web/support/smiSM.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiSM.1	2006-05-14 19:34:47.000000000 +0200
@@ -0,0 +1,64 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMISM 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiSM \- starts a SM for the specified domain
+.SH SYNOPSIS
+.B smiSM
+.RI [ options ] "DOMAIN FILE"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiSM
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiSM\fP starts a SM for the specified domain \fIDOMAIN\fR behaving
+as specified in the compiled SMI file \fIFILE\fR. 
+.PP
+The \fIFILE\fR argument should be the result of running
+\fBsmiTrans\fR on an SMI specification file. 
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Show summary of options.
+.TP
+.B \-v
+Show version of program.
+.TP
+.BI \-d LEVEL
+Set the debug level
+.TP
+.BI \-dns NODE
+Set the DIM Domain Name Server to be at \fINODE\fR
+.TP
+.SH SEE ALSO
+.BR smiTrans (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiSendCommand.1 smixx/support/smiSendCommand.1
--- smixx_web/support/smiSendCommand.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiSendCommand.1	2006-05-14 23:29:43.000000000 +0200
@@ -0,0 +1,64 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMISENDCOMMAND 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiSendCommand \- send a command to a SMI domain object 
+.SH SYNOPSIS
+.B smiSendCommand
+.RI "OBJECT COMMAND " [ options ] " PROXY"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiSendCommand
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiSendCommand\fP sends the command \fICOMMAND\fR to an object
+\fBOBJECT\fR in an SMI domain.   
+.PP
+The object must be qualified with the
+domain, like \fIDOMAIN\fR::\fIOBJECT\fR. 
+.PP
+The command should have the form \fIaction\fR=\fI"value"\fR or
+\fIparameter\fR=\fI"value"\fR. 
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Show summary of options.
+.TP
+.B \-v
+Show version of program.
+.TP
+.BI \-dns NODE
+Set the DIM Domain Name Server to be at \fINODE\fR
+.TP
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smiTrans.1 smixx/support/smiTrans.1
--- smixx_web/support/smiTrans.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smiTrans.1	2006-05-14 20:22:24.000000000 +0200
@@ -0,0 +1,372 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMITRANS 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smiTrans \- byte-compiles an SMI specification file
+.SH SYNOPSIS
+.B smiTrans
+.RI [ options ] INPUT [ OUTPUT ]
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smiTrans
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmiTrans\fP translates an SMI specification file to something
+\fBsmiSM\fR can execute. 
+.PP
+The \fIOUTPUT\fR argument isn't given, then it will be the same as the
+input file, only with \fB.smi\fR replaced by \fB.sobj\fR.
+.SH "SPECIFICATION LANGUAGE"
+.TP
+\fBClass\fR : \fIclass-name\fR [ \fB/ associated\fR ]
+This statement is used to describe a set of identical objects. The
+description of the set begins with the Class declaration, which
+specifies also some of the characteristics of the objects. All the
+statements concerning the set of objects must immediately follow. For
+the \fBASSOCIATED\fR class, the same considerations apply as for the 
+associated object (see the \fBOBJECT\fR declaration). 
+.TP
+\fBObject\fR : \fIobject-name\fR [ \fBis_of_class\fR \fIclass-name\fR ] [ \fB/ associated\fB ]
+The description of an object begins with the Object declaration, which
+specifies also some of the characteristics of the object. All the
+statements concerning one object must follow immediately its
+declaration.
+.IP
+An associated object does not execute itself the action it
+receives. It transmits the command to its associated process and
+updates its state according to the variation of the associated
+process. Therefore the SM code of an associated object must only
+contain the list of states and for each of them the list of actions
+accepted in each state. The associated process may belong to a domain
+different from the one of the SM itself: in this case the domain must
+be explicitly specified as a prefix of the object name, separated
+from it by a double colon (e.g. \fBTPC::HV\fR indicates the object
+\fBHV\fR in the domain \fBTPC\fR). 
+.IP
+The \fBIS_OF_CLASS\fR qualifier specifies that the object inherits the
+description and all the characteristics of the class 
+.TP
+\fBObjectSet\fR : \fIset-name\fR [ \fI{obj1, obj2, ...objn}\fR ]
+It is possible to group objects into groups (sets) and then perform
+actions and tests on all members of the set 
+.IP
+The optional construct \fI{obj1, obj2, ...objn}\fR initialises the set
+with the listed objects. 
+.IP
+An object can be dynamically inserted in (removed from) a declared
+set. This is achieved by executing the following 3 instructions: 
+.RS
+.IP
+\fBinsert\fR \fIobject-name\fR  \fBin\fR \fIset-name\fR
+.IP
+\fBremove\fR \fIobject-name\fR  \fBfrom\fR \fIset-name\fR
+.IP
+\fBremoveAll\fR \fBfrom\fR \fIset-name\fR
+.RE
+.IP
+Usage in simple conditions
+.RS
+.IP
+( \fBany_in\fR \fIset-name\fR  [ \fBnot\fR_] \fBin_state\fR  {...}   )
+.IP
+( \fBall_in\fR \fIset-name\fR  [ \fBnot\fR_] \fBin_state\fR  {...}   )
+.RE
+.IP
+All the above are allowed to be a part of a composite condition
+.IP
+Usage in \fBDO\fR action
+.RS
+.IP
+\fBdo\fR \fIaction-name\fR \fBall_in\fR \fIset-name\fR
+.RE
+.TP
+\fBAction\fR : \fIaction-name\fR [ \fIparam1-name\fR [ = \fIdefault_value\fR] , ...] [ \fB/ associated\fR ]
+This statement declares a command accepted by the object in a given
+state (the one preceding the \fBACTION\fR declaration). If the object
+accepts the same command in different states, this command must be
+declared for all the states.
+.IP
+For a logical object the \fBACTION\fR declaration must be followed by
+the instructions (executable statements) that the object performs at
+reception of the command. On the other hand, an associated object does
+not execute any action but sends the command as a message string to
+the associated process; therefore there are no executable statements
+following the \fBACTION\fR declaration.
+.IP
+If the action may receive a parameter, the parameter must be declared
+at this stage. This parameter can be used later on \fBDO\fR
+instructions.  
+.TP
+\fBState\fR : \fIstate-name\fR [\fB/ initial_state\fR] [ \fB/ dead_state\fR ]
+This statement is used to declare one of the possible states an object
+can take. The State declaration may be followed by all the \fBWHEN\fR
+and \fBACTION\fR statements that apply to this state.
+.IP
+\fBINITIAL_STATE\fR is a state qualifier whose semantics depends on
+whether the object is associated or not. In the case of logical
+objects it indicates that the object must be put in the flagged state
+when the SM program starts up. In the case of associated objects, the
+flagged state is the one that the object initially assumes when a
+process becomes associated with it. At the SM start-up, the object may
+also assume this state, if the associated process is running and it
+has not yet specified a state itself. By default, the initial state is
+the first one declared. 
+.IP
+\fBDEAD_STATE\fR is a state qualifier which only applies to associated
+objects. It designates the state to be assigned to an object when the
+associated process aborts or in general is not running. The behaviour
+of an object as well depends on whether there is a state flagged with
+this qualifier. 
+.IP
+If no state is flagged, when the associated process aborts the object
+goes into a hung state that forbids any further operations. All the
+command arriving to this object (including \fBIF\fR statements
+checking its state) will be put in a queue (the originating actions
+will be suspended) until the associated process resumes the
+operations. There is no means by which other objects can test this
+condition.
+.IP
+On the other hand, if one of the states of an object has been flagged
+with the \fBDEAD_STATE\fR qualifier, then the object remains active
+even while the associated process is not running. The received
+commands are accepted and discarded (since there is no active
+partner); the \fBIF\fR statements work as usual, namely any object can
+check for this state
+.TP
+\fBdo\fR \fIaction-name\fR [ (\fIparam1-name\fR=\fIvalue\fR , ...)] \fIobject-name\fR
+This statement allows an object to trigger further actions on itself
+or on other objects during the execution of an action.
+.IP
+
+If the destination object is associated, parameters can be specified,
+which will be transmitted within the command string. The parameters
+must be enclosed between brackets; Values can be ascii strings
+enclosed in '"' or parameters received by the current \fBACTION\fR
+(see \fBACTION\fR declaration). 
+.IP
+Example:
+.RS
+.IP
+\fBdo\fR START (run_number="37") RUN_CONTROL
+.RE
+.IP
+or
+.RS
+.IP
+\fBAction\fR : START_RUN (new_run_number)
+     \fBdo\fR START (run_number = new_run_number) RUN_CONTROL
+.RE
+.IP
+If we assume, in the previous example, that \fBnew_run_number\fR
+translates to 37, the object \fBrun_control\fR will receive in both
+cases a command 
+string with the following format: 
+.RS
+.IP
+start /run_number=37
+.RE
+.TP
+.BI move_to " state-name"
+This instruction will terminate the execution of the current action
+and the object will assume the new state state-name.
+.IP
+Usage in \fBWHEN\fR statement
+.RS
+.IP
+\fBwhen\fR (\fIcondition\fR) \fBmove_to\fR \fIstate-name\fR
+.RE
+.IP
+when \fIcondition\fR becomes true, the object will transit from the
+current state into the state \fIstate-name\fR. There is no need to
+invent a special action to do this. 
+.IP
+\fBNB\fR: The old version of this instruction :
+.RS
+.IP
+\fBterminate_action\fR / \fBstate\fR = \fIstate-name\fR
+.RE
+.IP
+still works.
+.TP
+\fBif\fR \fIcondition\fR \fBthen\fR \fIinstructions\fR [\fBelse\fR \fIstatements\fI] \fBendif\fR
+The statement conditionally executes a block of instructions. The
+condition can be a logical expression combining the state of various
+objects with logical operators:
+.IP
+Example:
+.RS
+.IP
+\fBif\fR ( TAPE1 \fBin_state\fR END_OF_TAPE \fBor\fR ALARM \fBin_state\fR ON)
+       \fBand\fR ( RUN \fBnot_in_state\fR DORMANT) \fBthen\fR
+  \fBdo\fR STOP RUN
+\fBendif\fR
+.RE
+.IP
+The \fBIF\fR statement realizes also the synchronization between all
+the objects whose state is tested in the condition. Before evaluating
+the condition, all the objects will execute the pending actions (which
+may be present in a queue). The state reached after the execution of
+these actions is then used for the evaluation of the condition and
+will remain the same up to the execution of the \fBENDIF\fR. The
+statements following the \fBTHEN\fR up to the \fBELSE\fR are executed
+if the condition is true. The statements following the \fBELSE\fR up
+to the \fBENDIF\fR are executed if the condition is false.
+.TP
+\fBwhen\fR \fIcondition\fR \fBdo\fR \fIaction-name\fR
+The \fBWHEN\fR statement allows an object to react to unsolicited
+state changes of some other objects. The when statement applies to one
+state only: if the logical condition becomes true when the object is
+in this state, the object starts to execute the action specified in
+the when statement. This action (and all the actions on any other
+object originated by it) will be processed at a higher priority. 
+.IP
+The condition of the when statement can be a logical expression
+combining the state of various objects with logical operators, e.g.:
+.RS
+.IP
+\fBwhen\fR ( ( BEAM \fBnot_in_state\fR ON ) \fBor\fR 
+       ( SLOW_CONTROL \fBin_state\fR ALARM ) ) \fBdo\fB
+STOP
+.RE
+.SH EXAMPLE
+.RS
+\fBobject\fR: AUTO_PILOT
+ \fBstate\fR: off
+  \fBaction\fR: ACTIVATE
+   \fBdo\fR RECOVER RUN
+   \fBdo\fR START_RUN RUN
+   \fBterminate_action/state\fR=ON
+ \fBstate\fR: ON
+  \fBwhen\fR (RUN \fBnot_in_state\fR RUNNING) \fBdo\fR X_ACTIVATE
+   \fBaction\fR: DISACTIVATE
+    \fBterminate_action/state\fR=OFF
+   \fBaction\fR: X_ACTIVATE
+    \fBdo\fR RECOVER RUN
+    \fBdo\fR START_RUN RUN
+    \fBterminate_action/state\fR=ON
+
+\fBobject\fR: RUN_TYPE
+ \fBstate\fR: TEST
+  \fBaction\fR: PHYSICS
+   \fBdo\fR LOG LOGGER
+   \fBif\fR (LOGGER \fBin_state\fR LOGGING) \fBthen\fR
+    \fBterminate_action/state\fR=PHYSICS
+   \fBendif\fR
+   \fBterminate_action/state\fR=TEST
+ \fBstate\fR: PHYSICS
+  \fBaction\fR: TEST
+   \fBdo\fR NOLOG LOGGER
+   \fBif\fR (LOGGER \fBin_state\fR NOT_LOGGING) \fBthen\fR
+    \fBterminate_action/state\fR=TEST
+   \fBendif\fR
+   \fBterminate_action/state\fR=PHYSICS
+
+\fBobject\fR: RUN
+ \fBparameters\fR: int NUMBER_T = 0, int NUMBER_P = 0
+ \fBstate\fR: STOPPED
+  \fBaction\fR: START_RUN
+   set NUMBER_T = EVT_BUILDER<NUMBER_T>
+   set NUMBER_P = EVT_BUILDER<NUMBER_P>
+   \fBif\fR (not EVT_BUILDER \fBin_state\fR READY) \fBthen\fR
+    \fBterminate_action/state\fR=STOPPED
+   \fBendif\fR
+   \fBif\fR (RUN_TYPE \fBin_state\fR PHYSICS) \fBthen\fR
+    \fBdo\fR LOG LOGGER
+    \fBif\fR (not LOGGER \fBin_state\fR LOGGING) \fBthen\fR
+     \fBterminate_action/state\fR=STOPPED
+    \fBendif\fR
+   \fBendif\fR
+   \fBif\fR (LOGGER \fBin_state\fR LOGGING) \fBthen\fR
+    \fBdo\fR X_OPEN_FILE LOGGER
+   \fBendif\fR
+   \fBif\fR (RUN_TYPE \fBin_state\fR PHYSICS) \fBthen\fR
+    \fBdo\fR START (TYPE="PHYSICS",NR=NUMBER_P) EVT_BUILDER
+   \fBelse\fR
+    \fBdo\fR START (TYPE="TEST",NR=NUMBER_T) EVT_BUILDER
+   \fBendif\fR
+   \fBif\fR (EVT_BUILDER \fBin_state\fR RUNNING) \fBthen\fR
+    \fBterminate_action/state\fR=RUNNING
+   \fBendif\fR
+   \fBterminate_action/state\fR=STOPPED
+ \fBstate\fR: RUNNING
+  \fBwhen\fR (EVT_BUILDER \fBin_state\fR ERROR) \fBdo\fR X_SET_ERROR
+   \fBaction\fR: STOP_RUN
+    \fBdo\fR STOP EVT_BUILDER
+    \fBif\fR (LOGGER \fBin_state\fR WRITING) \fBthen\fR
+     \fBdo\fR X_CLOSE_FILE LOGGER
+    \fBendif\fR
+    \fBterminate_action/state\fR=STOPPED
+   \fBaction\fR: X_SET_ERROR
+    \fBif\fR (LOGGER \fBin_state\fR WRITING) \fBthen\fR
+     \fBdo\fR X_CLOSE_FILE LOGGER
+    \fBendif\fR
+    \fBterminate_action/state\fR=ERROR
+ \fBstate\fR: ERROR
+  \fBaction\fR: RECOVER
+   \fBdo\fR RECOVER EVT_BUILDER
+   \fBterminate_action/state\fR=STOPPED
+
+\fBobject\fR: LOGGER \fB/associated\fR
+ \fBstate\fR: DEAD \fB/dead_state\fR
+ \fBstate\fR: NOT_LOGGING
+  \fBaction\fR: LOG
+ \fBstate\fR: LOGGING
+  \fBaction\fR: NOLOG
+  \fBaction\fR: X_OPEN_FILE
+ \fBstate\fR: WRITING
+  \fBaction\fR: X_CLOSE_FILE
+
+\fBobject\fR: EVT_BUILDER \fB/associated\fR
+ \fBparameters\fR: int NUMBER_T, int NUMBER_P
+ \fBstate\fR: DEAD \fB/dead_state\fR
+ \fBstate\fR: READY
+  \fBaction\fR: START(TYPE, int NR)
+ \fBstate\fR: RUNNING
+  \fBaction\fR: STOP
+ \fBstate\fR: ERROR
+  \fBaction\fR: RECOVER
+
+.RE
+.SH OPTIONS
+.TP
+.B \-h, \-\-help
+Show summary of options.
+.TP
+.B \-v
+Show version of program.
+.TP
+.BI \-d " LEVEL"
+Set the debug level
+.TP
+.SH SEE ALSO
+.BR smiSM (1),
+.BR smiGUI (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smimake.1 smixx/support/smimake.1
--- smixx_web/support/smimake.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smimake.1	2006-05-14 22:38:42.000000000 +0200
@@ -0,0 +1,73 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIMAKE 1 "May 14, 2006"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smimake \- wrapper around smiGen, smiPreproc, and smiTrans
+.SH SYNOPSIS
+.B smimake
+.RI [ options ] " FILE"
+.SH DESCRIPTION
+This manual page documents briefly the
+.B smimake
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics, 
+.\" respectively.
+\fBsmimake\fP calls 
+.BR smiGen (1), 
+.BR smiPreproc "(1), and "
+.BR smiTrans (1) 
+in turn to make the skeletons and the byte compiled state machine. 
+.SH OPTIONS
+.TP
+.B \-h
+Show summary of options.
+.TP
+.B \-v
+Show version of program.
+.TP
+.BI \-gp
+Generate proxies
+.TP
+.BI \-gi
+Generate include files.
+.TP
+.BI \-c
+Generate C source code proxies.
+.TP
+.BI \-C
+Generate C++ source code proxies.
+.TP
+.BI \-m
+Generate Makefile for the source code proxies.
+.SH SEE ALSO
+.BR smiTrans (1),
+.BR smiPreproc (1),
+.BR smiGen (1).
+.br
+.UR http://cern.ch/smi
+http://cern.ch/smi
+.UE
+.SH AUTHOR
+SMI++ was written by Bohumil Franek <b.franek@rl.ac.uk> and Clara
+Gaspar <Clara.Gaspar@cern.ch>
+.PP
+This manual page was written by Christian Holm Christensen <cholm@nbi.dk>,
+for the Debian project (but may be used by others).
+.\"
+.\" EOF
+.\"
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smixx-config.1 smixx/support/smixx-config.1
--- smixx_web/support/smixx-config.1	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smixx-config.1	2006-05-14 22:23:12.000000000 +0200
@@ -0,0 +1,64 @@
+.\"                                      Hey, EMACS: -*- nroff -*-
+.\" $Id: smixx-config.1,v 1.2 2004/12/15 23:49:07 cholm Exp $
+.\" 
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH SMIXX-CONFIG 1 "January  4, 2003"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh        disable hyphenation
+.\" .hy        enable hyphenation
+.\" .ad l      left justify
+.\" .ad b      justify to both left and right margins
+.\" .nf        disable filling
+.\" .fi        enable filling
+.\" .br        insert line break
+.\" .sp <n>    insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+smixx-config \- information on Smi installation
+.SH SYNOPSIS
+.B smixx-config
+.RI [ options ] 
+.SH DESCRIPTION
+\fBsmixx-config\fP gives information on \fBSmi\fR
+installation. 
+.SH OPTIONS
+These programs follow the usual GNU command line syntax, with long
+options starting with two dashes (`-').
+A summary of options is included below.
+.TP
+.B \-\-help
+Show summary of options.
+.TP
+.B \-\-version
+Show version of \fBThread\-\-\fR.
+.TP
+.B \-\-prefix
+Gives the installation prefix.
+.TP
+.B \-\-libdir
+Gives path to libraries.
+.TP
+.B \-\-includedir
+Gives path to headers. 
+.TP
+.B \-\-libs
+Gives linkage information.
+.TP
+.B \-\-cppflags
+Gives preprocessor information.
+.SH SEE ALSO
+\fBSMI\fR is fully documented at 
+.US http://cern.ch/smi
+.B http://cern.ch/smi
+.UE
+.SH AUTHOR
+This manual page was written by Christian Holm <cholm@nbi.dk>,
+for the Debian GNU/Linux system (but may be used by others).
+.\" 
+.\" EOF
+.\" 
+
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smixx-config.in smixx/support/smixx-config.in
--- smixx_web/support/smixx-config.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smixx-config.in	2005-01-07 15:16:56.000000000 +0100
@@ -0,0 +1,106 @@
+#!/bin/sh
+#
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+includedir=@includedir@ 
+pkgincludedir=@includedir@/@PACKAGE@
+libdir=@libdir@
+pkglibdir=@pkglibdir@
+package="@PACKAGE_TARNAME@"
+string="@PACKAGE_STRING@"
+email="@PACKAGE_BUGREPORT@"
+version="@VERSION@"
+
+
+prog=`basename $0`
+
+if test $# -eq 0 ; then 
+    $0 --help
+    exit 0
+fi
+
+have_lib=0
+while test $# -gt 0 ; do 
+    case $1 in 
+	--*=*)    
+	    opt=`echo $1 | sed 's/=.*//'`
+	    arg=`echo $1 | sed 's/[^=]*=//'` 
+	    ;;
+	--*)
+	    opt=$1
+	    arg=
+	    ;;
+	-*)
+	    opt=$1
+	    arg=$2
+	    ;;
+	*)
+	    echo "$prog: unknown argument '$1', try '$prog --help'"
+	    exit 1
+	    ;;
+    esac
+
+    case $opt in
+	--help|-h) 
+	    cat <<EOF
+Usage: $prog [options]
+
+  --prefix          Gives the installation prefix
+  --libdir          Gives path to libraries
+  --includedir      Gives path to headers 
+  --libs            Gives libraries information 
+  --jni-libs	    Gives Java Native Interface library information
+  --ldflags         Gives linkage information 
+  --cppflags        Gives preprocessor information
+  --has-cxx-api     Output yes if C++ is supported, no otherwise
+  --has-jni         Output yes if the Java Native Interface is avaliable
+  --version         Gives version information
+  --help            Gives this help
+EOF
+	    ;;
+	--version|-v)
+	    cat <<EOF
+$string 
+EOF
+	    exit 0
+	    ;;
+	-V)
+	    echo $version 
+	    exit 0
+	    ;;
+	--prefix|-p)
+	    out="$out $prefix" 
+	    ;;
+	--libdir|-L)
+	    out="$out $libdir"
+	    ;;
+	--includedir|-I)
+	    out="$out $includedir" 
+	    ;;
+	--cppflags|-D)
+	    if test ! "x$pkgincludedir" = "x/usr/include" ; then 
+		out="$out -I$pkgincludedir" 
+	    fi
+	    ;;
+	--ldflags) 
+	    if test ! "x$libdir" = "x/usr/lib" ; then 
+		out="$out -L$libdir" 
+	    fi
+	    out="$out -lsmi" 
+	    have_lib=1
+	    ;;
+	--libs|-l)
+	    out="$out -lsmi" 
+	    have_lib=1
+	    ;;
+	*)
+	    echo "$prog: unknown option '$opt' - try '$prog --help'"
+	    exit 1
+    esac
+    shift
+done
+		
+echo $out	
+		
+	
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smixx.m4 smixx/support/smixx.m4
--- smixx_web/support/smixx.m4	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smixx.m4	2006-05-14 22:22:18.000000000 +0200
@@ -0,0 +1,65 @@
+dnl -*- mode: Autoconf -*- 
+dnl
+dnl AC_ROOT_SMI([MINIMUM-VERSION 
+dnl                   [,ACTION-IF_FOUND 
+dnl                    [, ACTION-IF-NOT-FOUND]])
+AC_DEFUN([AC_ROOT_SMIXX],
+[
+    AC_ARG_WITH([smixx-prefix],
+        [AC_HELP_STRING([--with-smixx-prefix],
+		[Prefix where Smixx is installed])],
+        smixx_prefix=$withval, smixx_prefix="")
+
+    if test "x${SMIXX_CONFIG+set}" != xset ; then 
+        if test "x$smixx_prefix" != "x" ; then 
+	    SMIXX_CONFIG=$smixx_prefix/bin/smixx-config
+	fi
+    fi   
+    if test "x${SMIXX_CONFIG+set}" != xset ; then 
+        if test "x$smixx_prefix" != "x" ; then 
+	    SMIXX_CONFIG=$smixx_prefix/bin/smixx-config
+	fi
+    fi   
+    AC_PATH_PROG(SMIXX_CONFIG, smixx-config, no)
+    smixx_min_version=ifelse([$1], ,0.1,$1)
+    
+    AC_MSG_CHECKING(for Smixx version >= $smixx_min_version)
+
+    smixx_found=no    
+    if test "x$SMIXX_CONFIG" != "xno" ; then 
+       SMIXX_CPPFLAGS=`$SMIXX_CONFIG --cppflags`
+       SMIXX_INCLUDEDIR=`$SMIXX_CONFIG --includedir`
+       SMIXX_LIBS=`$SMIXX_CONFIG --libs`
+       SMIXX_LIBDIR=`$SMIXX_CONFIG --libdir`
+       SMIXX_LDFLAGS=`$SMIXX_CONFIG --ldflags`
+       SMIXX_PREFIX=`$SMIXX_CONFIG --prefix`
+       
+       smixx_version=`$SMIXX_CONFIG -V` 
+       smixx_vers=`echo $smixx_version | \
+         awk 'BEGIN { FS = " "; } \
+	   { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
+       smixx_regu=`echo $smixx_min_version | \
+         awk 'BEGIN { FS = " "; } \
+	   { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
+       if test $smixx_vers -ge $smixx_regu ; then 
+            smixx_found=yes
+       fi
+    fi
+    AC_MSG_RESULT($smixx_found - is $smixx_version) 
+  
+    if test "x$smixx_found" = "xyes" ; then 
+        ifelse([$2], , :, [$2])
+    else 
+        ifelse([$3], , :, [$3])
+    fi
+    AC_SUBST(SMIXX_PREFIX)
+    AC_SUBST(SMIXX_CPPFLAGS)
+    AC_SUBST(SMIXX_INCLUDEDIR)
+    AC_SUBST(SMIXX_LDFLAGS)
+    AC_SUBST(SMIXX_LIBDIR)
+    AC_SUBST(SMIXX_LIBS)
+])
+
+dnl
+dnl EOF
+dnl 
diff -xconfig -xrename -xgetDomains -xdomainExists -xgetSmiVersions -x'*-stamp' -x'config.*' -xCVS -x.cvsignore -xMakefile -x'.#*' -xtmp -xupdate.sh -xproxyExists -xlistDomain -xsmixx-31.01.tar.gz -xMakefile.in -xconfigure -xaclocal.m4 -r -w -u -N smixx_web/support/smixx.spec.in smixx/support/smixx.spec.in
--- smixx_web/support/smixx.spec.in	1970-01-01 01:00:00.000000000 +0100
+++ smixx/support/smixx.spec.in	2007-03-19 10:14:03.000000000 +0100
@@ -0,0 +1,156 @@
+#! /usr/bin/rpm
+%define  sovers		@sovers@
+%define _unpackaged_files_terminate_build  0
+
+#_____________________________________________________________________
+# 
+# Normal setup, and main package
+#
+Version: 	@VERSION@
+Release: 	1
+Name:    	@PACKAGE@-bin
+Summary: 	Framework distributed control systems - tools
+Group:   	Applications/Communications
+License: 	GPL
+Source0: 	http://cern.ch/smi/@PACKAGE@-%{version}.tar.gz
+Prefix: 	%{_prefix}
+Url:    	http://cern.ch/smi
+BuildRoot: 	%{_tmppath}/@PACKAGE@-%{version}
+BuildRequires: 	libdim-dev
+BuildRequires:  XFree86-devel
+Requires: 	libdim1
+
+%description
+SMI++ is a framework for designing and implementing distributed
+control systems. SMI++ is based on the original State Manager concept
+which was developed by the DELPHI experiment in collaboration with
+the DD/OC group of CERN. 
+
+In this concept, a real-world system is described in terms of objects
+behaving as Finite State Machines. SMI++ objects can run in a variety
+of platforms all communications being handled transparently by an
+underlying communication system - DIM.
+
+This package provides run-time tools.
+
+Web-page: http://cern.ch/smi
+
+%files 
+%defattr(-,root,root)
+/usr/bin/smiSM
+/usr/bin/smiGUI
+/usr/bin/smiListDomain
+/usr/bin/smiDomainExists
+/usr/bin/smiProxyExists
+/usr/bin/smiGetVersions
+/usr/bin/smiGetDomains
+/usr/share/man/man1/smiSM.1*
+/usr/share/man/man1/smiGUI.1*
+/usr/share/man/man1/smiListDomain.1*
+/usr/share/man/man1/smiDomainExists.1*
+/usr/share/man/man1/smiProxyExists.1*
+/usr/share/man/man1/smiGetVersions.1*
+/usr/share/man/man1/smiGetDomains.1*
+
+#_____________________________________________________________________
+#
+# Library package 
+%package -n lib@PACKAGE@%{sovers}
+Summary: Framework distributed control systems - libraries
+Group:   Development/Libraries
+%description -n lib@PACKAGE@%{sovers}
+SMI++ is a framework for designing and implementing distributed
+control systems. SMI++ is based on the original State Manager concept
+which was developed by the DELPHI experiment in collaboration with
+the DD/OC group of CERN. 
+
+In this concept, a real-world system is described in terms of objects
+behaving as Finite State Machines. SMI++ objects can run in a variety
+of platforms all communications being handled transparently by an
+underlying communication system - DIM.
+
+This package provides run-time libraries.
+
+Web-page: http://cern.ch/smi
+
+%files -n lib@PACKAGE@%{sovers}
+%defattr(-,root,root)
+/usr/lib/lib*.so.%{sovers}*
+
+%pre -n lib@PACKAGE@%{sovers}
+ldconfig
+
+%post -n lib@PACKAGE@%{sovers}
+ldconfig
+
+#_____________________________________________________________________
+#
+# Development package 
+#
+%package -n lib@PACKAGE@-devel
+Summary:  Framework distributed control systems - libraries
+Group:    Development/Libraries
+Requires: lib@PACKAGE@%{sovers}
+%description -n lib@PACKAGE@-devel
+SMI++ is a framework for designing and implementing distributed
+control systems. SMI++ is based on the original State Manager concept
+which was developed by the DELPHI experiment in collaboration with
+the DD/OC group of CERN. 
+
+In this concept, a real-world system is described in terms of objects
+behaving as Finite State Machines. SMI++ objects can run in a variety
+of platforms all communications being handled transparently by an
+underlying communication system - DIM.
+
+This package provides development tools and libraries.
+
+Web-page: http://cern.ch/smi
+
+%files -n lib@PACKAGE@-devel
+%defattr(-,root,root)
+/usr/bin/smiGen
+/usr/bin/smiTrans
+/usr/bin/smiPreproc
+/usr/bin/smimake
+/usr/share/man/man1/smiGen.1*
+/usr/share/man/man1/smiTrans.1*
+/usr/share/man/man1/smiPreproc.1*
+/usr/share/man/man1/smimake.1*
+/usr/include/@PACKAGE@/
+/usr/lib/lib*.a
+/usr/lib/lib*.so
+/usr/lib/lib*.la
+/usr/bin/@PACKAGE@-config
+/usr/share/aclocal/@PACKAGE@.m4
+/usr/share/man/man1/@PACKAGE@-config.1*
+
+#_____________________________________________________________________
+#
+# Build, install, and so on. 
+#
+%prep 
+%setup -n @PACKAGE@-@VERSION@
+
+%build
+%configure
+make
+
+%install
+make DESTDIR=$RPM_BUILD_ROOT install 
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+#_____________________________________________________________________
+# 
+# Changelog
+#
+%changelog
+* Wed Aug 23 2005 Christian Holm <cholm@nbi.dk> 1.2
+ - Spec file generated by configure
+
+
+#_____________________________________________________________________
+#
+# EOF
+#
