home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wpentk.zip / WBPENTK4.DSK / IDRGEST.IH < prev    next >
Text File  |  1994-10-07  |  26KB  |  746 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: ..\..\pentkt\h\idrgest.ih.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.7
  7.  *     SOM Emitter emitih: 2.22
  8.  */
  9.  
  10. /*
  11.  * 
  12.  *    CLASS: IDRGesture
  13.  * 
  14.  *    CLASS HIERARCHY:
  15.  * 
  16.  *      SOMObject
  17.  *       └── IDRReco
  18.  *             └── IDRGesture
  19.  * 
  20.  *    DESCRIPTION:
  21.  * 
  22.  *      Transformation of input data to gestures.
  23.  */
  24.  
  25.  
  26. #ifndef SOM_IDRGesture_ih
  27. #define SOM_IDRGesture_ih
  28.  
  29. #pragma checkout(suspend)
  30.  
  31. #include <idrgest.h>
  32.  
  33. /*
  34.  * Set the scope of methods functions
  35.  */
  36. #ifndef SOM_Scope
  37. #ifdef __cplusplus
  38.   #define SOM_Scope extern "C"
  39. #else
  40.   #define SOM_Scope extern
  41. #endif  /* __cplusplus */
  42. #endif  /* SOM_Scope */
  43.  
  44. #ifndef SOM_CurrentClass
  45.     #define SOM_CurrentClass IDRGestureCClassData.parentMtab
  46. #endif  /* SOM_CurrentClass */
  47.  
  48. #define IDRGesture_MaxNoMethods 2
  49.  
  50. /*
  51.  * Instance data
  52.  */
  53. typedef void IDRGestureData;
  54.  
  55. /*
  56.  * Begin stuff that only goes in the primary file
  57.  */
  58. #if (defined(IDRGesture_Class_Source) || defined(SOM_Module_idrgest_Source))
  59.  
  60. /*
  61.  * Trace/Debug macro
  62.  */
  63. #ifndef IDRGestureMethodDebug
  64.    #define IDRGestureMethodDebug(c,m) SOMMethodDebug(c,m)
  65. #endif  /* IDRGestureMethodDebug */
  66.  
  67. /*
  68.  * Current class macros for Instance and Meta classes.
  69.  */
  70. #undef SOMMeta
  71. #define SOMMeta M_IDRGestureCClassData.parentMtab
  72. #undef SOMInstance
  73. #define SOMInstance IDRGestureCClassData.parentMtab
  74.  
  75. #ifndef M_IDRGesture_Class_Source
  76.    #define M_IDRGesture_Class_Source
  77. #endif    /* M_IDRGesture_Class_Source */
  78.  
  79. /*
  80.  * Generate the Apply Stubs.
  81.  */
  82. #pragma linkage(somAP_IDRGestidrGetGesturesInfo, system)
  83. static void SOMLINK somAP_IDRGestidrGetGesturesInfo(IDRGesture *somSelf,
  84.         void *__retVal,
  85.         somMethodProc *__methodPtr,
  86.         va_list __ap)
  87. {
  88.     void *__somSelf = va_arg(__ap, void*);
  89.     Environment *ev = va_arg(__ap, Environment*);
  90.     PULONG pulGestCnt = va_arg(__ap, PULONG);
  91.     PIDR_GESTINFO pInfo = va_arg(__ap, PIDR_GESTINFO);
  92.     SOM_IgnoreWarning(__retVal);
  93.  
  94.     ((somTD_IDRGesture_idrGetGesturesInfo) __methodPtr) (somSelf, ev, pulGestCnt,pInfo);
  95. }
  96.  
  97. #pragma linkage(somAP_IDRGestidrRecoStrokes, system)
  98. static void SOMLINK somAP_IDRGestidrRecoStrokes(IDRGesture *somSelf,
  99.         void *__retVal,
  100.         somMethodProc *__methodPtr,
  101.         va_list __ap)
  102. {
  103.     void *__somSelf = va_arg(__ap, void*);
  104.     Environment *ev = va_arg(__ap, Environment*);
  105.     PRECODATA* pprdb = va_arg(__ap, PRECODATA*);
  106.     SOM_IgnoreWarning(__retVal);
  107.  
  108.     ((somTD_IDRGesture_idrRecoStrokes) __methodPtr) (somSelf, ev, pprdb);
  109. }
  110.  
  111.  
  112. /*
  113.  * Overridden method: somInit
  114.  */
  115. #pragma linkage(IDRGestsomInit, system)
  116. SOM_Scope void  SOMLINK IDRGestsomInit(IDRGesture *somSelf);
  117. #ifndef somMN_somInit_defined
  118. #define somMN_somInit_defined
  119.    static char *somMN_somInit = "somInit";
  120.    static somId somId_somInit = &somMN_somInit;
  121. #endif  /* somMN_somInit_defined */
  122. #define IDRGesture_parent_IDRReco_somInit(somSelf) \
  123.     ((SOM_ParentNumResolve(SOMObject, 1, IDRGestureCClassData.parentMtab, somInit)) \
  124.      (somSelf))
  125. #ifndef SOMGD_pmc_IDRReco_somInit
  126.   #ifdef parent_IDRReco_somInit
  127.      #undef parent_IDRReco_somInit
  128.      #define SOMGD_pmc_IDRReco_somInit 1
  129.   #else
  130.      #define parent_IDRReco_somInit IDRGesture_parent_IDRReco_somInit
  131.   #endif /* parent_IDRReco_somInit */
  132. #endif /* SOMGD_pmc_IDRReco_somInit */
  133. #ifndef parent_somInit
  134.    #define parent_somInit(somSelf) \
  135.     ((SOM_ParentNumResolve(SOMObject, 1, SOM_CurrentClass, somInit)) \
  136.      (somSelf))
  137. #endif  /* parent_somInit */
  138. #define IDRGesture_parents_somInit(arg0) \
  139.   (void) IDRGesture_parent_IDRReco_somInit(arg0);
  140.  
  141. /*
  142.  * Overridden method: somUninit
  143.  */
  144. #pragma linkage(IDRGestsomUninit, system)
  145. SOM_Scope void  SOMLINK IDRGestsomUninit(IDRGesture *somSelf);
  146. #ifndef somMN_somUninit_defined
  147. #define somMN_somUninit_defined
  148.    static char *somMN_somUninit = "somUninit";
  149.    static somId somId_somUninit = &somMN_somUninit;
  150. #endif  /* somMN_somUninit_defined */
  151. #define IDRGesture_parent_IDRReco_somUninit(somSelf) \
  152.     ((SOM_ParentNumResolve(SOMObject, 1, IDRGestureCClassData.parentMtab, somUninit)) \
  153.      (somSelf))
  154. #ifndef SOMGD_pmc_IDRReco_somUninit
  155.   #ifdef parent_IDRReco_somUninit
  156.      #undef parent_IDRReco_somUninit
  157.      #define SOMGD_pmc_IDRReco_somUninit 1
  158.   #else
  159.      #define parent_IDRReco_somUninit IDRGesture_parent_IDRReco_somUninit
  160.   #endif /* parent_IDRReco_somUninit */
  161. #endif /* SOMGD_pmc_IDRReco_somUninit */
  162. #ifndef parent_somUninit
  163.    #define parent_somUninit(somSelf) \
  164.     ((SOM_ParentNumResolve(SOMObject, 1, SOM_CurrentClass, somUninit)) \
  165.      (somSelf))
  166. #endif  /* parent_somUninit */
  167. #define IDRGesture_parents_somUninit(arg0) \
  168.   (void) IDRGesture_parent_IDRReco_somUninit(arg0);
  169.  
  170. /*
  171.  * Overridden method: idrGetSymbolSubsetInfo
  172.  */
  173. #pragma linkage(IDRGestidrGetSymbolSubsetInfo, system)
  174. SOM_Scope void  SOMLINK IDRGestidrGetSymbolSubsetInfo(IDRGesture *somSelf, Environment *ev,
  175.         ULONG ulSymSets,
  176.         PULONG pulSymCnt,
  177.         PIDR_SYM pSyms);
  178. #ifndef somMN_idrGetSymbolSubsetInfo_defined
  179. #define somMN_idrGetSymbolSubsetInfo_defined
  180.    static char *somMN_idrGetSymbolSubsetInfo = "idrGetSymbolSubsetInfo";
  181.    static somId somId_idrGetSymbolSubsetInfo = &somMN_idrGetSymbolSubsetInfo;
  182. #endif  /* somMN_idrGetSymbolSubsetInfo_defined */
  183. #define IDRGesture_parent_IDRReco_idrGetSymbolSubsetInfo(somSelf,ev,ulSymSets,pulSymCnt,pSyms) \
  184.     ((SOM_ParentNumResolve(IDRReco, 1, IDRGestureCClassData.parentMtab, idrGetSymbolSubsetInfo)) \
  185.      (somSelf,ev,ulSymSets,pulSymCnt,pSyms))
  186. #ifndef SOMGD_pmc_IDRReco_idrGetSymbolSubsetInfo
  187.   #ifdef parent_IDRReco_idrGetSymbolSubsetInfo
  188.      #undef parent_IDRReco_idrGetSymbolSubsetInfo
  189.      #define SOMGD_pmc_IDRReco_idrGetSymbolSubsetInfo 1
  190.   #else
  191.      #define parent_IDRReco_idrGetSymbolSubsetInfo IDRGesture_parent_IDRReco_idrGetSymbolSubsetInfo
  192.   #endif /* parent_IDRReco_idrGetSymbolSubsetInfo */
  193. #endif /* SOMGD_pmc_IDRReco_idrGetSymbolSubsetInfo */
  194. #ifndef parent_idrGetSymbolSubsetInfo
  195.    #define parent_idrGetSymbolSubsetInfo(somSelf,ev,ulSymSets,pulSymCnt,pSyms) \
  196.     ((SOM_ParentNumResolve(IDRReco, 1, SOM_CurrentClass, idrGetSymbolSubsetInfo)) \
  197.      (somSelf,ev,ulSymSets,pulSymCnt,pSyms))
  198. #endif  /* parent_idrGetSymbolSubsetInfo */
  199. #define IDRGesture_parents_idrGetSymbolSubsetInfo(arg0,arg1,arg2,arg3) \
  200.   (void) IDRGesture_parent_IDRReco_idrGetSymbolSubsetInfo(arg0,arg1,arg2,arg3);
  201.  
  202. /*
  203.  * Overridden method: idrGetSymbolSubset
  204.  */
  205. #pragma linkage(IDRGestidrGetSymbolSubset, system)
  206. SOM_Scope void  SOMLINK IDRGestidrGetSymbolSubset(IDRGesture *somSelf, Environment *ev,
  207.         PIDR_SYMSET pSymSet,
  208.         PULONG pulSize);
  209. #ifndef somMN_idrGetSymbolSubset_defined
  210. #define somMN_idrGetSymbolSubset_defined
  211.    static char *somMN_idrGetSymbolSubset = "idrGetSymbolSubset";
  212.    static somId somId_idrGetSymbolSubset = &somMN_idrGetSymbolSubset;
  213. #endif  /* somMN_idrGetSymbolSubset_defined */
  214. #define IDRGesture_parent_IDRReco_idrGetSymbolSubset(somSelf,ev,pSymSet,pulSize) \
  215.     ((SOM_ParentNumResolve(IDRReco, 1, IDRGestureCClassData.parentMtab, idrGetSymbolSubset)) \
  216.      (somSelf,ev,pSymSet,pulSize))
  217. #ifndef SOMGD_pmc_IDRReco_idrGetSymbolSubset
  218.   #ifdef parent_IDRReco_idrGetSymbolSubset
  219.      #undef parent_IDRReco_idrGetSymbolSubset
  220.      #define SOMGD_pmc_IDRReco_idrGetSymbolSubset 1
  221.   #else
  222.      #define parent_IDRReco_idrGetSymbolSubset IDRGesture_parent_IDRReco_idrGetSymbolSubset
  223.   #endif /* parent_IDRReco_idrGetSymbolSubset */
  224. #endif /* SOMGD_pmc_IDRReco_idrGetSymbolSubset */
  225. #ifndef parent_idrGetSymbolSubset
  226.    #define parent_idrGetSymbolSubset(somSelf,ev,pSymSet,pulSize) \
  227.     ((SOM_ParentNumResolve(IDRReco, 1, SOM_CurrentClass, idrGetSymbolSubset)) \
  228.      (somSelf,ev,pSymSet,pulSize))
  229. #endif  /* parent_idrGetSymbolSubset */
  230. #define IDRGesture_parents_idrGetSymbolSubset(arg0,arg1,arg2) \
  231.   (void) IDRGesture_parent_IDRReco_idrGetSymbolSubset(arg0,arg1,arg2);
  232.  
  233. /*
  234.  * Overridden method: idrSetSymbolSubset
  235.  */
  236. #pragma linkage(IDRGestidrSetSymbolSubset, system)
  237. SOM_Scope void  SOMLINK IDRGestidrSetSymbolSubset(IDRGesture *somSelf, Environment *ev,
  238.         PIDR_SYMSET pSymSet);
  239. #ifndef somMN_idrSetSymbolSubset_defined
  240. #define somMN_idrSetSymbolSubset_defined
  241.    static char *somMN_idrSetSymbolSubset = "idrSetSymbolSubset";
  242.    static somId somId_idrSetSymbolSubset = &somMN_idrSetSymbolSubset;
  243. #endif  /* somMN_idrSetSymbolSubset_defined */
  244. #define IDRGesture_parent_IDRReco_idrSetSymbolSubset(somSelf,ev,pSymSet) \
  245.     ((SOM_ParentNumResolve(IDRReco, 1, IDRGestureCClassData.parentMtab, idrSetSymbolSubset)) \
  246.      (somSelf,ev,pSymSet))
  247. #ifndef SOMGD_pmc_IDRReco_idrSetSymbolSubset
  248.   #ifdef parent_IDRReco_idrSetSymbolSubset
  249.      #undef parent_IDRReco_idrSetSymbolSubset
  250.      #define SOMGD_pmc_IDRReco_idrSetSymbolSubset 1
  251.   #else
  252.      #define parent_IDRReco_idrSetSymbolSubset IDRGesture_parent_IDRReco_idrSetSymbolSubset
  253.   #endif /* parent_IDRReco_idrSetSymbolSubset */
  254. #endif /* SOMGD_pmc_IDRReco_idrSetSymbolSubset */
  255. #ifndef parent_idrSetSymbolSubset
  256.    #define parent_idrSetSymbolSubset(somSelf,ev,pSymSet) \
  257.     ((SOM_ParentNumResolve(IDRReco, 1, SOM_CurrentClass, idrSetSymbolSubset)) \
  258.      (somSelf,ev,pSymSet))
  259. #endif  /* parent_idrSetSymbolSubset */
  260. #define IDRGesture_parents_idrSetSymbolSubset(arg0,arg1) \
  261.   (void) IDRGesture_parent_IDRReco_idrSetSymbolSubset(arg0,arg1);
  262.  
  263. /*
  264.  * Overridden method: idrAddStroke
  265.  */
  266. #pragma linkage(IDRGestidrAddStroke, system)
  267. SOM_Scope void  SOMLINK IDRGestidrAddStroke(IDRGesture *somSelf, Environment *ev,
  268.         PSTROKEDATA pData,
  269.         HWND hRelative);
  270. #ifndef somMN_idrAddStroke_defined
  271. #define somMN_idrAddStroke_defined
  272.    static char *somMN_idrAddStroke = "idrAddStroke";
  273.    static somId somId_idrAddStroke = &somMN_idrAddStroke;
  274. #endif  /* somMN_idrAddStroke_defined */
  275. #define IDRGesture_parent_IDRReco_idrAddStroke(somSelf,ev,pData,hRelative) \
  276.     ((SOM_ParentNumResolve(IDRReco, 1, IDRGestureCClassData.parentMtab, idrAddStroke)) \
  277.      (somSelf,ev,pData,hRelative))
  278. #ifndef SOMGD_pmc_IDRReco_idrAddStroke
  279.   #ifdef parent_IDRReco_idrAddStroke
  280.      #undef parent_IDRReco_idrAddStroke
  281.      #define SOMGD_pmc_IDRReco_idrAddStroke 1
  282.   #else
  283.      #define parent_IDRReco_idrAddStroke IDRGesture_parent_IDRReco_idrAddStroke
  284.   #endif /* parent_IDRReco_idrAddStroke */
  285. #endif /* SOMGD_pmc_IDRReco_idrAddStroke */
  286. #ifndef parent_idrAddStroke
  287.    #define parent_idrAddStroke(somSelf,ev,pData,hRelative) \
  288.     ((SOM_ParentNumResolve(IDRReco, 1, SOM_CurrentClass, idrAddStroke)) \
  289.      (somSelf,ev,pData,hRelative))
  290. #endif  /* parent_idrAddStroke */
  291. #define IDRGesture_parents_idrAddStroke(arg0,arg1,arg2) \
  292.   (void) IDRGesture_parent_IDRReco_idrAddStroke(arg0,arg1,arg2);
  293.  
  294. /*
  295.  * Overridden method: idrAddStrokefromStrokeObject
  296.  */
  297. #pragma linkage(IDRGestidrAddStrokefromStrokeObject, system)
  298. SOM_Scope void  SOMLINK IDRGestidrAddStrokefromStrokeObject(IDRGesture *somSelf, Environment *ev,
  299.         IDOStroke* pStrokeObj);
  300. #ifndef somMN_idrAddStrokefromStrokeObject_defined
  301. #define somMN_idrAddStrokefromStrokeObject_defined
  302.    static char *somMN_idrAddStrokefromStrokeObject = "idrAddStrokefromStrokeObject";
  303.    static somId somId_idrAddStrokefromStrokeObject = &somMN_idrAddStrokefromStrokeObject;
  304. #endif  /* somMN_idrAddStrokefromStrokeObject_defined */
  305. #define IDRGesture_parent_IDRReco_idrAddStrokefromStrokeObject(somSelf,ev,pStrokeObj) \
  306.     ((SOM_ParentNumResolve(IDRReco, 1, IDRGestureCClassData.parentMtab, idrAddStrokefromStrokeObject)) \
  307.      (somSelf,ev,pStrokeObj))
  308. #ifndef SOMGD_pmc_IDRReco_idrAddStrokefromStrokeObject
  309.   #ifdef parent_IDRReco_idrAddStrokefromStrokeObject
  310.      #undef parent_IDRReco_idrAddStrokefromStrokeObject
  311.      #define SOMGD_pmc_IDRReco_idrAddStrokefromStrokeObject 1
  312.   #else
  313.      #define parent_IDRReco_idrAddStrokefromStrokeObject IDRGesture_parent_IDRReco_idrAddStrokefromStrokeObject
  314.   #endif /* parent_IDRReco_idrAddStrokefromStrokeObject */
  315. #endif /* SOMGD_pmc_IDRReco_idrAddStrokefromStrokeObject */
  316. #ifndef parent_idrAddStrokefromStrokeObject
  317.    #define parent_idrAddStrokefromStrokeObject(somSelf,ev,pStrokeObj) \
  318.     ((SOM_ParentNumResolve(IDRReco, 1, SOM_CurrentClass, idrAddStrokefromStrokeObject)) \
  319.      (somSelf,ev,pStrokeObj))
  320. #endif  /* parent_idrAddStrokefromStrokeObject */
  321. #define IDRGesture_parents_idrAddStrokefromStrokeObject(arg0,arg1) \
  322.   (void) IDRGesture_parent_IDRReco_idrAddStrokefromStrokeObject(arg0,arg1);
  323.  
  324. /*
  325.  * Initialize the class data structure
  326.  */
  327. struct IDRGestureClassDataStructure IDRGestureClassData = {(SOMAny *) NULL};
  328.  
  329. /*
  330.  * Define the C class data structure
  331.  */
  332. struct IDRGestureCClassDataStructure IDRGestureCClassData = {(somMethodTabs) NULL};
  333.  
  334. /*
  335.  * New Method: idrGetGesturesInfo
  336.  */
  337. #pragma linkage(IDRGestidrGetGesturesInfo, system)
  338. SOM_Scope void  SOMLINK IDRGestidrGetGesturesInfo(IDRGesture *somSelf, Environment *ev,
  339.         PULONG pulGestCnt,
  340.         PIDR_GESTINFO pInfo);
  341. #ifndef somMN_idrGetGesturesInfo_defined
  342. #define somMN_idrGetGesturesInfo_defined
  343. static char *somMN_idrGetGesturesInfo = "idrGetGesturesInfo";
  344. static somId somId_idrGetGesturesInfo = &somMN_idrGetGesturesInfo;
  345. #endif  /* somMN_idrGetGesturesInfo_defined */
  346. #ifndef somDS_idrGetGesturesInfo_defined
  347. #define somDS_idrGetGesturesInfo_defined
  348. static char *somDS_idrGetGesturesInfo = somMD_IDRGesture_idrGetGesturesInfo;
  349. static somId somDI_idrGetGesturesInfo = &somDS_idrGetGesturesInfo;
  350. #endif  /* somDS_idrGetGesturesInfo_defined */
  351. #pragma linkage(somRD_IDRGestidrGetGesturesInfo, system)
  352. static void  SOMLINK somRD_IDRGestidrGetGesturesInfo(IDRGesture *somSelf, Environment *ev,
  353.         PULONG pulGestCnt,
  354.         PIDR_GESTINFO pInfo)
  355. {
  356.     void* __retVal;
  357.  
  358.     va_somDispatch(somSelf, (void **)&__retVal, somId_idrGetGesturesInfo, somSelf , ev
  359.         ,pulGestCnt,pInfo);
  360. }
  361.  
  362. /*
  363.  * New Method: idrRecoStrokes
  364.  */
  365. #pragma linkage(IDRGestidrRecoStrokes, system)
  366. SOM_Scope void  SOMLINK IDRGestidrRecoStrokes(IDRGesture *somSelf, Environment *ev,
  367.         PRECODATA* pprdb);
  368. #ifndef somMN_idrRecoStrokes_defined
  369. #define somMN_idrRecoStrokes_defined
  370. static char *somMN_idrRecoStrokes = "idrRecoStrokes";
  371. static somId somId_idrRecoStrokes = &somMN_idrRecoStrokes;
  372. #endif  /* somMN_idrRecoStrokes_defined */
  373. #ifndef somDS_idrRecoStrokes_defined
  374. #define somDS_idrRecoStrokes_defined
  375. static char *somDS_idrRecoStrokes = somMD_IDRGesture_idrRecoStrokes;
  376. static somId somDI_idrRecoStrokes = &somDS_idrRecoStrokes;
  377. #endif  /* somDS_idrRecoStrokes_defined */
  378. #pragma linkage(somRD_IDRGestidrRecoStrokes, system)
  379. static void  SOMLINK somRD_IDRGestidrRecoStrokes(IDRGesture *somSelf, Environment *ev,
  380.         PRECODATA* pprdb)
  381. {
  382.     void* __retVal;
  383.  
  384.     va_somDispatch(somSelf, (void **)&__retVal, somId_idrRecoStrokes, somSelf , ev
  385.         ,pprdb);
  386. }
  387.  
  388. /*
  389.  * Routines and Structures to create the class object
  390.  */
  391.  
  392. /*
  393.  * Declare the Static Methods table.
  394.  */
  395. static somStaticMethod_t IDRGestureSM[] = {
  396.     {    &IDRGestureClassData.idrGetGesturesInfo,
  397.          &somId_idrGetGesturesInfo,
  398.          &somDI_idrGetGesturesInfo,
  399.          (somMethodProc *) IDRGestidrGetGesturesInfo,
  400.          (somMethodProc *) somRD_IDRGestidrGetGesturesInfo,
  401.          (somMethodProc *) somAP_IDRGestidrGetGesturesInfo    },
  402.     {    &IDRGestureClassData.idrRecoStrokes,
  403.          &somId_idrRecoStrokes,
  404.          &somDI_idrRecoStrokes,
  405.          (somMethodProc *) IDRGestidrRecoStrokes,
  406.          (somMethodProc *) somRD_IDRGestidrRecoStrokes,
  407.          (somMethodProc *) somAP_IDRGestidrRecoStrokes    },
  408. };
  409.  
  410.  
  411. /*
  412.  * Declare the Override Methods table.
  413.  */
  414. static somOverrideMethod_t IDRGestureOM[] = {
  415.     {    &somId_somInit,
  416.          (somMethodProc *) IDRGestsomInit    },
  417.     {    &somId_somUninit,
  418.          (somMethodProc *) IDRGestsomUninit    },
  419.     {    &somId_idrGetSymbolSubsetInfo,
  420.          (somMethodProc *) IDRGestidrGetSymbolSubsetInfo    },
  421.     {    &somId_idrGetSymbolSubset,
  422.          (somMethodProc *) IDRGestidrGetSymbolSubset    },
  423.     {    &somId_idrSetSymbolSubset,
  424.          (somMethodProc *) IDRGestidrSetSymbolSubset    },
  425.     {    &somId_idrAddStroke,
  426.          (somMethodProc *) IDRGestidrAddStroke    },
  427.     {    &somId_idrAddStrokefromStrokeObject,
  428.          (somMethodProc *) IDRGestidrAddStrokefromStrokeObject    },
  429. };
  430.  
  431.  
  432. /*
  433.  *  Initializers for class Ids
  434.  */
  435. static char * somCN_IDRGesture = "IDRGesture";
  436. #ifndef somEMC_M_IDRGesture_defined
  437. #define somEMC_M_IDRGesture_defined
  438. static char * somEMC_M_IDRGesture = "M_IDRGesture";
  439. #endif
  440. static char * somPCN_IDRGesture_IDRReco = "IDRReco";
  441.  
  442. static somId somPCIDRGesture[] = {
  443.     &somPCN_IDRGesture_IDRReco,
  444. };
  445.  
  446. static somStaticClassInfo IDRGestureSCI = {
  447.     3, 2, 7, 0, 0, 0,
  448.     IDRGesture_MajorVersion, IDRGesture_MinorVersion,
  449.     0, IDRGesture_MaxNoMethods, 1,
  450.     &somCN_IDRGesture,
  451.     &somEMC_M_IDRGesture, 0,
  452.     somPCIDRGesture,
  453.     (somClassDataStructure *) &IDRGestureClassData,
  454.     (somCClassDataStructure *) &IDRGestureCClassData,
  455.     IDRGestureSM, IDRGestureOM,
  456.     (char *) NULL,
  457.     (somNonInternalData_t *) NULL,  (somProcMethods_t *) NULL,
  458.     (somVarargsFuncs_t *) NULL,
  459.     (somTP_somClassInitFunc *) NULL,
  460.     0,
  461.     0,  /* old style class, zero directinitclasses */
  462.     0, /* no directinitclasses */
  463.     0, /* number of methods */
  464.     0, /* methods of the class */
  465.     0, /* dataOffset1 */
  466.     0, /* dataOffset2 */
  467.     0, /* number of SelectInheritedMethods */
  468.     0, /* SelectInheritedMethods */
  469.     0, /* number of releaseorder entries */
  470.     0, /* ReleaseOrder */
  471.     0, /* number of migrated methods */
  472.     0, /* migrated method implementations */
  473.     0, /* number of initializers */
  474.     0, /* initializers */
  475.     0, /* used to identify a DTS class */
  476.     0, /* used to register dynamically computed info */
  477. };
  478.  
  479.  
  480. IDRGesture * SOMLINK IDRGestureNewClass (integer4 somtmajorVersion,
  481.         integer4 somtminorVersion)
  482. {
  483.     IDRRecoNewClass(IDRReco_MajorVersion,IDRReco_MinorVersion);    /* static reference */
  484.     /* Explicit metaclass, so get it */ 
  485.     M_IDRGestureNewClass(M_IDRGesture_MajorVersion,M_IDRGesture_MinorVersion);    /* static reference */
  486.     return (somBuildClass(1,&IDRGestureSCI, somtmajorVersion, somtminorVersion));
  487. }
  488.  
  489. /*
  490.  * Functions for attributes.
  491.  */
  492.  
  493. #endif                   /* IDRGesture_Class_Source */
  494. #pragma checkout(resume)
  495.  
  496. #endif       /* SOM_IDRGesture_ih */
  497.  
  498. #ifndef SOM_M_IDRGesture_ih
  499. #define SOM_M_IDRGesture_ih
  500.  
  501. #pragma checkout(suspend)
  502.  
  503. #include <idrgest.h>
  504.  
  505. /*
  506.  * Set the scope of methods functions
  507.  */
  508. #ifndef SOM_Scope
  509. #ifdef __cplusplus
  510.   #define SOM_Scope extern "C"
  511. #else
  512.   #define SOM_Scope extern
  513. #endif  /* __cplusplus */
  514. #endif  /* SOM_Scope */
  515.  
  516. #ifndef SOM_CurrentClass
  517.     #define SOM_CurrentClass M_IDRGestureCClassData.parentMtab
  518. #endif  /* SOM_CurrentClass */
  519.  
  520. #define M_IDRGesture_MaxNoMethods 1
  521.  
  522. /*
  523.  * Instance data
  524.  */
  525. typedef void M_IDRGestureData;
  526.  
  527. /*
  528.  * Begin stuff that only goes in the primary file
  529.  */
  530. #if (defined(IDRGesture_Class_Source) || defined(M_IDRGesture_Class_Source) || defined(SOM_Module_idrgest_Source))
  531.  
  532. /*
  533.  * Trace/Debug macro
  534.  */
  535. #ifndef M_IDRGestureMethodDebug
  536.    #define M_IDRGestureMethodDebug(c,m) SOMMethodDebug(c,m)
  537. #endif  /* M_IDRGestureMethodDebug */
  538.  
  539. /*
  540.  * Current class macros for Instance and Meta classes.
  541.  */
  542.  
  543. /*
  544.  * Generate the Apply Stubs.
  545.  */
  546. #pragma linkage(somAP_IDRGestMidrclsNewIDRGesture, system)
  547. static void SOMLINK somAP_IDRGestMidrclsNewIDRGesture(M_IDRGesture *somSelf,
  548.         IDRGesture* *__retVal,
  549.         somMethodProc *__methodPtr,
  550.         va_list __ap)
  551. {
  552.     void *__somSelf = va_arg(__ap, void*);
  553.     Environment *ev = va_arg(__ap, Environment*);
  554.     PVOID pCfg = va_arg(__ap, PVOID);
  555.     PVOID pszRegName = va_arg(__ap, PVOID);
  556.  
  557.     *__retVal = ((somTD_M_IDRGesture_idrclsNewIDRGesture) __methodPtr) (somSelf, ev, pCfg,pszRegName);
  558. }
  559.  
  560.  
  561. /*
  562.  * Overridden method: idrclsFreeIDR
  563.  */
  564. #pragma linkage(IDRGestMidrclsFreeIDR, system)
  565. SOM_Scope void  SOMLINK IDRGestMidrclsFreeIDR(M_IDRGesture *somSelf, Environment *ev,
  566.         IDRReco* pObject);
  567. #ifndef somMN_idrclsFreeIDR_defined
  568. #define somMN_idrclsFreeIDR_defined
  569.    static char *somMN_idrclsFreeIDR = "idrclsFreeIDR";
  570.    static somId somId_idrclsFreeIDR = &somMN_idrclsFreeIDR;
  571. #endif  /* somMN_idrclsFreeIDR_defined */
  572. #define M_IDRGesture_parent_M_IDRReco_idrclsFreeIDR(somSelf,ev,pObject) \
  573.     ((SOM_ParentNumResolve(M_IDRReco, 1, M_IDRGestureCClassData.parentMtab, idrclsFreeIDR)) \
  574.      (somSelf,ev,pObject))
  575. #ifndef SOMGD_pmc_M_IDRReco_idrclsFreeIDR
  576.   #ifdef parent_M_IDRReco_idrclsFreeIDR
  577.      #undef parent_M_IDRReco_idrclsFreeIDR
  578.      #define SOMGD_pmc_M_IDRReco_idrclsFreeIDR 1
  579.   #else
  580.      #define parent_M_IDRReco_idrclsFreeIDR M_IDRGesture_parent_M_IDRReco_idrclsFreeIDR
  581.   #endif /* parent_M_IDRReco_idrclsFreeIDR */
  582. #endif /* SOMGD_pmc_M_IDRReco_idrclsFreeIDR */
  583. #ifndef parent_idrclsFreeIDR
  584.    #define parent_idrclsFreeIDR(somSelf,ev,pObject) \
  585.     ((SOM_ParentNumResolve(M_IDRReco, 1, SOM_CurrentClass, idrclsFreeIDR)) \
  586.      (somSelf,ev,pObject))
  587. #endif  /* parent_idrclsFreeIDR */
  588. #define M_IDRGesture_parents_idrclsFreeIDR(arg0,arg1) \
  589.   (void) M_IDRGesture_parent_M_IDRReco_idrclsFreeIDR(arg0,arg1);
  590.  
  591. /*
  592.  * Overridden method: somInit
  593.  */
  594. #pragma linkage(IDRGestMsomInit, system)
  595. SOM_Scope void  SOMLINK IDRGestMsomInit(M_IDRGesture *somSelf);
  596. #ifndef somMN_somInit_defined
  597. #define somMN_somInit_defined
  598.    static char *somMN_somInit = "somInit";
  599.    static somId somId_somInit = &somMN_somInit;
  600. #endif  /* somMN_somInit_defined */
  601. #define M_IDRGesture_parent_M_IDRReco_somInit(somSelf) \
  602.     ((SOM_ParentNumResolve(SOMObject, 1, M_IDRGestureCClassData.parentMtab, somInit)) \
  603.      (somSelf))
  604. #ifndef SOMGD_pmc_M_IDRReco_somInit
  605.   #ifdef parent_M_IDRReco_somInit
  606.      #undef parent_M_IDRReco_somInit
  607.      #define SOMGD_pmc_M_IDRReco_somInit 1
  608.   #else
  609.      #define parent_M_IDRReco_somInit M_IDRGesture_parent_M_IDRReco_somInit
  610.   #endif /* parent_M_IDRReco_somInit */
  611. #endif /* SOMGD_pmc_M_IDRReco_somInit */
  612. #ifndef parent_somInit
  613.    #define parent_somInit(somSelf) \
  614.     ((SOM_ParentNumResolve(SOMObject, 1, SOM_CurrentClass, somInit)) \
  615.      (somSelf))
  616. #endif  /* parent_somInit */
  617. #define M_IDRGesture_parents_somInit(arg0) \
  618.   (void) M_IDRGesture_parent_M_IDRReco_somInit(arg0);
  619.  
  620. /*
  621.  * Initialize the class data structure
  622.  */
  623. struct M_IDRGestureClassDataStructure M_IDRGestureClassData = {(SOMAny *) NULL};
  624.  
  625. /*
  626.  * Define the C class data structure
  627.  */
  628. struct M_IDRGestureCClassDataStructure M_IDRGestureCClassData = {(somMethodTabs) NULL};
  629.  
  630. /*
  631.  * New Method: idrclsNewIDRGesture
  632.  */
  633. #pragma linkage(IDRGestMidrclsNewIDRGesture, system)
  634. SOM_Scope IDRGesture*  SOMLINK IDRGestMidrclsNewIDRGesture(M_IDRGesture *somSelf, Environment *ev,
  635.         PVOID pCfg,
  636.         PVOID pszRegName);
  637. #ifndef somMN_idrclsNewIDRGesture_defined
  638. #define somMN_idrclsNewIDRGesture_defined
  639. static char *somMN_idrclsNewIDRGesture = "idrclsNewIDRGesture";
  640. static somId somId_idrclsNewIDRGesture = &somMN_idrclsNewIDRGesture;
  641. #endif  /* somMN_idrclsNewIDRGesture_defined */
  642. #ifndef somDS_idrclsNewIDRGesture_defined
  643. #define somDS_idrclsNewIDRGesture_defined
  644. static char *somDS_idrclsNewIDRGesture = somMD_M_IDRGesture_idrclsNewIDRGesture;
  645. static somId somDI_idrclsNewIDRGesture = &somDS_idrclsNewIDRGesture;
  646. #endif  /* somDS_idrclsNewIDRGesture_defined */
  647. #pragma linkage(somRD_IDRGestMidrclsNewIDRGesture, system)
  648. static IDRGesture*  SOMLINK somRD_IDRGestMidrclsNewIDRGesture(M_IDRGesture *somSelf, Environment *ev,
  649.         PVOID pCfg,
  650.         PVOID pszRegName)
  651. {
  652.     IDRGesture* __retVal;
  653.  
  654.     va_somDispatch(somSelf, (void **)&__retVal, somId_idrclsNewIDRGesture, somSelf , ev
  655.         ,pCfg,pszRegName);
  656.     return __retVal;
  657. }
  658.  
  659. /*
  660.  * Routines and Structures to create the class object
  661.  */
  662.  
  663. /*
  664.  * Declare the Static Methods table.
  665.  */
  666. static somStaticMethod_t M_IDRGestureSM[] = {
  667.     {    &M_IDRGestureClassData.idrclsNewIDRGesture,
  668.          &somId_idrclsNewIDRGesture,
  669.          &somDI_idrclsNewIDRGesture,
  670.          (somMethodProc *) IDRGestMidrclsNewIDRGesture,
  671.          (somMethodProc *) somRD_IDRGestMidrclsNewIDRGesture,
  672.          (somMethodProc *) somAP_IDRGestMidrclsNewIDRGesture    },
  673. };
  674.  
  675.  
  676. /*
  677.  * Declare the Override Methods table.
  678.  */
  679. static somOverrideMethod_t M_IDRGestureOM[] = {
  680.     {    &somId_idrclsFreeIDR,
  681.          (somMethodProc *) IDRGestMidrclsFreeIDR    },
  682.     {    &somId_somInit,
  683.          (somMethodProc *) IDRGestMsomInit    },
  684. };
  685.  
  686.  
  687. /*
  688.  *  Initializers for class Ids
  689.  */
  690. static char * somCN_M_IDRGesture = "M_IDRGesture";
  691. static char * somPCN_M_IDRGesture_M_IDRReco = "M_IDRReco";
  692.  
  693. static somId somPCM_IDRGesture[] = {
  694.     &somPCN_M_IDRGesture_M_IDRReco,
  695. };
  696.  
  697. static somStaticClassInfo M_IDRGestureSCI = {
  698.     3, 1, 2, 0, 0, 0,
  699.     M_IDRGesture_MajorVersion, M_IDRGesture_MinorVersion,
  700.     0, M_IDRGesture_MaxNoMethods, 1,
  701.     &somCN_M_IDRGesture,
  702.     (somId) NULL, 1,
  703.     somPCM_IDRGesture,
  704.     (somClassDataStructure *) &M_IDRGestureClassData,
  705.     (somCClassDataStructure *) &M_IDRGestureCClassData,
  706.     M_IDRGestureSM, M_IDRGestureOM,
  707.     (char *) NULL,
  708.     (somNonInternalData_t *) NULL,  (somProcMethods_t *) NULL,
  709.     (somVarargsFuncs_t *) NULL,
  710.     (somTP_somClassInitFunc *) NULL,
  711.     0,
  712.     0,  /* old style class, zero directinitclasses */
  713.     0, /* no directinitclasses */
  714.     0, /* number of methods */
  715.     0, /* methods of the class */
  716.     0, /* dataOffset1 */
  717.     0, /* dataOffset2 */
  718.     0, /* number of SelectInheritedMethods */
  719.     0, /* SelectInheritedMethods */
  720.     0, /* number of releaseorder entries */
  721.     0, /* ReleaseOrder */
  722.     0, /* number of migrated methods */
  723.     0, /* migrated method implementations */
  724.     0, /* number of initializers */
  725.     0, /* initializers */
  726.     0, /* used to identify a DTS class */
  727.     0, /* used to register dynamically computed info */
  728. };
  729.  
  730.  
  731. M_IDRGesture * SOMLINK M_IDRGestureNewClass (integer4 somtmajorVersion,
  732.         integer4 somtminorVersion)
  733. {
  734.     M_IDRRecoNewClass(M_IDRReco_MajorVersion,M_IDRReco_MinorVersion);    /* static reference */
  735.     return (somBuildClass(1,&M_IDRGestureSCI, somtmajorVersion, somtminorVersion));
  736. }
  737.  
  738. /*
  739.  * Functions for attributes.
  740.  */
  741.  
  742. #endif                   /* M_IDRGesture_Class_Source */
  743. #pragma checkout(resume)
  744.  
  745. #endif       /* SOM_M_IDRGesture_ih */
  746.