home *** CD-ROM | disk | FTP | other *** search
- /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
- *
- * The contents of this file are subject to the Netscape Public License
- * Version 1.0 (the "NPL"); you may not use this file except in
- * compliance with the NPL. You may obtain a copy of the NPL at
- * http://www.mozilla.org/NPL/
- *
- * Software distributed under the NPL is distributed on an "AS IS" basis,
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
- * for the specific language governing rights and limitations under the
- * NPL.
- *
- * The Initial Developer of this code under the NPL is Netscape
- * Communications Corporation. Portions created by Netscape are
- * Copyright (C) 1998 Netscape Communications Corporation. All Rights
- * Reserved.
- */
-
- #ifndef __OLEContentTypeConverter_H
- // Avoid include redundancy
- //
- #define __OLEContentTypeConverter_H
-
- // Purpose: OLE content type converter
- // Comments: Handles all OLE automation servers that have registered themselves with Netscape.
-
- #include "strmdata.h"
- #include "oleview1.h"
-
- // Structures
- //
- struct COLEStreamData : public CStreamData {
- CString m_csServerName; // OLE Automation Server Name.
- CString m_csMimeType; // The mime type of the data to handle.
- COLEStreamData(const char *pServer, const char *pMimeType);
- };
-
- struct COLEDownloadData {
- IIViewer1 m_Viewer;
- COLEStreamData *m_pCData;
- enum {
- m_InitialBufferSize = 4096
- };
- BSTR m_pBuffer;
- COLEDownloadData(COLEStreamData *pCData, const char *pAddress);
- ~COLEDownloadData();
-
- // Special hackage to handle the netlib not calling Ready before Write.
- BOOL m_bReadyCalled;
- };
-
-
- // Function declarations
- //
- extern "C" {
- NET_StreamClass *ole_stream(int format_out, void *data_obj,
- URL_Struct *URL_s, MWContext *context);
- int ole_StreamWrite(NET_StreamClass *stream, const char *cpWriteData, int32 lLength);
- void ole_StreamComplete(NET_StreamClass *stream);
- void ole_StreamAbort(NET_StreamClass *stream, int iStatus);
- unsigned int ole_StreamReady(NET_StreamClass *stream);
- };
-
- #endif // __OLEContentTypeConverter_H
-