/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "mimei.h" #include "mimeobj.h" /* MimeObject (abstract) */ #include "mimecont.h" /* |--- MimeContainer (abstract) */ #include "mimemult.h" /* | |--- MimeMultipart (abstract) */ #include "mimemsig.h" /* | | |--- MimeMultipartSigned (abstract)*/ #include "mimetext.h" /* | |--- MimeInlineText (abstract) */ #include "mimecryp.h" #include "mimecth.h" /* * These calls are necessary to expose the object class hierarchy * to externally developed content type handlers. */ extern "C" void* XPCOM_GetmimeInlineTextClass(void) { return (void*)&mimeInlineTextClass; } extern "C" void* XPCOM_GetmimeLeafClass(void) { return (void*)&mimeLeafClass; } extern "C" void* XPCOM_GetmimeObjectClass(void) { return (void*)&mimeObjectClass; } extern "C" void* XPCOM_GetmimeContainerClass(void) { return (void*)&mimeContainerClass; } extern "C" void* XPCOM_GetmimeMultipartClass(void) { return (void*)&mimeMultipartClass; } extern "C" void* XPCOM_GetmimeMultipartSignedClass(void) { return (void*)&mimeMultipartSignedClass; } extern "C" void* XPCOM_GetmimeEncryptedClass(void) { return (void*)&mimeEncryptedClass; } extern "C" int XPCOM_MimeObject_write(void* mimeObject, char* data, int32_t length, bool user_visible_p) { return MIME_MimeObject_write((MimeObject*)mimeObject, data, length, user_visible_p); } extern "C" void* XPCOM_Mime_create(char* content_type, void* hdrs, void* opts) { return mime_create(content_type, (MimeHeaders*)hdrs, (MimeDisplayOptions*)opts); }