CCS Modul   P_ZERLEGE_STR
 
   $Id: p_zerlege_str.C,v 1.28 2005/12/09 12:20:24 krf3rt Exp $
   ---------------------------------------------------------------------
   Kurzbeschreibung: 	Strings von der PSS fÏr die Auswertung aufbereiten.
   ---------------------------------------------------------------------
   Projekt:		CCS
   Sourcefile:		p_zerlege_str.C
   Autor:		RtW/TEF72-Keppler (29.04.96)
   Zielsystem:		HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
   Sprache:		C++
   ---------------------------------------------------------------------
   Prototyp:
   MPI Schnittstelle
   void p_init(shm_stringpointer *zeilen_info
	   ,shm_stringpointer    *zeilen_wert
	   ,long index1
	   ,long anzahl)
   
   ---------------------------------------------------------------------
   Aufruf: im Vectorinterpreter
   
	 (*funktionen[modulnummer])
	    (Ssp_expand_zeile
	     ,Ssp_expand_wert
	     ,p_verwaltung->begin_modulblock
	     ,p_verwaltung->anzahl_modulparameter);

   

      ---------------------------------------------------------------------
   Funktionsbeschreibung:
   Mit Hilfe dieses Moduls kÎnnen die Strings, die von der PSS, SKM kommen
   oder als Parameter INPUT_STRING uebergeben werden,so zerlegt werden,
   daÞ das Ergebnis vom Modul "m_auswertung" ausgewertet werden kann. Hierbei 
   sind die Restriktionen von m_auswertung befÏcksichtigt, d.h. die Strings 
   kÎnnen nicht beliebig lang sein. Die zulÌssige lÌnge ist vom gewÌhlten 
   Modus abhÌngig.
   
   Beschreibung der ModulÏbergabeparameter:
1 PRUEFSCHRITT
   	GAUDI PrÏfschritt
   ------------------------------
2 POSITION
   	PAV- Position
   ------------------------------   
   
   Eingabeparameter:
3 MODUS
	Art der Verarbeitung 
    	ASCII_STR:	Bei diesem Mode wird eine Integer-Ascii Wandlung
			durchgefÏhrt. D. h. der Eingabestring ist eine Folge 
			von hexadezimal Zifferpaaren, die einen ASCII-String 
			codieren:
			
			Beispiel:      
			Eingabestring: 65666768696A6B6C (65=e, 66=f, ..)
			Zeigeranfang:  4
			Zeigerende:    7
			Ausgabestring: hijk

       CHR_STR (STR): Die eingegebenen Zeichen werden als Characters
			interpretiert. Dieser Modus dient zur Zeichenver-
			arbeitung im herkoemmlichen Sinne.
			
			Beispiel:      
			Eingabestring: Donaudampfschiff
			Zeigeranfang:  4
			Zeigerende:    7
			Ausgabestring: auda     (DIM: (CHR_)STR, STRCMP
						   audampfs	(DIM: HEX_32, sonst)
			Achtung: doppelte Ergebnisstringlaenge fuer HEX_32, 
														sonst
						   
		default: Falls keiner der obigen Modi ausgewaehlt 
			wurde,(evtl veraltete Notationen etc.) 
			tritt dieser Modus in Kraft.
			
			Beispiel:      
			Eingabestring: Donaudampfschiff
			Zeigeranfang:  4
			Zeigerende:    7
			Ausgabestring: ampf	    (DIM: (CHR_)STR, STRCMP)
						   ampfschi (DIM: HEX_32, sonst)
			Achtung: 
			Doppelte Ergebnisstringlaenge fuer HEX_32, sonst
			In beiden wird die Startposition verdoppelt!
4 INPUT_STRING
String der zerlegt werden soll
    	STRING1:	Der String der von der PSS/SKM als letztes empfangen
			wurde und im Shared Memory abgelegt ist.
		sonst:		
		String der hier eingetragen wird kann zerlegt werden.
		Z.B. Messwertestrings aus beliebigen Modulen.
5 ZEIGER_ANF
Anfangsstelle der auszuwertenden Werte im String
6 ZEIGER_END
Endstelle der auszuwertenden Werte im String
    
   RÏckgabeparamter:
7 ERGEBNIS
 	Stringteil von ZEIGER_ANF - ZEIGER_END (STRING)
8 FEHLERFLAG
	Fehlerblocktitel vom SG
9 DIM
  	 	Dimension des Ergebnisstrings
    	STR         Verarbeitung von Strings.
					maximale Ergebnisstringlaenge: 16
		STRCMP      Wie STR
		HEX_32      Fuer Hex-Werte von 00000000...FFFFFFFF
					maximale Ergebnisstringlaenge: 8
		sonst       maximale Ergebnisstringlaenge: 540
    	
   Zusammenfassung (tabellarische Uebersicht)
   
   
   
Modus     DIM       Eingabestring     ANF ENDE   Ergebnisstring
_______________________________________________________________
ASCII_STR alle      65666768696A6B6C   4   7     hijk (h=68)

CHR_STR   (CHR_)STR Donaudampfschiff   4   7     auda
		  STRCMP                       
		  HEX_32                       4   7     audampfs
		  sonst
sonst     (CHR_)STR Donaudampfschiff   4   7     ampf
		  STRCMP
		  HEX_32                       4   7     ampfschi
		  sonst