Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_IMAP_LOADER_H__
00020 #define __CS_IMAP_LOADER_H__
00021
00022 #include "csutil/scf.h"
00023
00029 struct iDataBuffer;
00030 struct iDocumentNode;
00031 struct iLoaderContext;
00032 struct iStreamSource;
00033
00037 struct iLoaderPlugin : public virtual iBase
00038 {
00039 SCF_INTERFACE(iLoaderPlugin, 3, 0, 0);
00050 virtual csPtr<iBase> Parse (iDocumentNode* node,
00051 iStreamSource* ssource, iLoaderContext* ldr_context,
00052 iBase* context) = 0;
00053
00054 virtual bool IsThreadSafe() = 0;
00055 };
00056
00060 struct iBinaryLoaderPlugin : public virtual iBase
00061 {
00062 SCF_INTERFACE(iBinaryLoaderPlugin, 2,1,0);
00075 virtual csPtr<iBase> Parse (iDataBuffer* data,
00076 iStreamSource* ssource, iLoaderContext* ldr_context,
00077 iBase* context, iStringArray* failed = 0) = 0;
00078
00079 virtual bool IsThreadSafe() = 0;
00080 };
00081
00084 #endif // __CS_IMAP_LOADER_H__
00085