From eecba3b5fcb47a01e6e13ee1940def989f6dd22d Mon Sep 17 00:00:00 2001 From: Fritz Elfert Date: Thu, 28 Feb 2002 20:56:59 +0000 Subject: - Added SIS stuff by Daniel Brahneborg --- lib/sisfile.h | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 lib/sisfile.h (limited to 'lib/sisfile.h') diff --git a/lib/sisfile.h b/lib/sisfile.h new file mode 100644 index 0000000..5f0bcd5 --- /dev/null +++ b/lib/sisfile.h @@ -0,0 +1,53 @@ +#ifndef _SISFILE_H +#define _SISFILE_H + +#include "sistypes.h" +#include "sisfileheader.h" +#include "siscomponentrecord.h" + +class SISLangRecord; +class SISFileRecord; +class SISReqRecord; + +/** + * The top level container of a SIS file. + * Based on documentation by Alexander Thoukydides . + * + * @author Daniel Brahneborg, 2002 + */ +class SISFile +{ +public: + /** + * Populate the fields. + */ + void fillFrom(uchar* buf); + + int getLanguage(); + + /** + * Find a language entry, based on the sequence number in the SISLangRecord + * part of the file. + */ + LangTableEntry* getLanguage(int i); + + /** + * Get the name of this component, in the selected language. + */ + uchar* getName(); + + void setLanguage(int lang); + + SISFileHeader m_header; + SISLangRecord* m_langRecords; + SISFileRecord* m_fileRecords; + SISReqRecord* m_reqRecords; + +private: + + SISComponentNameRecord m_componentRecord; + +}; + +#endif + -- cgit v1.2.3