home *** CD-ROM | disk | FTP | other *** search
/ IBM CD Showcase / OS2_CD_ROM.iso / smce0001 / faxpm / demo / api0 / GROUP.H < prev    next >
Encoding:
C/C++ Source or Header  |  1993-11-10  |  7.5 KB  |  270 lines

  1.  
  2. /*
  3.  * This file was generated by the SOM Compiler.
  4.  * FileName: .\group.h.
  5.  * Generated using:
  6.  *     SOM Precompiler spc: 1.22
  7.  *     SOM Emitter emith: 1.11
  8.  */
  9.  
  10. /*
  11.  * 
  12.  * /
  13.  * /* File         GROUP.CSC
  14.  * /
  15.  * /* Description  Distribution lists
  16.  * /
  17.  * /* Last modif   February 4, 1993
  18.  * /
  19.  * /* Copyright    (c) Microformatic S.A. 1992
  20.  * /
  21.  * /
  22.  * 
  23.  * /* Include section
  24.  * /
  25.  */
  26.  
  27.  
  28. #ifndef group_h
  29. #define group_h
  30.  
  31.  
  32. /*
  33.  * Passthru lines: File: "C.h", "before"
  34.  */
  35.  
  36. #define FAX_PHONEBOOK_OK                        0
  37. #define FAX_PHONEBOOK_NOTSETUP                  1
  38. #define FAX_PHONEBOOK_ERROR_UNKNOWN             2
  39. #define FAX_PHONEBOOK_NAME_NOTFOUND             3
  40. #define FAX_PHONEBOOK_GROUP_NOTFOUND            4
  41. #define FAX_PHONEBOOK_ACCESS_NOTALLOWED         5
  42. #define FAX_PHONEBOOK_MEMORY_REQUIRED           6
  43. #define FAX_PHONEBOOK_OUTOFRANGE                7
  44. #define FAX_PHONEBOOK_INVALID_PARM              8
  45. #define FAX_PHONEBOOK_INVALID_NAME              9
  46. #define FAX_PHONEBOOK_INVALID_FAXNUMBER         10
  47. #define FAX_PHONEBOOK_OUTOF_MEMORY              11
  48.  
  49.  
  50. #include <som.h>
  51.  
  52. /*
  53.  * Define the class name as an object type
  54.  */
  55. #ifndef FaxGroup
  56. #define FaxGroup SOMAny
  57. #endif
  58. #include <somobj.h>
  59.  
  60. #define FaxGroup_MajorVersion 1 
  61. #define FaxGroup_MinorVersion 3 
  62.  
  63. /*
  64.  * External name shortening if required
  65.  */
  66. #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
  67. #define FaxGroupNewClass c
  68. #pragma linkage(c, system)
  69. #define FaxGroupClassData d
  70. #define FaxGroupCClassData x
  71. #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
  72. /*--------------Migration------------*/
  73. #define FaxGroup_classObj FaxGroupClassData.classObject
  74. #define _FaxGroup FaxGroup_classObj
  75.  
  76. /*
  77.  * New and Renew macros for FaxGroup
  78.  */
  79. #define _FaxGroupNew() (_somNew(FaxGroupClassData.classObject))
  80. #define FaxGroupNew() \
  81.     ( FaxGroupClassData.classObject \
  82.         ? _FaxGroupNew() \
  83.         : ( FaxGroupNewClass(FaxGroup_MajorVersion, FaxGroup_MinorVersion), _FaxGroupNew() ) )
  84. #define FaxGroupRenew(buf) \
  85.     ( _somRenew(FaxGroupClassData.classObject, buf) )
  86.  
  87. /*
  88.  * Override method: somInit
  89.  */
  90. #define FaxGroup_somInit(somSelf) \
  91.     SOMObject_somInit(somSelf)
  92.  
  93. /*
  94.  * New Method: GetOwner
  95.  */
  96. typedef APIRET    SOMLINK somTP_FaxGroup_GetOwner(FaxGroup *somSelf,
  97.         PSZ pszVal,
  98.         PULONG pulLen);
  99. #pragma linkage(somTP_FaxGroup_GetOwner, system)
  100. typedef somTP_FaxGroup_GetOwner *somTD_FaxGroup_GetOwner;
  101. #define somMD_FaxGroup_GetOwner "----"
  102. #define FaxGroup_GetOwner(somSelf,pszVal,pulLen) \
  103.     (SOM_Resolve(somSelf, FaxGroup, GetOwner) \
  104.     (somSelf,pszVal,pulLen))
  105. #define _GetOwner FaxGroup_GetOwner
  106.  
  107. /*
  108.  * New Method: SetOwner
  109.  */
  110. typedef APIRET    SOMLINK somTP_FaxGroup_SetOwner(FaxGroup *somSelf,
  111.         PSZ pszVal);
  112. #pragma linkage(somTP_FaxGroup_SetOwner, system)
  113. typedef somTP_FaxGroup_SetOwner *somTD_FaxGroup_SetOwner;
  114. #define somMD_FaxGroup_SetOwner "----"
  115. #define FaxGroup_SetOwner(somSelf,pszVal) \
  116.     (SOM_Resolve(somSelf, FaxGroup, SetOwner) \
  117.     (somSelf,pszVal))
  118. #define _SetOwner FaxGroup_SetOwner
  119.  
  120. /*
  121.  * New Method: GetAllNames
  122.  */
  123. typedef APIRET    SOMLINK somTP_FaxGroup_GetAllNames(FaxGroup *somSelf,
  124.         PSZ pszVal,
  125.         PULONG pulLen);
  126. #pragma linkage(somTP_FaxGroup_GetAllNames, system)
  127. typedef somTP_FaxGroup_GetAllNames *somTD_FaxGroup_GetAllNames;
  128. #define somMD_FaxGroup_GetAllNames "----"
  129. #define FaxGroup_GetAllNames(somSelf,pszVal,pulLen) \
  130.     (SOM_Resolve(somSelf, FaxGroup, GetAllNames) \
  131.     (somSelf,pszVal,pulLen))
  132. #define _GetAllNames FaxGroup_GetAllNames
  133.  
  134. /*
  135.  * New Method: Create
  136.  */
  137. typedef APIRET    SOMLINK somTP_FaxGroup_Create(FaxGroup *somSelf,
  138.         PSZ pszGroup,
  139.         PSZ pszContents,
  140.         ULONG ulLen);
  141. #pragma linkage(somTP_FaxGroup_Create, system)
  142. typedef somTP_FaxGroup_Create *somTD_FaxGroup_Create;
  143. #define somMD_FaxGroup_Create "----"
  144. #define FaxGroup_Create(somSelf,pszGroup,pszContents,ulLen) \
  145.     (SOM_Resolve(somSelf, FaxGroup, Create) \
  146.     (somSelf,pszGroup,pszContents,ulLen))
  147. #define _Create FaxGroup_Create
  148.  
  149. /*
  150.  * New Method: Delete
  151.  */
  152. typedef APIRET    SOMLINK somTP_FaxGroup_Delete(FaxGroup *somSelf,
  153.         PSZ pszName);
  154. #pragma linkage(somTP_FaxGroup_Delete, system)
  155. typedef somTP_FaxGroup_Delete *somTD_FaxGroup_Delete;
  156. #define somMD_FaxGroup_Delete "----"
  157. #define FaxGroup_Delete(somSelf,pszName) \
  158.     (SOM_Resolve(somSelf, FaxGroup, Delete) \
  159.     (somSelf,pszName))
  160. #define _Delete FaxGroup_Delete
  161.  
  162. /*
  163.  * New Method: Update
  164.  */
  165. typedef APIRET    SOMLINK somTP_FaxGroup_Update(FaxGroup *somSelf,
  166.         PSZ pszGroup,
  167.         PSZ pszContents,
  168.         ULONG ulLen);
  169. #pragma linkage(somTP_FaxGroup_Update, system)
  170. typedef somTP_FaxGroup_Update *somTD_FaxGroup_Update;
  171. #define somMD_FaxGroup_Update "----"
  172. #define FaxGroup_Update(somSelf,pszGroup,pszContents,ulLen) \
  173.     (SOM_Resolve(somSelf, FaxGroup, Update) \
  174.     (somSelf,pszGroup,pszContents,ulLen))
  175. #define _Update FaxGroup_Update
  176.  
  177. /*
  178.  * New Method: DeleteName
  179.  */
  180. typedef APIRET    SOMLINK somTP_FaxGroup_DeleteName(FaxGroup *somSelf,
  181.         PSZ pszGroup,
  182.         PSZ pszName);
  183. #pragma linkage(somTP_FaxGroup_DeleteName, system)
  184. typedef somTP_FaxGroup_DeleteName *somTD_FaxGroup_DeleteName;
  185. #define somMD_FaxGroup_DeleteName "----"
  186. #define FaxGroup_DeleteName(somSelf,pszGroup,pszName) \
  187.     (SOM_Resolve(somSelf, FaxGroup, DeleteName) \
  188.     (somSelf,pszGroup,pszName))
  189. #define _DeleteName FaxGroup_DeleteName
  190.  
  191. /*
  192.  * New Method: AddName
  193.  */
  194. typedef APIRET    SOMLINK somTP_FaxGroup_AddName(FaxGroup *somSelf,
  195.         PSZ pszGroup,
  196.         PSZ pszName);
  197. #pragma linkage(somTP_FaxGroup_AddName, system)
  198. typedef somTP_FaxGroup_AddName *somTD_FaxGroup_AddName;
  199. #define somMD_FaxGroup_AddName "----"
  200. #define FaxGroup_AddName(somSelf,pszGroup,pszName) \
  201.     (SOM_Resolve(somSelf, FaxGroup, AddName) \
  202.     (somSelf,pszGroup,pszName))
  203. #define _AddName FaxGroup_AddName
  204.  
  205. /*
  206.  * New Method: Setup
  207.  */
  208. typedef APIRET    SOMLINK somTP_FaxGroup_Setup(FaxGroup *somSelf,
  209.         PSZ pszOwner);
  210. #pragma linkage(somTP_FaxGroup_Setup, system)
  211. typedef somTP_FaxGroup_Setup *somTD_FaxGroup_Setup;
  212. #define somMD_FaxGroup_Setup "----"
  213. #define FaxGroup_Setup(somSelf,pszOwner) \
  214.     (SOM_Resolve(somSelf, FaxGroup, Setup) \
  215.     (somSelf,pszOwner))
  216. #define _Setup FaxGroup_Setup
  217.  
  218. /*
  219.  * New Method: GetGroupContents
  220.  */
  221. typedef APIRET    SOMLINK somTP_FaxGroup_GetGroupContents(FaxGroup *somSelf,
  222.         PSZ pszVal,
  223.         PULONG pulLen,
  224.         PSZ pszGroupName);
  225. #pragma linkage(somTP_FaxGroup_GetGroupContents, system)
  226. typedef somTP_FaxGroup_GetGroupContents *somTD_FaxGroup_GetGroupContents;
  227. #define somMD_FaxGroup_GetGroupContents "----"
  228. #define FaxGroup_GetGroupContents(somSelf,pszVal,pulLen,pszGroupName) \
  229.     (SOM_Resolve(somSelf, FaxGroup, GetGroupContents) \
  230.     (somSelf,pszVal,pulLen,pszGroupName))
  231. #define _GetGroupContents FaxGroup_GetGroupContents
  232.  
  233. /*
  234.  * Declare the class creation procedure
  235.  */
  236. SOMEXTERN SOMAny * SOMLINK FaxGroupNewClass(integer4 scemajorVersion,
  237.         integer4 sceminorVersion);
  238. #pragma linkage(FaxGroupNewClass, system)
  239.  
  240. /*
  241.  * Declare the class data structure
  242.  */
  243. SOMEXTERN struct FaxGroupClassDataStructure {
  244.     SOMAny *classObject;
  245.     somDToken szOwner;
  246.     somDToken szUserName;
  247.     somDToken bInitDone;
  248.     somMToken GetOwner;
  249.     somMToken SetOwner;
  250.     somMToken GetAllNames;
  251.     somMToken Create;
  252.     somMToken Delete;
  253.     somMToken Update;
  254.     somMToken DeleteName;
  255.     somMToken AddName;
  256.     somMToken Setup;
  257.     somMToken GetFaxPmPhoneBookName;
  258.     somMToken GetGroupContents;
  259. } FaxGroupClassData;
  260.  
  261. /*
  262.  * Declare the C specific class data structure
  263.  */
  264. SOMEXTERN struct FaxGroupCClassDataStructure {
  265.     somMethodTab *parentMtab;
  266.     somDToken instanceDataToken;
  267. } FaxGroupCClassData;
  268.  
  269. #endif       /* group_h */
  270.