home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: WPS_PM / WPS_PM.zip / xfld085s.zip / main / xfpgmf.ih < prev    next >
Text File  |  1999-02-04  |  29KB  |  755 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: xfpgmf.ih.
  5.  * Generated using:
  6.  *     SOM Precompiler somipc: 2.29.1.2
  7.  *     SOM Emitter emitih: 2.41
  8.  */
  9.  
  10. /*
  11.  * 
  12.  * xfpgmf.idl:
  13.  *      SOM interface description file for the following
  14.  *      XFolder classes (in this order):
  15.  *          XFldProgramFile
  16.  *      and the respective metaclasses.
  17.  * 
  18.  *      Check the other files starting with xf* for the
  19.  *      other XFolder classes.
  20.  * 
  21.  *      XFldProgram is only responsible for changing the
  22.  *      default icons of executable files.
  23.  * 
  24.  *      Installation of this class is optional.
  25.  * 
  26.  *      Copyright (C) 1997-99 Ulrich Möller.
  27.  *      This file is part of the XFolder source package.
  28.  *      XFolder is free software; you can redistribute it and/or modify
  29.  *      it under the terms of the GNU General Public License as published
  30.  *      by the Free Software Foundation, in version 2 as it comes in the
  31.  *      "COPYING" file of the XFolder main distribution.
  32.  *      This program is distributed in the hope that it will be useful,
  33.  *      but WITHOUT ANY WARRANTY; without even the implied warranty of
  34.  *      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  35.  *      GNU General Public License for more details.
  36.  */
  37.  
  38.  
  39. /*
  40.  * -- By default, for classes declared using IDL,
  41.  * -- this emitter doesn't define redispatch/apply stubs.
  42.  * -- Instead, it requests that the SOM kernel produce them.
  43.  * -- To override this default, use the "notc" modifier.
  44.  */
  45.  
  46. #ifndef SOM_XFldProgramFile_ih
  47. #define SOM_XFldProgramFile_ih
  48.  
  49.  
  50.  
  51. #include <xfpgmf.h>
  52.  
  53. /*
  54.  * Set the scope of methods functions
  55.  */
  56. #ifndef SOM_Scope
  57. #ifdef __cplusplus
  58.   #define SOM_Scope extern "C"
  59. #else
  60.   #define SOM_Scope extern
  61. #endif  /* __cplusplus */
  62. #endif  /* SOM_Scope */
  63.  
  64. #ifndef SOM_CurrentClass
  65.     #define SOM_CurrentClass XFldProgramFileCClassData.parentMtab
  66. #endif  /* SOM_CurrentClass */
  67.  
  68. #define XFldProgramFile_MaxNoMethods 1
  69.  
  70. /*
  71.  * -- Instance data
  72.  */
  73. typedef struct {
  74.     HPOINTER hptrThis;
  75.     BOOL fProgIconSet;
  76.     ULONG ulDosAppType;
  77.     ULONG ulAppType;
  78. } XFldProgramFileData;
  79.  
  80. /*
  81.  * GetData macro
  82.  */
  83.  
  84. /*
  85.  * -- This emitter treats Data Tokens as Thunks by default.
  86.  * -- Use the sc modifier "nothunks" to override this default.
  87.  */
  88. typedef XFldProgramFileData* SOMLINK somTP_XFldProgramFile_DataThunk(void*);
  89. #ifdef __IBMC__
  90. #pragma linkage(somTP_XFldProgramFile_DataThunk, system)
  91. #endif
  92. typedef somTP_XFldProgramFile_DataThunk *somTD_XFldProgramFile_DataThunk;
  93.  
  94. #define XFldProgramFileGetData(somSelf) \
  95.    (((somTD_XFldProgramFile_DataThunk)(XFldProgramFileCClassData.instanceDataToken))(somSelf))
  96.  
  97. /*
  98.  * Instance variable access macros
  99.  */
  100. #define _hptrThis (somThis->hptrThis)
  101. #define _fProgIconSet (somThis->fProgIconSet)
  102. #define _ulDosAppType (somThis->ulDosAppType)
  103. #define _ulAppType (somThis->ulAppType)
  104.  
  105. /*
  106.  * Primary Implementation File Support
  107.  */
  108. #if (defined(XFldProgramFile_Class_Source) || defined(SOM_Module_xfpgmf_Source))
  109.  
  110. /*
  111.  * Trace/Debug macro
  112.  */
  113. #ifndef XFldProgramFileMethodDebug
  114.    #define XFldProgramFileMethodDebug(c,m) SOMMethodDebug(c,m)
  115. #endif  /* XFldProgramFileMethodDebug */
  116.  
  117. /*
  118.  * Current class macros for Instance and Meta classes.
  119.  */
  120. #undef SOMMeta
  121. #define SOMMeta M_XFldProgramFileCClassData.parentMtab
  122. #undef SOMInstance
  123. #define SOMInstance XFldProgramFileCClassData.parentMtab
  124.  
  125. #ifndef M_XFldProgramFile_Class_Source
  126.    #define M_XFldProgramFile_Class_Source
  127. #endif    /* M_XFldProgramFile_Class_Source */
  128.  
  129. /*
  130.  * -- Apply Stubs for New Methods
  131.  */
  132. #pragma linkage(somAP_xfQueryProgType, system)
  133. static void SOMLINK somAP_xfQueryProgType(XFldProgramFile *somSelf,
  134.         ULONG *__retVal,
  135.         somMethodProc *__methodPtr,
  136.         va_list __ap)
  137. {
  138.     XFldProgramFile* __somSelf = va_arg(__ap, XFldProgramFile*);
  139.     SOM_IgnoreWarning(__ap);
  140.  
  141.     *__retVal = ((somTD_XFldProgramFile_xfQueryProgType) __methodPtr) (__somSelf);
  142. }
  143.  
  144.  
  145. /*
  146.  * Overridden method: wpInitData
  147.  */
  148. #pragma linkage(xfpgmf_wpInitData, system)
  149. SOM_Scope void  SOMLINK xfpgmf_wpInitData(XFldProgramFile *somSelf);
  150. static char *somMN_XFldProgramFilewpInitData = "WPObject::wpInitData";
  151. static somId somId_XFldProgramFilewpInitData = &somMN_XFldProgramFilewpInitData;
  152. #ifdef somId_wpInitData
  153. #undef somId_wpInitData
  154. #else
  155. #define somId_wpInitData somId_XFldProgramFilewpInitData
  156. #endif
  157. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpInitData_resolved = 0;
  158. #define XFldProgramFile_parent_WPProgramFile_wpInitData(somSelf) \
  159.   ((( somTD_WPObject_wpInitData ) \
  160.     ((XFldProgramFile_parent_WPProgramFile_wpInitData_resolved)? \
  161.       XFldProgramFile_parent_WPProgramFile_wpInitData_resolved : \
  162.       (XFldProgramFile_parent_WPProgramFile_wpInitData_resolved = \
  163.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPObjectClassData.wpInitData)))) \
  164.      (somSelf))
  165. #ifndef SOMGD_pmc_WPProgramFile_wpInitData
  166.   #ifdef parent_WPProgramFile_wpInitData
  167.      #undef parent_WPProgramFile_wpInitData
  168.      #define SOMGD_pmc_WPProgramFile_wpInitData 1
  169.   #else
  170.      #define parent_WPProgramFile_wpInitData XFldProgramFile_parent_WPProgramFile_wpInitData
  171.   #endif /* parent_WPProgramFile_wpInitData */
  172. #endif /* SOMGD_pmc_WPProgramFile_wpInitData */
  173. #ifndef parent_wpInitData
  174.      #define parent_wpInitData XFldProgramFile_parent_WPProgramFile_wpInitData
  175. #endif  /* parent_wpInitData */
  176. #define XFldProgramFile_parents_wpInitData(arg0) (\
  177.    XFldProgramFile_parent_WPProgramFile_wpInitData(arg0))
  178.  
  179. /*
  180.  * Overridden method: wpObjectReady
  181.  */
  182. #pragma linkage(xfpgmf_wpObjectReady, system)
  183. SOM_Scope void  SOMLINK xfpgmf_wpObjectReady(XFldProgramFile *somSelf,
  184.         ULONG ulCode,
  185.         WPObject* refObject);
  186. static char *somMN_XFldProgramFilewpObjectReady = "WPObject::wpObjectReady";
  187. static somId somId_XFldProgramFilewpObjectReady = &somMN_XFldProgramFilewpObjectReady;
  188. #ifdef somId_wpObjectReady
  189. #undef somId_wpObjectReady
  190. #else
  191. #define somId_wpObjectReady somId_XFldProgramFilewpObjectReady
  192. #endif
  193. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpObjectReady_resolved = 0;
  194. #define XFldProgramFile_parent_WPProgramFile_wpObjectReady(somSelf,ulCode,refObject) \
  195.   ((( somTD_WPObject_wpObjectReady ) \
  196.     ((XFldProgramFile_parent_WPProgramFile_wpObjectReady_resolved)? \
  197.       XFldProgramFile_parent_WPProgramFile_wpObjectReady_resolved : \
  198.       (XFldProgramFile_parent_WPProgramFile_wpObjectReady_resolved = \
  199.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPObjectClassData.wpObjectReady)))) \
  200.      (somSelf,ulCode,refObject))
  201. #ifndef SOMGD_pmc_WPProgramFile_wpObjectReady
  202.   #ifdef parent_WPProgramFile_wpObjectReady
  203.      #undef parent_WPProgramFile_wpObjectReady
  204.      #define SOMGD_pmc_WPProgramFile_wpObjectReady 1
  205.   #else
  206.      #define parent_WPProgramFile_wpObjectReady XFldProgramFile_parent_WPProgramFile_wpObjectReady
  207.   #endif /* parent_WPProgramFile_wpObjectReady */
  208. #endif /* SOMGD_pmc_WPProgramFile_wpObjectReady */
  209. #ifndef parent_wpObjectReady
  210.      #define parent_wpObjectReady XFldProgramFile_parent_WPProgramFile_wpObjectReady
  211. #endif  /* parent_wpObjectReady */
  212. #define XFldProgramFile_parents_wpObjectReady(arg0,arg1,arg2) (\
  213.    XFldProgramFile_parent_WPProgramFile_wpObjectReady(arg0,arg1,arg2))
  214.  
  215. /*
  216.  * Overridden method: wpQueryStyle
  217.  */
  218. #pragma linkage(xfpgmf_wpQueryStyle, system)
  219. SOM_Scope ULONG  SOMLINK xfpgmf_wpQueryStyle(XFldProgramFile *somSelf);
  220. static char *somMN_XFldProgramFilewpQueryStyle = "WPObject::wpQueryStyle";
  221. static somId somId_XFldProgramFilewpQueryStyle = &somMN_XFldProgramFilewpQueryStyle;
  222. #ifdef somId_wpQueryStyle
  223. #undef somId_wpQueryStyle
  224. #else
  225. #define somId_wpQueryStyle somId_XFldProgramFilewpQueryStyle
  226. #endif
  227. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpQueryStyle_resolved = 0;
  228. #define XFldProgramFile_parent_WPProgramFile_wpQueryStyle(somSelf) \
  229.   ((( somTD_WPObject_wpQueryStyle ) \
  230.     ((XFldProgramFile_parent_WPProgramFile_wpQueryStyle_resolved)? \
  231.       XFldProgramFile_parent_WPProgramFile_wpQueryStyle_resolved : \
  232.       (XFldProgramFile_parent_WPProgramFile_wpQueryStyle_resolved = \
  233.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPObjectClassData.wpQueryStyle)))) \
  234.      (somSelf))
  235. #ifndef SOMGD_pmc_WPProgramFile_wpQueryStyle
  236.   #ifdef parent_WPProgramFile_wpQueryStyle
  237.      #undef parent_WPProgramFile_wpQueryStyle
  238.      #define SOMGD_pmc_WPProgramFile_wpQueryStyle 1
  239.   #else
  240.      #define parent_WPProgramFile_wpQueryStyle XFldProgramFile_parent_WPProgramFile_wpQueryStyle
  241.   #endif /* parent_WPProgramFile_wpQueryStyle */
  242. #endif /* SOMGD_pmc_WPProgramFile_wpQueryStyle */
  243. #ifndef parent_wpQueryStyle
  244.      #define parent_wpQueryStyle XFldProgramFile_parent_WPProgramFile_wpQueryStyle
  245. #endif  /* parent_wpQueryStyle */
  246. #define XFldProgramFile_parents_wpQueryStyle(arg0) (\
  247.    XFldProgramFile_parent_WPProgramFile_wpQueryStyle(arg0))
  248.  
  249. /*
  250.  * Overridden method: wpSetIcon
  251.  */
  252. #pragma linkage(xfpgmf_wpSetIcon, system)
  253. SOM_Scope BOOL  SOMLINK xfpgmf_wpSetIcon(XFldProgramFile *somSelf,
  254.         HPOINTER hptrNewIcon);
  255. static char *somMN_XFldProgramFilewpSetIcon = "WPObject::wpSetIcon";
  256. static somId somId_XFldProgramFilewpSetIcon = &somMN_XFldProgramFilewpSetIcon;
  257. #ifdef somId_wpSetIcon
  258. #undef somId_wpSetIcon
  259. #else
  260. #define somId_wpSetIcon somId_XFldProgramFilewpSetIcon
  261. #endif
  262. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpSetIcon_resolved = 0;
  263. #define XFldProgramFile_parent_WPProgramFile_wpSetIcon(somSelf,hptrNewIcon) \
  264.   ((( somTD_WPObject_wpSetIcon ) \
  265.     ((XFldProgramFile_parent_WPProgramFile_wpSetIcon_resolved)? \
  266.       XFldProgramFile_parent_WPProgramFile_wpSetIcon_resolved : \
  267.       (XFldProgramFile_parent_WPProgramFile_wpSetIcon_resolved = \
  268.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPObjectClassData.wpSetIcon)))) \
  269.      (somSelf,hptrNewIcon))
  270. #ifndef SOMGD_pmc_WPProgramFile_wpSetIcon
  271.   #ifdef parent_WPProgramFile_wpSetIcon
  272.      #undef parent_WPProgramFile_wpSetIcon
  273.      #define SOMGD_pmc_WPProgramFile_wpSetIcon 1
  274.   #else
  275.      #define parent_WPProgramFile_wpSetIcon XFldProgramFile_parent_WPProgramFile_wpSetIcon
  276.   #endif /* parent_WPProgramFile_wpSetIcon */
  277. #endif /* SOMGD_pmc_WPProgramFile_wpSetIcon */
  278. #ifndef parent_wpSetIcon
  279.      #define parent_wpSetIcon XFldProgramFile_parent_WPProgramFile_wpSetIcon
  280. #endif  /* parent_wpSetIcon */
  281. #define XFldProgramFile_parents_wpSetIcon(arg0,arg1) (\
  282.    XFldProgramFile_parent_WPProgramFile_wpSetIcon(arg0,arg1))
  283.  
  284. /*
  285.  * Overridden method: wpSetProgIcon
  286.  */
  287. #pragma linkage(xfpgmf_wpSetProgIcon, system)
  288. SOM_Scope BOOL  SOMLINK xfpgmf_wpSetProgIcon(XFldProgramFile *somSelf,
  289.         PFEA2LIST pfeal);
  290. static char *somMN_XFldProgramFilewpSetProgIcon = "WPProgramFile::wpSetProgIcon";
  291. static somId somId_XFldProgramFilewpSetProgIcon = &somMN_XFldProgramFilewpSetProgIcon;
  292. #ifdef somId_wpSetProgIcon
  293. #undef somId_wpSetProgIcon
  294. #else
  295. #define somId_wpSetProgIcon somId_XFldProgramFilewpSetProgIcon
  296. #endif
  297. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpSetProgIcon_resolved = 0;
  298. #define XFldProgramFile_parent_WPProgramFile_wpSetProgIcon(somSelf,pfeal) \
  299.   ((( somTD_WPProgramFile_wpSetProgIcon ) \
  300.     ((XFldProgramFile_parent_WPProgramFile_wpSetProgIcon_resolved)? \
  301.       XFldProgramFile_parent_WPProgramFile_wpSetProgIcon_resolved : \
  302.       (XFldProgramFile_parent_WPProgramFile_wpSetProgIcon_resolved = \
  303.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPProgramFileClassData.wpSetProgIcon)))) \
  304.      (somSelf,pfeal))
  305. #ifndef SOMGD_pmc_WPProgramFile_wpSetProgIcon
  306.   #ifdef parent_WPProgramFile_wpSetProgIcon
  307.      #undef parent_WPProgramFile_wpSetProgIcon
  308.      #define SOMGD_pmc_WPProgramFile_wpSetProgIcon 1
  309.   #else
  310.      #define parent_WPProgramFile_wpSetProgIcon XFldProgramFile_parent_WPProgramFile_wpSetProgIcon
  311.   #endif /* parent_WPProgramFile_wpSetProgIcon */
  312. #endif /* SOMGD_pmc_WPProgramFile_wpSetProgIcon */
  313. #ifndef parent_wpSetProgIcon
  314.      #define parent_wpSetProgIcon XFldProgramFile_parent_WPProgramFile_wpSetProgIcon
  315. #endif  /* parent_wpSetProgIcon */
  316. #define XFldProgramFile_parents_wpSetProgIcon(arg0,arg1) (\
  317.    XFldProgramFile_parent_WPProgramFile_wpSetProgIcon(arg0,arg1))
  318.  
  319. /*
  320.  * Overridden method: wpQueryDefaultView
  321.  */
  322. #pragma linkage(xfpgmf_wpQueryDefaultView, system)
  323. SOM_Scope ULONG  SOMLINK xfpgmf_wpQueryDefaultView(XFldProgramFile *somSelf);
  324. static char *somMN_XFldProgramFilewpQueryDefaultView = "WPObject::wpQueryDefaultView";
  325. static somId somId_XFldProgramFilewpQueryDefaultView = &somMN_XFldProgramFilewpQueryDefaultView;
  326. #ifdef somId_wpQueryDefaultView
  327. #undef somId_wpQueryDefaultView
  328. #else
  329. #define somId_wpQueryDefaultView somId_XFldProgramFilewpQueryDefaultView
  330. #endif
  331. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView_resolved = 0;
  332. #define XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView(somSelf) \
  333.   ((( somTD_WPObject_wpQueryDefaultView ) \
  334.     ((XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView_resolved)? \
  335.       XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView_resolved : \
  336.       (XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView_resolved = \
  337.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPObjectClassData.wpQueryDefaultView)))) \
  338.      (somSelf))
  339. #ifndef SOMGD_pmc_WPProgramFile_wpQueryDefaultView
  340.   #ifdef parent_WPProgramFile_wpQueryDefaultView
  341.      #undef parent_WPProgramFile_wpQueryDefaultView
  342.      #define SOMGD_pmc_WPProgramFile_wpQueryDefaultView 1
  343.   #else
  344.      #define parent_WPProgramFile_wpQueryDefaultView XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView
  345.   #endif /* parent_WPProgramFile_wpQueryDefaultView */
  346. #endif /* SOMGD_pmc_WPProgramFile_wpQueryDefaultView */
  347. #ifndef parent_wpQueryDefaultView
  348.      #define parent_wpQueryDefaultView XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView
  349. #endif  /* parent_wpQueryDefaultView */
  350. #define XFldProgramFile_parents_wpQueryDefaultView(arg0) (\
  351.    XFldProgramFile_parent_WPProgramFile_wpQueryDefaultView(arg0))
  352.  
  353. /*
  354.  * Overridden method: wpFilterPopupMenu
  355.  */
  356. #pragma linkage(xfpgmf_wpFilterPopupMenu, system)
  357. SOM_Scope ULONG  SOMLINK xfpgmf_wpFilterPopupMenu(XFldProgramFile *somSelf,
  358.         ULONG ulFlags,
  359.         HWND hwndCnr,
  360.         BOOL fMultiSelect);
  361. static char *somMN_XFldProgramFilewpFilterPopupMenu = "WPObject::wpFilterPopupMenu";
  362. static somId somId_XFldProgramFilewpFilterPopupMenu = &somMN_XFldProgramFilewpFilterPopupMenu;
  363. #ifdef somId_wpFilterPopupMenu
  364. #undef somId_wpFilterPopupMenu
  365. #else
  366. #define somId_wpFilterPopupMenu somId_XFldProgramFilewpFilterPopupMenu
  367. #endif
  368. static somMethodProc* XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu_resolved = 0;
  369. #define XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu(somSelf,ulFlags,hwndCnr,fMultiSelect) \
  370.   ((( somTD_WPObject_wpFilterPopupMenu ) \
  371.     ((XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu_resolved)? \
  372.       XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu_resolved : \
  373.       (XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu_resolved = \
  374.     somParentNumResolve(XFldProgramFileCClassData.parentMtab, 1, WPObjectClassData.wpFilterPopupMenu)))) \
  375.      (somSelf,ulFlags,hwndCnr,fMultiSelect))
  376. #ifndef SOMGD_pmc_WPProgramFile_wpFilterPopupMenu
  377.   #ifdef parent_WPProgramFile_wpFilterPopupMenu
  378.      #undef parent_WPProgramFile_wpFilterPopupMenu
  379.      #define SOMGD_pmc_WPProgramFile_wpFilterPopupMenu 1
  380.   #else
  381.      #define parent_WPProgramFile_wpFilterPopupMenu XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu
  382.   #endif /* parent_WPProgramFile_wpFilterPopupMenu */
  383. #endif /* SOMGD_pmc_WPProgramFile_wpFilterPopupMenu */
  384. #ifndef parent_wpFilterPopupMenu
  385.      #define parent_wpFilterPopupMenu XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu
  386. #endif  /* parent_wpFilterPopupMenu */
  387. #define XFldProgramFile_parents_wpFilterPopupMenu(arg0,arg1,arg2,arg3) (\
  388.    XFldProgramFile_parent_WPProgramFile_wpFilterPopupMenu(arg0,arg1,arg2,arg3))
  389.  
  390. /*
  391.  * Initialize the class data structure
  392.  */
  393. SOMEXTERN struct XFldProgramFileClassDataStructure SOMDLINK XFldProgramFileClassData = {(SOMAny *) NULL};
  394.  
  395. /*
  396.  * Define the C class data structure
  397.  */
  398. SOMEXTERN struct XFldProgramFileCClassDataStructure SOMDLINK XFldProgramFileCClassData = {(somMethodTabs) NULL};
  399.  
  400. /*
  401.  * New Method: xfQueryProgType
  402.  */
  403. #pragma linkage(xfpgmf_xfQueryProgType, system)
  404. SOM_Scope ULONG  SOMLINK xfpgmf_xfQueryProgType(XFldProgramFile *somSelf);
  405. #ifndef somMN_xfQueryProgType_defined
  406. #define somMN_xfQueryProgType_defined
  407. static char *somMN_xfQueryProgType = "xfQueryProgType";
  408. static somId somId_xfQueryProgType = &somMN_xfQueryProgType;
  409. #endif  /* somMN_xfQueryProgType_defined */
  410. #ifndef somDS_xfQueryProgType_defined
  411. #define somDS_xfQueryProgType_defined
  412. static char *somDS_xfQueryProgType = "::XFldProgramFile::xfQueryProgType";
  413. static somId somDI_xfQueryProgType = &somDS_xfQueryProgType;
  414. #endif  /* somDS_xfQueryProgType_defined */
  415. #pragma linkage(somRD_xfQueryProgType, system)
  416. static ULONG  SOMLINK somRD_xfQueryProgType(XFldProgramFile *somSelf)
  417. {
  418.     ULONG __retVal;
  419.  
  420.     va_somDispatch(somSelf, (void **)&__retVal, somId_xfQueryProgType, somSelf 
  421.         );
  422.     return __retVal;
  423. }
  424.  
  425. /*
  426.  * Routines and Structures to create the class object
  427.  */
  428.  
  429.  
  430. /*
  431.  * Declare the Static Methods table.
  432.  */
  433. static somStaticMethod_t XFldProgramFileSM[] = {
  434.     {    &XFldProgramFileClassData.xfQueryProgType,
  435.          &somId_xfQueryProgType,
  436.          &somDI_xfQueryProgType,
  437.          (somMethodProc *) xfpgmf_xfQueryProgType,
  438.          (somMethodProc *) somRD_xfQueryProgType,
  439.          (somMethodProc *) somAP_xfQueryProgType    },
  440. };
  441.  
  442.  
  443. /*
  444.  * Declare the Override Methods table.
  445.  */
  446. static somOverrideMethod_t XFldProgramFileOM[] = {
  447.     {    &somId_XFldProgramFilewpInitData,
  448.          (somMethodProc *) xfpgmf_wpInitData    },
  449.     {    &somId_XFldProgramFilewpObjectReady,
  450.          (somMethodProc *) xfpgmf_wpObjectReady    },
  451.     {    &somId_XFldProgramFilewpQueryStyle,
  452.          (somMethodProc *) xfpgmf_wpQueryStyle    },
  453.     {    &somId_XFldProgramFilewpSetIcon,
  454.          (somMethodProc *) xfpgmf_wpSetIcon    },
  455.     {    &somId_XFldProgramFilewpSetProgIcon,
  456.          (somMethodProc *) xfpgmf_wpSetProgIcon    },
  457.     {    &somId_XFldProgramFilewpQueryDefaultView,
  458.          (somMethodProc *) xfpgmf_wpQueryDefaultView    },
  459.     {    &somId_XFldProgramFilewpFilterPopupMenu,
  460.          (somMethodProc *) xfpgmf_wpFilterPopupMenu    },
  461. };
  462.  
  463.  
  464. /*
  465.  *  Initializers for class Ids
  466.  */
  467. static char * somCN_XFldProgramFile = "XFldProgramFile";
  468. #ifndef somEMC_M_XFldProgramFile_defined
  469. #define somEMC_M_XFldProgramFile_defined
  470. static char * somEMC_M_XFldProgramFile = "M_XFldProgramFile";
  471. #endif
  472. static char * somPCN_XFldProgramFile_WPProgramFile = "WPProgramFile";
  473.  
  474. static somId somPCXFldProgramFile[] = {
  475.     &somPCN_XFldProgramFile_WPProgramFile,
  476. };
  477.  
  478. static somStaticClassInfo XFldProgramFileSCI = {
  479.     4, 1, 7, 0, 0, 0,
  480.     XFldProgramFile_MajorVersion, XFldProgramFile_MinorVersion,
  481.     sizeof(XFldProgramFileData), XFldProgramFile_MaxNoMethods, 1,
  482.     &somCN_XFldProgramFile,
  483.     &somEMC_M_XFldProgramFile, 0,
  484.     somPCXFldProgramFile,
  485.     (somClassDataStructure *) &XFldProgramFileClassData,
  486.     (somCClassDataStructure *) &XFldProgramFileCClassData,
  487.     XFldProgramFileSM, XFldProgramFileOM,
  488.     (char *) NULL,
  489.     (somNonInternalData_t *) NULL,  (somProcMethods_t *) NULL,
  490.     (somVarargsFuncs_t *) NULL,
  491.     (somTP_somClassInitFunc *) NULL,
  492.     0, /* default alignment */
  493.     -1, /* use parents as directinitclasses */
  494.     0, /* no explicit directinitclasses */
  495.     0, /* number of general method entries */
  496.     (somMethods_t *) NULL,
  497.     0, /* no public data offset */
  498.     0, /* no sci development level check */
  499.     0, /* number of SelectInheritedMethods */
  500.     0, /* no SelectInheritedMethods */
  501.     1, /* number of classdata entries */
  502.     0, /* no entry names provided currently */
  503.     0, /* number of migrated methods */
  504.     0, /* no migrated method implementations */
  505.     0, /* number of initializers */
  506.     0, /* no initializers */
  507.     0, /* used to identify a DTS class */
  508.     0, /* used to register dynamically computed info */
  509. };
  510.  
  511.  
  512. /*
  513.  * Class Creation and Initialization
  514.  */
  515.  
  516. XFldProgramFile * SOMLINK XFldProgramFileNewClass (integer4 somtmajorVersion,
  517.         integer4 somtminorVersion)
  518. {
  519.     WPProgramFileNewClass(WPProgramFile_MajorVersion,WPProgramFile_MinorVersion);    /* static reference */
  520.     /* Explicit metaclass, so get it */ 
  521.     M_XFldProgramFileNewClass(M_XFldProgramFile_MajorVersion,M_XFldProgramFile_MinorVersion);    /* static reference */
  522.     return (somBuildClass(1,&XFldProgramFileSCI, somtmajorVersion, somtminorVersion));
  523. }
  524.  
  525. /*
  526.  * Functions for attributes.
  527.  */
  528.  
  529. /*
  530.  * Macros for initializer/destructor entry/exit
  531.  */
  532.  
  533. #endif /* Primary Implementation Support */
  534.  
  535.  
  536. #endif       /* SOM_XFldProgramFile_ih */
  537.  
  538. /*
  539.  * -- By default, for classes declared using IDL,
  540.  * -- this emitter doesn't define redispatch/apply stubs.
  541.  * -- Instead, it requests that the SOM kernel produce them.
  542.  * -- To override this default, use the "notc" modifier.
  543.  */
  544.  
  545. #ifndef SOM_M_XFldProgramFile_ih
  546. #define SOM_M_XFldProgramFile_ih
  547.  
  548.  
  549.  
  550. #include <xfpgmf.h>
  551.  
  552. /*
  553.  * Set the scope of methods functions
  554.  */
  555. #ifndef SOM_Scope
  556. #ifdef __cplusplus
  557.   #define SOM_Scope extern "C"
  558. #else
  559.   #define SOM_Scope extern
  560. #endif  /* __cplusplus */
  561. #endif  /* SOM_Scope */
  562.  
  563. #ifndef SOM_CurrentClass
  564.     #define SOM_CurrentClass M_XFldProgramFileCClassData.parentMtab
  565. #endif  /* SOM_CurrentClass */
  566.  
  567. #define M_XFldProgramFile_MaxNoMethods 0
  568.  
  569. /*
  570.  * -- Instance data
  571.  */
  572. typedef void M_XFldProgramFileData;
  573.  
  574. /*
  575.  * This class introduces no instance data, so no GetData macro is provided
  576.  */
  577.  
  578. /*
  579.  * Primary Implementation File Support
  580.  */
  581. #if (defined(XFldProgramFile_Class_Source) || defined(M_XFldProgramFile_Class_Source) || defined(SOM_Module_xfpgmf_Source))
  582.  
  583. /*
  584.  * Trace/Debug macro
  585.  */
  586. #ifndef M_XFldProgramFileMethodDebug
  587.    #define M_XFldProgramFileMethodDebug(c,m) SOMMethodDebug(c,m)
  588. #endif  /* M_XFldProgramFileMethodDebug */
  589.  
  590. /*
  591.  * Current class macros for Instance and Meta classes.
  592.  */
  593.  
  594. /*
  595.  * Overridden method: wpclsInitData
  596.  */
  597. #pragma linkage(xfpgmfM_wpclsInitData, system)
  598. SOM_Scope void  SOMLINK xfpgmfM_wpclsInitData(M_XFldProgramFile *somSelf);
  599. static char *somMN_M_XFldProgramFilewpclsInitData = "M_WPObject::wpclsInitData";
  600. static somId somId_M_XFldProgramFilewpclsInitData = &somMN_M_XFldProgramFilewpclsInitData;
  601. #ifdef somId_wpclsInitData
  602. #undef somId_wpclsInitData
  603. #else
  604. #define somId_wpclsInitData somId_M_XFldProgramFilewpclsInitData
  605. #endif
  606. static somMethodProc* M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData_resolved = 0;
  607. #define M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData(somSelf) \
  608.   ((( somTD_M_WPObject_wpclsInitData ) \
  609.     ((M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData_resolved)? \
  610.       M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData_resolved : \
  611.       (M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData_resolved = \
  612.     somParentNumResolve(M_XFldProgramFileCClassData.parentMtab, 1, M_WPObjectClassData.wpclsInitData)))) \
  613.      (somSelf))
  614. #ifndef SOMGD_pmc_M_WPProgramFile_wpclsInitData
  615.   #ifdef parent_M_WPProgramFile_wpclsInitData
  616.      #undef parent_M_WPProgramFile_wpclsInitData
  617.      #define SOMGD_pmc_M_WPProgramFile_wpclsInitData 1
  618.   #else
  619.      #define parent_M_WPProgramFile_wpclsInitData M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData
  620.   #endif /* parent_M_WPProgramFile_wpclsInitData */
  621. #endif /* SOMGD_pmc_M_WPProgramFile_wpclsInitData */
  622. #ifndef parent_wpclsInitData
  623.      #define parent_wpclsInitData M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData
  624. #endif  /* parent_wpclsInitData */
  625. #define M_XFldProgramFile_parents_wpclsInitData(arg0) (\
  626.    M_XFldProgramFile_parent_M_WPProgramFile_wpclsInitData(arg0))
  627.  
  628. /*
  629.  * Overridden method: wpclsQueryInstanceFilter
  630.  */
  631. #pragma linkage(xfpgmfM_wpclsQueryInstanceFilter, system)
  632. SOM_Scope PSZ  SOMLINK xfpgmfM_wpclsQueryInstanceFilter(M_XFldProgramFile *somSelf);
  633. static char *somMN_M_XFldProgramFilewpclsQueryInstanceFilter = "M_WPFileSystem::wpclsQueryInstanceFilter";
  634. static somId somId_M_XFldProgramFilewpclsQueryInstanceFilter = &somMN_M_XFldProgramFilewpclsQueryInstanceFilter;
  635. #ifdef somId_wpclsQueryInstanceFilter
  636. #undef somId_wpclsQueryInstanceFilter
  637. #else
  638. #define somId_wpclsQueryInstanceFilter somId_M_XFldProgramFilewpclsQueryInstanceFilter
  639. #endif
  640. static somMethodProc* M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter_resolved = 0;
  641. #define M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter(somSelf) \
  642.   ((( somTD_M_WPFileSystem_wpclsQueryInstanceFilter ) \
  643.     ((M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter_resolved)? \
  644.       M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter_resolved : \
  645.       (M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter_resolved = \
  646.     somParentNumResolve(M_XFldProgramFileCClassData.parentMtab, 1, M_WPFileSystemClassData.wpclsQueryInstanceFilter)))) \
  647.      (somSelf))
  648. #ifndef SOMGD_pmc_M_WPProgramFile_wpclsQueryInstanceFilter
  649.   #ifdef parent_M_WPProgramFile_wpclsQueryInstanceFilter
  650.      #undef parent_M_WPProgramFile_wpclsQueryInstanceFilter
  651.      #define SOMGD_pmc_M_WPProgramFile_wpclsQueryInstanceFilter 1
  652.   #else
  653.      #define parent_M_WPProgramFile_wpclsQueryInstanceFilter M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter
  654.   #endif /* parent_M_WPProgramFile_wpclsQueryInstanceFilter */
  655. #endif /* SOMGD_pmc_M_WPProgramFile_wpclsQueryInstanceFilter */
  656. #ifndef parent_wpclsQueryInstanceFilter
  657.      #define parent_wpclsQueryInstanceFilter M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter
  658. #endif  /* parent_wpclsQueryInstanceFilter */
  659. #define M_XFldProgramFile_parents_wpclsQueryInstanceFilter(arg0) (\
  660.    M_XFldProgramFile_parent_M_WPProgramFile_wpclsQueryInstanceFilter(arg0))
  661.  
  662. /*
  663.  * Initialize the class data structure
  664.  */
  665. SOMEXTERN struct M_XFldProgramFileClassDataStructure SOMDLINK M_XFldProgramFileClassData = {(SOMAny *) NULL};
  666.  
  667. /*
  668.  * Define the C class data structure
  669.  */
  670. SOMEXTERN struct M_XFldProgramFileCClassDataStructure SOMDLINK M_XFldProgramFileCClassData = {(somMethodTabs) NULL};
  671.  
  672. /*
  673.  * Routines and Structures to create the class object
  674.  */
  675.  
  676.  
  677. /*
  678.  * Declare the Override Methods table.
  679.  */
  680. static somOverrideMethod_t M_XFldProgramFileOM[] = {
  681.     {    &somId_M_XFldProgramFilewpclsInitData,
  682.          (somMethodProc *) xfpgmfM_wpclsInitData    },
  683.     {    &somId_M_XFldProgramFilewpclsQueryInstanceFilter,
  684.          (somMethodProc *) xfpgmfM_wpclsQueryInstanceFilter    },
  685. };
  686.  
  687.  
  688. /*
  689.  *  Initializers for class Ids
  690.  */
  691. static char * somCN_M_XFldProgramFile = "M_XFldProgramFile";
  692. static char * somPCN_M_XFldProgramFile_M_WPProgramFile = "M_WPProgramFile";
  693.  
  694. static somId somPCM_XFldProgramFile[] = {
  695.     &somPCN_M_XFldProgramFile_M_WPProgramFile,
  696. };
  697.  
  698. static somStaticClassInfo M_XFldProgramFileSCI = {
  699.     4, 0, 2, 0, 0, 0,
  700.     M_XFldProgramFile_MajorVersion, M_XFldProgramFile_MinorVersion,
  701.     0, M_XFldProgramFile_MaxNoMethods, 1,
  702.     &somCN_M_XFldProgramFile,
  703.     (somId) NULL, 1,
  704.     somPCM_XFldProgramFile,
  705.     (somClassDataStructure *) &M_XFldProgramFileClassData,
  706.     (somCClassDataStructure *) &M_XFldProgramFileCClassData,
  707.     (somStaticMethod_t *) NULL, M_XFldProgramFileOM,
  708.     (char *) NULL,
  709.     (somNonInternalData_t *) NULL,  (somProcMethods_t *) NULL,
  710.     (somVarargsFuncs_t *) NULL,
  711.     (somTP_somClassInitFunc *) NULL,
  712.     0, /* default alignment */
  713.     -1, /* use parents as directinitclasses */
  714.     0, /* no explicit directinitclasses */
  715.     0, /* number of general method entries */
  716.     (somMethods_t *) NULL,
  717.     0, /* no public data offset */
  718.     0, /* no sci development level check */
  719.     0, /* number of SelectInheritedMethods */
  720.     0, /* no SelectInheritedMethods */
  721.     0, /* number of classdata entries */
  722.     0, /* no entry names provided currently */
  723.     0, /* number of migrated methods */
  724.     0, /* no migrated method implementations */
  725.     0, /* number of initializers */
  726.     0, /* no initializers */
  727.     0, /* used to identify a DTS class */
  728.     0, /* used to register dynamically computed info */
  729. };
  730.  
  731.  
  732. /*
  733.  * Class Creation and Initialization
  734.  */
  735.  
  736. M_XFldProgramFile * SOMLINK M_XFldProgramFileNewClass (integer4 somtmajorVersion,
  737.         integer4 somtminorVersion)
  738. {
  739.     M_WPProgramFileNewClass(M_WPProgramFile_MajorVersion,M_WPProgramFile_MinorVersion);    /* static reference */
  740.     return (somBuildClass(1,&M_XFldProgramFileSCI, somtmajorVersion, somtminorVersion));
  741. }
  742.  
  743. /*
  744.  * Functions for attributes.
  745.  */
  746.  
  747. /*
  748.  * Macros for initializer/destructor entry/exit
  749.  */
  750.  
  751. #endif /* Primary Implementation Support */
  752.  
  753.  
  754. #endif       /* SOM_M_XFldProgramFile_ih */
  755.