home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / modules / libfont / jmcgen / include / Mnfstrm.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  5.3 KB  |  140 lines

  1. /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
  2.  *
  3.  * The contents of this file are subject to the Netscape Public License
  4.  * Version 1.0 (the "NPL"); you may not use this file except in
  5.  * compliance with the NPL.  You may obtain a copy of the NPL at
  6.  * http://www.mozilla.org/NPL/
  7.  *
  8.  * Software distributed under the NPL is distributed on an "AS IS" basis,
  9.  * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10.  * for the specific language governing rights and limitations under the
  11.  * NPL.
  12.  *
  13.  * The Initial Developer of this code under the NPL is Netscape
  14.  * Communications Corporation.  Portions created by Netscape are
  15.  * Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16.  * Reserved.
  17.  */
  18. /*******************************************************************************
  19.  * Source date: 9 Apr 1997 21:45:13 GMT
  20.  * netscape/fonts/nfstrm public interface
  21.  * Generated by jmc version 1.8 -- DO NOT EDIT
  22.  ******************************************************************************/
  23.  
  24. #ifndef _Mnfstrm_H_
  25. #define _Mnfstrm_H_
  26.  
  27. #include "jmc.h"
  28.  
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif /* __cplusplus */
  32.  
  33. /*******************************************************************************
  34.  * nfstrm
  35.  ******************************************************************************/
  36.  
  37. /* The type of the nfstrm interface. */
  38. struct nfstrmInterface;
  39.  
  40. /* The public type of a nfstrm instance. */
  41. typedef struct nfstrm {
  42.     const struct nfstrmInterface*    vtable;
  43. } nfstrm;
  44.  
  45. /* The inteface ID of the nfstrm interface. */
  46. #ifndef JMC_INIT_nfstrm_ID
  47. extern EXTERN_C_WITHOUT_EXTERN const JMCInterfaceID nfstrm_ID;
  48. #else
  49. EXTERN_C const JMCInterfaceID nfstrm_ID = { 0x3b686461, 0x5c714911, 0x4c06346e, 0x1c47186a };
  50. #endif /* JMC_INIT_nfstrm_ID */
  51. /*******************************************************************************
  52.  * nfstrm Operations
  53.  ******************************************************************************/
  54.  
  55. #define nfstrm_getInterface(self, a, exception)    \
  56.     (((self)->vtable->getInterface)(self, nfstrm_getInterface_op, a, exception))
  57.  
  58. #define nfstrm_addRef(self, exception)    \
  59.     (((self)->vtable->addRef)(self, nfstrm_addRef_op, exception))
  60.  
  61. #define nfstrm_release(self, exception)    \
  62.     (((self)->vtable->release)(self, nfstrm_release_op, exception))
  63.  
  64. #define nfstrm_hashCode(self, exception)    \
  65.     (((self)->vtable->hashCode)(self, nfstrm_hashCode_op, exception))
  66.  
  67. #define nfstrm_equals(self, a, exception)    \
  68.     (((self)->vtable->equals)(self, nfstrm_equals_op, a, exception))
  69.  
  70. #define nfstrm_clone(self, exception)    \
  71.     (((self)->vtable->clone)(self, nfstrm_clone_op, exception))
  72.  
  73. #define nfstrm_toString(self, exception)    \
  74.     (((self)->vtable->toString)(self, nfstrm_toString_op, exception))
  75.  
  76. #define nfstrm_finalize(self, exception)    \
  77.     (((self)->vtable->finalize)(self, nfstrm_finalize_op, exception))
  78.  
  79. #define nfstrm_IsWriteReady(self, exception)    \
  80.     (((self)->vtable->IsWriteReady)(self, nfstrm_IsWriteReady_op, exception))
  81.  
  82. #define nfstrm_Write(self, a, a_length, exception)    \
  83.     (((self)->vtable->Write)(self, nfstrm_Write_op, a, a_length, exception))
  84.  
  85. #define nfstrm_Abort(self, a, exception)    \
  86.     (((self)->vtable->Abort)(self, nfstrm_Abort_op, a, exception))
  87.  
  88. #define nfstrm_Complete(self, exception)    \
  89.     (((self)->vtable->Complete)(self, nfstrm_Complete_op, exception))
  90.  
  91. /*******************************************************************************
  92.  * nfstrm Interface
  93.  ******************************************************************************/
  94.  
  95. struct netscape_jmc_JMCInterfaceID;
  96. struct java_lang_Object;
  97. struct java_lang_String;
  98.  
  99. struct nfstrmInterface {
  100.     void*    (*getInterface)(struct nfstrm* self, jint op, const JMCInterfaceID* a, JMCException* *exception);
  101.     void    (*addRef)(struct nfstrm* self, jint op, JMCException* *exception);
  102.     void    (*release)(struct nfstrm* self, jint op, JMCException* *exception);
  103.     jint    (*hashCode)(struct nfstrm* self, jint op, JMCException* *exception);
  104.     jbool    (*equals)(struct nfstrm* self, jint op, void* a, JMCException* *exception);
  105.     void*    (*clone)(struct nfstrm* self, jint op, JMCException* *exception);
  106.     const char*    (*toString)(struct nfstrm* self, jint op, JMCException* *exception);
  107.     void    (*finalize)(struct nfstrm* self, jint op, JMCException* *exception);
  108.     jint    (*IsWriteReady)(struct nfstrm* self, jint op, JMCException* *exception);
  109.     jint    (*Write)(struct nfstrm* self, jint op, jbyte* a, jsize a_length, JMCException* *exception);
  110.     void    (*Abort)(struct nfstrm* self, jint op, jint a, JMCException* *exception);
  111.     void*    (*Complete)(struct nfstrm* self, jint op, JMCException* *exception);
  112. };
  113.  
  114. /*******************************************************************************
  115.  * nfstrm Operation IDs
  116.  ******************************************************************************/
  117.  
  118. typedef enum nfstrmOperations {
  119.     nfstrm_getInterface_op,
  120.     nfstrm_addRef_op,
  121.     nfstrm_release_op,
  122.     nfstrm_hashCode_op,
  123.     nfstrm_equals_op,
  124.     nfstrm_clone_op,
  125.     nfstrm_toString_op,
  126.     nfstrm_finalize_op,
  127.     nfstrm_IsWriteReady_op,
  128.     nfstrm_Write_op,
  129.     nfstrm_Abort_op,
  130.     nfstrm_Complete_op
  131. } nfstrmOperations;
  132.  
  133. /******************************************************************************/
  134.  
  135. #ifdef __cplusplus
  136. } /* extern "C" */
  137. #endif /* __cplusplus */
  138.  
  139. #endif /* _Mnfstrm_H_ */
  140.