00001 /* libIXAml - IXA Taldea */ 00002 00003 #ifndef _SH_SYNT_LNKXMLDOC_H 00004 #define _SH_SYNT_LNKXMLDOC_H 00005 00006 #include "lnkxmldoc.h" 00007 #include "fsid.h" 00008 #include "chunkid.h" 00009 #include <string> 00010 #include <vector> 00011 00014 class ShSyntLnkXMLDoc: public LnkXMLDoc { 00015 00016 static const std::string SHSYNT_LIB; 00017 static const LnkGrpType ChunkLnkGrpT; 00018 static const RefType ChunkRef; 00019 static const RefType ShSyntLibRef; 00020 00021 //IdRefErlr-een birtualen inplementazioa 00022 std::string lortuRef(const RefDataErl & ird) const; 00023 00024 public: 00025 00027 ShSyntLnkXMLDoc(); 00028 00032 ShSyntLnkXMLDoc(const DomId & d); 00033 00037 std::string getChunkFitx() const; 00038 00042 DomId getChunkDom() const; 00043 00047 void putChunkFitx (const std::string & f); 00048 00053 void putChunkFitx (const std::string & f, const DomId & d); 00054 00058 std::string getShSyntLibFitx () const; 00059 00063 DomId getShSyntLibDom() const; 00064 00068 void putShSyntLibFitx(const std::string & f); 00069 00074 void putShSyntLibFitx(const std::string & f, const DomId & d); 00075 00078 void putShSyntPublicLibrary(); 00079 00083 LinkGrp getChunkLinkGrp() const; 00084 00088 void removeChunkLink(const Link & l); 00089 00093 void addChunkLink(const Link & l); 00094 00099 void addChunkLink(const ChunkId & chunkId, const FSId & fsId); 00100 00105 std::vector<ChunkId> findChunkSpans(const FSId & fsId); //FSId analisia duten chunkak lortu 00106 00111 std::vector<FSId> findChunkDescs(const ChunkId & chunkId); // parametroko chunk id-ak dituen analisi guztiak 00112 00113 }; 00114 #endif //_SH_SYNT_LNKXMLDOC_H