/***************************************************************************
*
* Projet   : Marc
* Module   : Iso2709
* Commande : Iso2709.h
* Auteur   : Ducloy
* Date     : 15/1/97
*
***************************************************************************/

#ifndef _ISO2709_H_
#define _ISO2709_H_

#include "Sxml.h"

void Iso2709BuildHeader();
void Iso2709BuildIndic();

extern SxmlNode *Iso2709OutputRecord;
extern SxmlNode *Iso2709OutputPart;
extern SxmlNode *Iso2709OutputField;
extern SxmlNode *Iso2709OutputSubField;
extern SxmlNode *Iso2709OutputBytePos;

extern SxmlNode *Iso2709InputPart;
extern SxmlNode *Iso2709InputField;
extern SxmlNode *Iso2709InputRecord;
extern SxmlNode *Iso2709InputSubField;
extern SxmlNode *Iso2709InputIterField;


SxmlNode *Iso2709OutputFindOrNewField();

/*

#define Iso2709AddSon(n,s) SxmlAddSonTagBeforeGreater(n,s)

#define Iso2709OutputStrcat(s)      (SxmlLeafStrcat(Iso2709OutputSubField,s))

#define Iso2709FieldGetData(f,t)    (SxmlLeafGetData(SxmlGetSonTag(f,t)))

#define Iso2709OutputHeaderSet(k,v) SxmlAddAtt(Iso2709OutputRecord,k,v)

#define Iso2709OutputNewField(t) (SxmlAddSonTagBeforeGreater(Iso2709OutputPart,(Iso2709OutputField=SxmlCreateMark(t))))

#define Iso2709OutputAddField(n) (SxmlAddSonTagBeforeGreater(Iso2709OutputPart,(Iso2709OutputField=n)))

#define Iso2709OutputNewSubField(t) (SxmlAddSonTagBeforeGreater(Iso2709OutputField,(Iso2709OutputSubField=SxmlCreateMark(t))))

#define Iso2709OutputNewSubFieldData(t,v) (SxmlAddSonTagBeforeGreater(Iso2709OutputField,(Iso2709OutputSubField=SxmlCreateLeaf(t,v))))

#define Iso2709OutputNewBytePos(t,v) (SxmlAddSonTagBeforeGreater(Iso2709OutputSubField,(Iso2709OutputBytePos=SxmlCreateLeaf(t,v))))

#define Iso2709OutputNewFieldData(t1,t2,v) (Iso2709OutputNewField(t1), Iso2709OutputNewSubFieldData(t2,v), Iso2709OutputField)

#define Iso2709InputIterFieldNext() Iso2709IterFieldNext(Iso2709InputIterField)

SxmlNode *Iso2709IterFieldNext();
SxmlNode *Iso2709IterInit();
SxmlNode *Iso2709InputIterFieldInit();
SxmlNode *Iso2709InputGetSubField();
char *Iso2709InputGetDataElement();

*/
#endif /* _ISO2709_H_ */
