home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / modules / libfont / jmcgen / include / Mnfrf.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-04-08  |  8.0 KB  |  193 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:12 GMT
  20.  * netscape/fonts/nfrf public interface
  21.  * Generated by jmc version 1.8 -- DO NOT EDIT
  22.  ******************************************************************************/
  23.  
  24. #ifndef _Mnfrf_H_
  25. #define _Mnfrf_H_
  26.  
  27. #include "jmc.h"
  28.  
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif /* __cplusplus */
  32.  
  33. /*******************************************************************************
  34.  * nfrf
  35.  ******************************************************************************/
  36.  
  37. /* The type of the nfrf interface. */
  38. struct nfrfInterface;
  39.  
  40. /* The public type of a nfrf instance. */
  41. typedef struct nfrf {
  42.     const struct nfrfInterface*    vtable;
  43. } nfrf;
  44.  
  45. /* The inteface ID of the nfrf interface. */
  46. #ifndef JMC_INIT_nfrf_ID
  47. extern EXTERN_C_WITHOUT_EXTERN const JMCInterfaceID nfrf_ID;
  48. #else
  49. EXTERN_C const JMCInterfaceID nfrf_ID = { 0x472d303c, 0x3c0b096b, 0x7609161a, 0x402b5c49 };
  50. #endif /* JMC_INIT_nfrf_ID */
  51. /*******************************************************************************
  52.  * nfrf Operations
  53.  ******************************************************************************/
  54.  
  55. #define nfrf_getInterface(self, a, exception)    \
  56.     (((self)->vtable->getInterface)(self, nfrf_getInterface_op, a, exception))
  57.  
  58. #define nfrf_addRef(self, exception)    \
  59.     (((self)->vtable->addRef)(self, nfrf_addRef_op, exception))
  60.  
  61. #define nfrf_release(self, exception)    \
  62.     (((self)->vtable->release)(self, nfrf_release_op, exception))
  63.  
  64. #define nfrf_hashCode(self, exception)    \
  65.     (((self)->vtable->hashCode)(self, nfrf_hashCode_op, exception))
  66.  
  67. #define nfrf_equals(self, a, exception)    \
  68.     (((self)->vtable->equals)(self, nfrf_equals_op, a, exception))
  69.  
  70. #define nfrf_clone(self, exception)    \
  71.     (((self)->vtable->clone)(self, nfrf_clone_op, exception))
  72.  
  73. #define nfrf_toString(self, exception)    \
  74.     (((self)->vtable->toString)(self, nfrf_toString_op, exception))
  75.  
  76. #define nfrf_finalize(self, exception)    \
  77.     (((self)->vtable->finalize)(self, nfrf_finalize_op, exception))
  78.  
  79. #define nfrf_GetMatchInfo(self, exception)    \
  80.     (((self)->vtable->GetMatchInfo)(self, nfrf_GetMatchInfo_op, exception))
  81.  
  82. #define nfrf_GetPointSize(self, exception)    \
  83.     (((self)->vtable->GetPointSize)(self, nfrf_GetPointSize_op, exception))
  84.  
  85. #define nfrf_GetMaxWidth(self, exception)    \
  86.     (((self)->vtable->GetMaxWidth)(self, nfrf_GetMaxWidth_op, exception))
  87.  
  88. #define nfrf_GetFontAscent(self, exception)    \
  89.     (((self)->vtable->GetFontAscent)(self, nfrf_GetFontAscent_op, exception))
  90.  
  91. #define nfrf_GetFontDescent(self, exception)    \
  92.     (((self)->vtable->GetFontDescent)(self, nfrf_GetFontDescent_op, exception))
  93.  
  94. #define nfrf_GetMaxLeftBearing(self, exception)    \
  95.     (((self)->vtable->GetMaxLeftBearing)(self, nfrf_GetMaxLeftBearing_op, exception))
  96.  
  97. #define nfrf_GetMaxRightBearing(self, exception)    \
  98.     (((self)->vtable->GetMaxRightBearing)(self, nfrf_GetMaxRightBearing_op, exception))
  99.  
  100. #define nfrf_SetTransformMatrix(self, a, a_length, exception)    \
  101.     (((self)->vtable->SetTransformMatrix)(self, nfrf_SetTransformMatrix_op, a, a_length, exception))
  102.  
  103. #define nfrf_GetTransformMatrix(self, exception)    \
  104.     (((self)->vtable->GetTransformMatrix)(self, nfrf_GetTransformMatrix_op, exception))
  105.  
  106. #define nfrf_MeasureText(self, a, b, c, c_length, d, d_length, exception)    \
  107.     (((self)->vtable->MeasureText)(self, nfrf_MeasureText_op, a, b, c, c_length, d, d_length, exception))
  108.  
  109. #define nfrf_MeasureBoundingBox(self, a, b, c, c_length, d, exception)    \
  110.     (((self)->vtable->MeasureBoundingBox)(self, nfrf_MeasureBoundingBox_op, a, b, c, c_length, d, exception))
  111.  
  112. #define nfrf_DrawText(self, a, b, c, d, e, e_length, exception)    \
  113.     (((self)->vtable->DrawText)(self, nfrf_DrawText_op, a, b, c, d, e, e_length, exception))
  114.  
  115. #define nfrf_PrepareDraw(self, a, exception)    \
  116.     (((self)->vtable->PrepareDraw)(self, nfrf_PrepareDraw_op, a, exception))
  117.  
  118. #define nfrf_EndDraw(self, a, exception)    \
  119.     (((self)->vtable->EndDraw)(self, nfrf_EndDraw_op, a, exception))
  120.  
  121. /*******************************************************************************
  122.  * nfrf Interface
  123.  ******************************************************************************/
  124.  
  125. struct netscape_jmc_JMCInterfaceID;
  126. struct java_lang_Object;
  127. struct java_lang_String;
  128. struct netscape_fonts_nffmi;
  129. struct netscape_fonts_nfrc;
  130. struct netscape_fonts_BoundingBoxStar;
  131.  
  132. struct nfrfInterface {
  133.     void*    (*getInterface)(struct nfrf* self, jint op, const JMCInterfaceID* a, JMCException* *exception);
  134.     void    (*addRef)(struct nfrf* self, jint op, JMCException* *exception);
  135.     void    (*release)(struct nfrf* self, jint op, JMCException* *exception);
  136.     jint    (*hashCode)(struct nfrf* self, jint op, JMCException* *exception);
  137.     jbool    (*equals)(struct nfrf* self, jint op, void* a, JMCException* *exception);
  138.     void*    (*clone)(struct nfrf* self, jint op, JMCException* *exception);
  139.     const char*    (*toString)(struct nfrf* self, jint op, JMCException* *exception);
  140.     void    (*finalize)(struct nfrf* self, jint op, JMCException* *exception);
  141.     struct nffmi*    (*GetMatchInfo)(struct nfrf* self, jint op, JMCException* *exception);
  142.     jdouble    (*GetPointSize)(struct nfrf* self, jint op, JMCException* *exception);
  143.     jint    (*GetMaxWidth)(struct nfrf* self, jint op, JMCException* *exception);
  144.     jint    (*GetFontAscent)(struct nfrf* self, jint op, JMCException* *exception);
  145.     jint    (*GetFontDescent)(struct nfrf* self, jint op, JMCException* *exception);
  146.     jint    (*GetMaxLeftBearing)(struct nfrf* self, jint op, JMCException* *exception);
  147.     jint    (*GetMaxRightBearing)(struct nfrf* self, jint op, JMCException* *exception);
  148.     void    (*SetTransformMatrix)(struct nfrf* self, jint op, void** a, jsize a_length, JMCException* *exception);
  149.     void*    (*GetTransformMatrix)(struct nfrf* self, jint op, JMCException* *exception);
  150.     jint    (*MeasureText)(struct nfrf* self, jint op, struct nfrc* a, jint b, jbyte* c, jsize c_length, jint* d, jsize d_length, JMCException* *exception);
  151.     jint    (*MeasureBoundingBox)(struct nfrf* self, jint op, struct nfrc* a, jint b, jbyte* c, jsize c_length, struct nf_bounding_box * d, JMCException* *exception);
  152.     jint    (*DrawText)(struct nfrf* self, jint op, struct nfrc* a, jint b, jint c, jint d, jbyte* e, jsize e_length, JMCException* *exception);
  153.     jint    (*PrepareDraw)(struct nfrf* self, jint op, struct nfrc* a, JMCException* *exception);
  154.     jint    (*EndDraw)(struct nfrf* self, jint op, struct nfrc* a, JMCException* *exception);
  155. };
  156.  
  157. /*******************************************************************************
  158.  * nfrf Operation IDs
  159.  ******************************************************************************/
  160.  
  161. typedef enum nfrfOperations {
  162.     nfrf_getInterface_op,
  163.     nfrf_addRef_op,
  164.     nfrf_release_op,
  165.     nfrf_hashCode_op,
  166.     nfrf_equals_op,
  167.     nfrf_clone_op,
  168.     nfrf_toString_op,
  169.     nfrf_finalize_op,
  170.     nfrf_GetMatchInfo_op,
  171.     nfrf_GetPointSize_op,
  172.     nfrf_GetMaxWidth_op,
  173.     nfrf_GetFontAscent_op,
  174.     nfrf_GetFontDescent_op,
  175.     nfrf_GetMaxLeftBearing_op,
  176.     nfrf_GetMaxRightBearing_op,
  177.     nfrf_SetTransformMatrix_op,
  178.     nfrf_GetTransformMatrix_op,
  179.     nfrf_MeasureText_op,
  180.     nfrf_MeasureBoundingBox_op,
  181.     nfrf_DrawText_op,
  182.     nfrf_PrepareDraw_op,
  183.     nfrf_EndDraw_op
  184. } nfrfOperations;
  185.  
  186. /******************************************************************************/
  187.  
  188. #ifdef __cplusplus
  189. } /* extern "C" */
  190. #endif /* __cplusplus */
  191.  
  192. #endif /* _Mnfrf_H_ */
  193.