ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/fbintf/client/3.0/firebird/Firebird.pas
Revision: 209
Committed: Wed Mar 14 12:48:51 2018 UTC (6 years ago) by tony
Content type: text/x-pascal
File size: 500980 byte(s)
Log Message:
Fixes Merged

File Contents

# Content
1 { This file was autogenerated by cloop - Cross Language Object Oriented Programming }
2
3 {Note that for use with IBX, type PISC_QUAD is used instead of ISC_QUADPtr. TISC_QUAD is
4 sourced from unit IB
5
6 Use of FBException is now condition and not used for IBX.
7
8 constants removed and imported separately into IB.pas
9 }
10
11 unit Firebird;
12 {$IFDEF MSWINDOWS}
13 {$DEFINE WINDOWS}
14 {$ENDIF}
15
16 {$IFDEF FPC}
17 {$MODE DELPHI}
18 {$OBJECTCHECKS OFF}
19 {$ENDIF}
20
21 interface
22
23 uses Classes, SysUtils, IB, DB;
24
25 type
26 {$IFNDEF FPC}
27 QWord = UInt64;
28 {$ENDIF}
29
30 { $DEFINE USEFBEXCEPTION}
31
32 IVersioned = class;
33 IReferenceCounted = class;
34 IDisposable = class;
35 IStatus = class;
36 IMaster = class;
37 IPluginBase = class;
38 IPluginSet = class;
39 IConfigEntry = class;
40 IConfig = class;
41 IFirebirdConf = class;
42 IPluginConfig = class;
43 IPluginFactory = class;
44 IPluginModule = class;
45 IPluginManager = class;
46 ICryptKey = class;
47 IConfigManager = class;
48 IEventCallback = class;
49 IBlob = class;
50 ITransaction = class;
51 IMessageMetadata = class;
52 IMetadataBuilder = class;
53 IResultSet = class;
54 IStatement = class;
55 IRequest = class;
56 IEvents = class;
57 IAttachment = class;
58 IService = class;
59 IProvider = class;
60 IDtcStart = class;
61 IDtc = class;
62 IAuth = class;
63 IWriter = class;
64 IServerBlock = class;
65 IClientBlock = class;
66 IServer = class;
67 IClient = class;
68 IUserField = class;
69 ICharUserField = class;
70 IIntUserField = class;
71 IUser = class;
72 IListUsers = class;
73 ILogonInfo = class;
74 IManagement = class;
75 IWireCryptPlugin = class;
76 ICryptKeyCallback = class;
77 IKeyHolderPlugin = class;
78 IDbCryptPlugin = class;
79 IExternalContext = class;
80 IExternalResultSet = class;
81 IExternalFunction = class;
82 IExternalProcedure = class;
83 IExternalTrigger = class;
84 IRoutineMetadata = class;
85 IExternalEngine = class;
86 ITimer = class;
87 ITimerControl = class;
88 IVersionCallback = class;
89 IUtil = class;
90 IOffsetsCallback = class;
91 IXpbBuilder = class;
92 ITraceConnection = class;
93 ITraceDatabaseConnection = class;
94 ITraceTransaction = class;
95 ITraceParams = class;
96 ITraceStatement = class;
97 ITraceSQLStatement = class;
98 ITraceBLRStatement = class;
99 ITraceDYNRequest = class;
100 ITraceContextVariable = class;
101 ITraceProcedure = class;
102 ITraceFunction = class;
103 ITraceTrigger = class;
104 ITraceServiceConnection = class;
105 ITraceStatusVector = class;
106 ITraceSweepInfo = class;
107 ITraceLogWriter = class;
108 ITraceInitInfo = class;
109 ITracePlugin = class;
110 ITraceFactory = class;
111 IUdrFunctionFactory = class;
112 IUdrProcedureFactory = class;
113 IUdrTriggerFactory = class;
114 IUdrPlugin = class;
115
116 FbException = class(EDatabaseError)
117 public
118 constructor create(status: IStatus); virtual;
119 destructor Destroy(); override;
120
121 function getStatus: IStatus;
122
123 class procedure checkException(status: IStatus);
124 class procedure catchException(status: IStatus; e: Exception);
125
126 private
127 status: IStatus;
128 end;
129
130 ISC_DATE = Integer;
131 ISC_TIME = Integer;
132
133 ntrace_relation_t = Integer;
134 TraceCounts = Record
135 trc_relation_id : ntrace_relation_t;
136 trc_relation_name : PAnsiChar;
137 trc_counters : ^Int64;
138 end;
139 TraceCountsPtr = ^TraceCounts;
140 PerformanceInfo = Record
141 pin_time : Int64;
142 pin_counters : ^Int64;
143 pin_count : NativeUInt;
144 pin_tables : TraceCountsPtr;
145 pin_records_fetched : Int64;
146 end;
147
148 Dsc = Record
149 dsc_dtype, dsc_scale: Byte;
150 dsc_length, dsc_sub_type, dsc_flags: Int16;
151 dsc_address: ^Byte;
152 end;
153 BooleanPtr = ^Boolean;
154 BytePtr = ^Byte;
155 CardinalPtr = ^Cardinal;
156 IKeyHolderPluginPtr = ^IKeyHolderPlugin;
157 Int64Ptr = ^Int64;
158 NativeIntPtr = ^NativeInt;
159 PerformanceInfoPtr = ^PerformanceInfo;
160 dscPtr = ^dsc;
161
162 IReferenceCounted_addRefPtr = procedure(this: IReferenceCounted); cdecl;
163 IReferenceCounted_releasePtr = function(this: IReferenceCounted): Integer; cdecl;
164 IDisposable_disposePtr = procedure(this: IDisposable); cdecl;
165 IStatus_initPtr = procedure(this: IStatus); cdecl;
166 IStatus_getStatePtr = function(this: IStatus): Cardinal; cdecl;
167 IStatus_setErrors2Ptr = procedure(this: IStatus; length: Cardinal; value: NativeIntPtr); cdecl;
168 IStatus_setWarnings2Ptr = procedure(this: IStatus; length: Cardinal; value: NativeIntPtr); cdecl;
169 IStatus_setErrorsPtr = procedure(this: IStatus; value: NativeIntPtr); cdecl;
170 IStatus_setWarningsPtr = procedure(this: IStatus; value: NativeIntPtr); cdecl;
171 IStatus_getErrorsPtr = function(this: IStatus): NativeIntPtr; cdecl;
172 IStatus_getWarningsPtr = function(this: IStatus): NativeIntPtr; cdecl;
173 IStatus_clonePtr = function(this: IStatus): IStatus; cdecl;
174 IMaster_getStatusPtr = function(this: IMaster): IStatus; cdecl;
175 IMaster_getDispatcherPtr = function(this: IMaster): IProvider; cdecl;
176 IMaster_getPluginManagerPtr = function(this: IMaster): IPluginManager; cdecl;
177 IMaster_getTimerControlPtr = function(this: IMaster): ITimerControl; cdecl;
178 IMaster_getDtcPtr = function(this: IMaster): IDtc; cdecl;
179 IMaster_registerAttachmentPtr = function(this: IMaster; provider: IProvider; attachment: IAttachment): IAttachment; cdecl;
180 IMaster_registerTransactionPtr = function(this: IMaster; attachment: IAttachment; transaction: ITransaction): ITransaction; cdecl;
181 IMaster_getMetadataBuilderPtr = function(this: IMaster; status: IStatus; fieldCount: Cardinal): IMetadataBuilder; cdecl;
182 IMaster_serverModePtr = function(this: IMaster; mode: Integer): Integer; cdecl;
183 IMaster_getUtilInterfacePtr = function(this: IMaster): IUtil; cdecl;
184 IMaster_getConfigManagerPtr = function(this: IMaster): IConfigManager; cdecl;
185 IMaster_getProcessExitingPtr = function(this: IMaster): Boolean; cdecl;
186 IPluginBase_setOwnerPtr = procedure(this: IPluginBase; r: IReferenceCounted); cdecl;
187 IPluginBase_getOwnerPtr = function(this: IPluginBase): IReferenceCounted; cdecl;
188 IPluginSet_getNamePtr = function(this: IPluginSet): PAnsiChar; cdecl;
189 IPluginSet_getModuleNamePtr = function(this: IPluginSet): PAnsiChar; cdecl;
190 IPluginSet_getPluginPtr = function(this: IPluginSet; status: IStatus): IPluginBase; cdecl;
191 IPluginSet_nextPtr = procedure(this: IPluginSet; status: IStatus); cdecl;
192 IPluginSet_set_Ptr = procedure(this: IPluginSet; status: IStatus; s: PAnsiChar); cdecl;
193 IConfigEntry_getNamePtr = function(this: IConfigEntry): PAnsiChar; cdecl;
194 IConfigEntry_getValuePtr = function(this: IConfigEntry): PAnsiChar; cdecl;
195 IConfigEntry_getIntValuePtr = function(this: IConfigEntry): Int64; cdecl;
196 IConfigEntry_getBoolValuePtr = function(this: IConfigEntry): Boolean; cdecl;
197 IConfigEntry_getSubConfigPtr = function(this: IConfigEntry; status: IStatus): IConfig; cdecl;
198 IConfig_findPtr = function(this: IConfig; status: IStatus; name: PAnsiChar): IConfigEntry; cdecl;
199 IConfig_findValuePtr = function(this: IConfig; status: IStatus; name: PAnsiChar; value: PAnsiChar): IConfigEntry; cdecl;
200 IConfig_findPosPtr = function(this: IConfig; status: IStatus; name: PAnsiChar; pos: Cardinal): IConfigEntry; cdecl;
201 IFirebirdConf_getKeyPtr = function(this: IFirebirdConf; name: PAnsiChar): Cardinal; cdecl;
202 IFirebirdConf_asIntegerPtr = function(this: IFirebirdConf; key: Cardinal): Int64; cdecl;
203 IFirebirdConf_asStringPtr = function(this: IFirebirdConf; key: Cardinal): PAnsiChar; cdecl;
204 IFirebirdConf_asBooleanPtr = function(this: IFirebirdConf; key: Cardinal): Boolean; cdecl;
205 IPluginConfig_getConfigFileNamePtr = function(this: IPluginConfig): PAnsiChar; cdecl;
206 IPluginConfig_getDefaultConfigPtr = function(this: IPluginConfig; status: IStatus): IConfig; cdecl;
207 IPluginConfig_getFirebirdConfPtr = function(this: IPluginConfig; status: IStatus): IFirebirdConf; cdecl;
208 IPluginConfig_setReleaseDelayPtr = procedure(this: IPluginConfig; status: IStatus; microSeconds: QWord); cdecl;
209 IPluginFactory_createPluginPtr = function(this: IPluginFactory; status: IStatus; factoryParameter: IPluginConfig): IPluginBase; cdecl;
210 IPluginModule_doCleanPtr = procedure(this: IPluginModule); cdecl;
211 IPluginManager_registerPluginFactoryPtr = procedure(this: IPluginManager; pluginType: Cardinal; defaultName: PAnsiChar; factory: IPluginFactory); cdecl;
212 IPluginManager_registerModulePtr = procedure(this: IPluginManager; cleanup: IPluginModule); cdecl;
213 IPluginManager_unregisterModulePtr = procedure(this: IPluginManager; cleanup: IPluginModule); cdecl;
214 IPluginManager_getPluginsPtr = function(this: IPluginManager; status: IStatus; pluginType: Cardinal; namesList: PAnsiChar; firebirdConf: IFirebirdConf): IPluginSet; cdecl;
215 IPluginManager_getConfigPtr = function(this: IPluginManager; status: IStatus; filename: PAnsiChar): IConfig; cdecl;
216 IPluginManager_releasePluginPtr = procedure(this: IPluginManager; plugin: IPluginBase); cdecl;
217 ICryptKey_setSymmetricPtr = procedure(this: ICryptKey; status: IStatus; type_: PAnsiChar; keyLength: Cardinal; key: Pointer); cdecl;
218 ICryptKey_setAsymmetricPtr = procedure(this: ICryptKey; status: IStatus; type_: PAnsiChar; encryptKeyLength: Cardinal; encryptKey: Pointer; decryptKeyLength: Cardinal; decryptKey: Pointer); cdecl;
219 ICryptKey_getEncryptKeyPtr = function(this: ICryptKey; length: CardinalPtr): Pointer; cdecl;
220 ICryptKey_getDecryptKeyPtr = function(this: ICryptKey; length: CardinalPtr): Pointer; cdecl;
221 IConfigManager_getDirectoryPtr = function(this: IConfigManager; code: Cardinal): PAnsiChar; cdecl;
222 IConfigManager_getFirebirdConfPtr = function(this: IConfigManager): IFirebirdConf; cdecl;
223 IConfigManager_getDatabaseConfPtr = function(this: IConfigManager; dbName: PAnsiChar): IFirebirdConf; cdecl;
224 IConfigManager_getPluginConfigPtr = function(this: IConfigManager; configuredPlugin: PAnsiChar): IConfig; cdecl;
225 IConfigManager_getInstallDirectoryPtr = function(this: IConfigManager): PAnsiChar; cdecl;
226 IConfigManager_getRootDirectoryPtr = function(this: IConfigManager): PAnsiChar; cdecl;
227 IEventCallback_eventCallbackFunctionPtr = procedure(this: IEventCallback; length: Cardinal; events: BytePtr); cdecl;
228 IBlob_getInfoPtr = procedure(this: IBlob; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
229 IBlob_getSegmentPtr = function(this: IBlob; status: IStatus; bufferLength: Cardinal; buffer: Pointer; segmentLength: CardinalPtr): Integer; cdecl;
230 IBlob_putSegmentPtr = procedure(this: IBlob; status: IStatus; length: Cardinal; buffer: Pointer); cdecl;
231 IBlob_cancelPtr = procedure(this: IBlob; status: IStatus); cdecl;
232 IBlob_closePtr = procedure(this: IBlob; status: IStatus); cdecl;
233 IBlob_seekPtr = function(this: IBlob; status: IStatus; mode: Integer; offset: Integer): Integer; cdecl;
234 ITransaction_getInfoPtr = procedure(this: ITransaction; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
235 ITransaction_preparePtr = procedure(this: ITransaction; status: IStatus; msgLength: Cardinal; message: BytePtr); cdecl;
236 ITransaction_commitPtr = procedure(this: ITransaction; status: IStatus); cdecl;
237 ITransaction_commitRetainingPtr = procedure(this: ITransaction; status: IStatus); cdecl;
238 ITransaction_rollbackPtr = procedure(this: ITransaction; status: IStatus); cdecl;
239 ITransaction_rollbackRetainingPtr = procedure(this: ITransaction; status: IStatus); cdecl;
240 ITransaction_disconnectPtr = procedure(this: ITransaction; status: IStatus); cdecl;
241 ITransaction_joinPtr = function(this: ITransaction; status: IStatus; transaction: ITransaction): ITransaction; cdecl;
242 ITransaction_validatePtr = function(this: ITransaction; status: IStatus; attachment: IAttachment): ITransaction; cdecl;
243 ITransaction_enterDtcPtr = function(this: ITransaction; status: IStatus): ITransaction; cdecl;
244 IMessageMetadata_getCountPtr = function(this: IMessageMetadata; status: IStatus): Cardinal; cdecl;
245 IMessageMetadata_getFieldPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
246 IMessageMetadata_getRelationPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
247 IMessageMetadata_getOwnerPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
248 IMessageMetadata_getAliasPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
249 IMessageMetadata_getTypePtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
250 IMessageMetadata_isNullablePtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Boolean; cdecl;
251 IMessageMetadata_getSubTypePtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Integer; cdecl;
252 IMessageMetadata_getLengthPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
253 IMessageMetadata_getScalePtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Integer; cdecl;
254 IMessageMetadata_getCharSetPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
255 IMessageMetadata_getOffsetPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
256 IMessageMetadata_getNullOffsetPtr = function(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
257 IMessageMetadata_getBuilderPtr = function(this: IMessageMetadata; status: IStatus): IMetadataBuilder; cdecl;
258 IMessageMetadata_getMessageLengthPtr = function(this: IMessageMetadata; status: IStatus): Cardinal; cdecl;
259 IMetadataBuilder_setTypePtr = procedure(this: IMetadataBuilder; status: IStatus; index: Cardinal; type_: Cardinal); cdecl;
260 IMetadataBuilder_setSubTypePtr = procedure(this: IMetadataBuilder; status: IStatus; index: Cardinal; subType: Integer); cdecl;
261 IMetadataBuilder_setLengthPtr = procedure(this: IMetadataBuilder; status: IStatus; index: Cardinal; length: Cardinal); cdecl;
262 IMetadataBuilder_setCharSetPtr = procedure(this: IMetadataBuilder; status: IStatus; index: Cardinal; charSet: Cardinal); cdecl;
263 IMetadataBuilder_setScalePtr = procedure(this: IMetadataBuilder; status: IStatus; index: Cardinal; scale: integer); cdecl;
264 IMetadataBuilder_truncatePtr = procedure(this: IMetadataBuilder; status: IStatus; count: Cardinal); cdecl;
265 IMetadataBuilder_moveNameToIndexPtr = procedure(this: IMetadataBuilder; status: IStatus; name: PAnsiChar; index: Cardinal); cdecl;
266 IMetadataBuilder_removePtr = procedure(this: IMetadataBuilder; status: IStatus; index: Cardinal); cdecl;
267 IMetadataBuilder_addFieldPtr = function(this: IMetadataBuilder; status: IStatus): Cardinal; cdecl;
268 IMetadataBuilder_getMetadataPtr = function(this: IMetadataBuilder; status: IStatus): IMessageMetadata; cdecl;
269 IResultSet_fetchNextPtr = function(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
270 IResultSet_fetchPriorPtr = function(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
271 IResultSet_fetchFirstPtr = function(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
272 IResultSet_fetchLastPtr = function(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
273 IResultSet_fetchAbsolutePtr = function(this: IResultSet; status: IStatus; position: Integer; message: Pointer): Integer; cdecl;
274 IResultSet_fetchRelativePtr = function(this: IResultSet; status: IStatus; offset: Integer; message: Pointer): Integer; cdecl;
275 IResultSet_isEofPtr = function(this: IResultSet; status: IStatus): Boolean; cdecl;
276 IResultSet_isBofPtr = function(this: IResultSet; status: IStatus): Boolean; cdecl;
277 IResultSet_getMetadataPtr = function(this: IResultSet; status: IStatus): IMessageMetadata; cdecl;
278 IResultSet_closePtr = procedure(this: IResultSet; status: IStatus); cdecl;
279 IResultSet_setDelayedOutputFormatPtr = procedure(this: IResultSet; status: IStatus; format: IMessageMetadata); cdecl;
280 IStatement_getInfoPtr = procedure(this: IStatement; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
281 IStatement_getTypePtr = function(this: IStatement; status: IStatus): Cardinal; cdecl;
282 IStatement_getPlanPtr = function(this: IStatement; status: IStatus; detailed: Boolean): PAnsiChar; cdecl;
283 IStatement_getAffectedRecordsPtr = function(this: IStatement; status: IStatus): QWord; cdecl;
284 IStatement_getInputMetadataPtr = function(this: IStatement; status: IStatus): IMessageMetadata; cdecl;
285 IStatement_getOutputMetadataPtr = function(this: IStatement; status: IStatus): IMessageMetadata; cdecl;
286 IStatement_executePtr = function(this: IStatement; status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction; cdecl;
287 IStatement_openCursorPtr = function(this: IStatement; status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; flags: Cardinal): IResultSet; cdecl;
288 IStatement_setCursorNamePtr = procedure(this: IStatement; status: IStatus; name: PAnsiChar); cdecl;
289 IStatement_freePtr = procedure(this: IStatement; status: IStatus); cdecl;
290 IStatement_getFlagsPtr = function(this: IStatement; status: IStatus): Cardinal; cdecl;
291 IRequest_receivePtr = procedure(this: IRequest; status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); cdecl;
292 IRequest_sendPtr = procedure(this: IRequest; status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); cdecl;
293 IRequest_getInfoPtr = procedure(this: IRequest; status: IStatus; level: Integer; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
294 IRequest_startPtr = procedure(this: IRequest; status: IStatus; tra: ITransaction; level: Integer); cdecl;
295 IRequest_startAndSendPtr = procedure(this: IRequest; status: IStatus; tra: ITransaction; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); cdecl;
296 IRequest_unwindPtr = procedure(this: IRequest; status: IStatus; level: Integer); cdecl;
297 IRequest_freePtr = procedure(this: IRequest; status: IStatus); cdecl;
298 IEvents_cancelPtr = procedure(this: IEvents; status: IStatus); cdecl;
299 IAttachment_getInfoPtr = procedure(this: IAttachment; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
300 IAttachment_startTransactionPtr = function(this: IAttachment; status: IStatus; tpbLength: Cardinal; tpb: BytePtr): ITransaction; cdecl;
301 IAttachment_reconnectTransactionPtr = function(this: IAttachment; status: IStatus; length: Cardinal; id: BytePtr): ITransaction; cdecl;
302 IAttachment_compileRequestPtr = function(this: IAttachment; status: IStatus; blrLength: Cardinal; blr: BytePtr): IRequest; cdecl;
303 IAttachment_transactRequestPtr = procedure(this: IAttachment; status: IStatus; transaction: ITransaction; blrLength: Cardinal; blr: BytePtr; inMsgLength: Cardinal; inMsg: BytePtr; outMsgLength: Cardinal; outMsg: BytePtr); cdecl;
304 IAttachment_createBlobPtr = function(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob; cdecl;
305 IAttachment_openBlobPtr = function(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob; cdecl;
306 IAttachment_getSlicePtr = function(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr): Integer; cdecl;
307 IAttachment_putSlicePtr = procedure(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr); cdecl;
308 IAttachment_executeDynPtr = procedure(this: IAttachment; status: IStatus; transaction: ITransaction; length: Cardinal; dyn: BytePtr); cdecl;
309 IAttachment_preparePtr = function(this: IAttachment; status: IStatus; tra: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; flags: Cardinal): IStatement; cdecl;
310 IAttachment_executePtr = function(this: IAttachment; status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction; cdecl;
311 IAttachment_openCursorPtr = function(this: IAttachment; status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; cursorName: PAnsiChar; cursorFlags: Cardinal): IResultSet; cdecl;
312 IAttachment_queEventsPtr = function(this: IAttachment; status: IStatus; callback: IEventCallback; length: Cardinal; events: BytePtr): IEvents; cdecl;
313 IAttachment_cancelOperationPtr = procedure(this: IAttachment; status: IStatus; option: Integer); cdecl;
314 IAttachment_pingPtr = procedure(this: IAttachment; status: IStatus); cdecl;
315 IAttachment_detachPtr = procedure(this: IAttachment; status: IStatus); cdecl;
316 IAttachment_dropDatabasePtr = procedure(this: IAttachment; status: IStatus); cdecl;
317 IService_detachPtr = procedure(this: IService; status: IStatus); cdecl;
318 IService_queryPtr = procedure(this: IService; status: IStatus; sendLength: Cardinal; sendItems: BytePtr; receiveLength: Cardinal; receiveItems: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
319 IService_startPtr = procedure(this: IService; status: IStatus; spbLength: Cardinal; spb: BytePtr); cdecl;
320 IProvider_attachDatabasePtr = function(this: IProvider; status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment; cdecl;
321 IProvider_createDatabasePtr = function(this: IProvider; status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment; cdecl;
322 IProvider_attachServiceManagerPtr = function(this: IProvider; status: IStatus; service: PAnsiChar; spbLength: Cardinal; spb: BytePtr): IService; cdecl;
323 IProvider_shutdownPtr = procedure(this: IProvider; status: IStatus; timeout: Cardinal; reason: Integer); cdecl;
324 IProvider_setDbCryptCallbackPtr = procedure(this: IProvider; status: IStatus; cryptCallback: ICryptKeyCallback); cdecl;
325 IDtcStart_addAttachmentPtr = procedure(this: IDtcStart; status: IStatus; att: IAttachment); cdecl;
326 IDtcStart_addWithTpbPtr = procedure(this: IDtcStart; status: IStatus; att: IAttachment; length: Cardinal; tpb: BytePtr); cdecl;
327 IDtcStart_startPtr = function(this: IDtcStart; status: IStatus): ITransaction; cdecl;
328 IDtc_joinPtr = function(this: IDtc; status: IStatus; one: ITransaction; two: ITransaction): ITransaction; cdecl;
329 IDtc_startBuilderPtr = function(this: IDtc; status: IStatus): IDtcStart; cdecl;
330 IWriter_resetPtr = procedure(this: IWriter); cdecl;
331 IWriter_addPtr = procedure(this: IWriter; status: IStatus; name: PAnsiChar); cdecl;
332 IWriter_setTypePtr = procedure(this: IWriter; status: IStatus; value: PAnsiChar); cdecl;
333 IWriter_setDbPtr = procedure(this: IWriter; status: IStatus; value: PAnsiChar); cdecl;
334 IServerBlock_getLoginPtr = function(this: IServerBlock): PAnsiChar; cdecl;
335 IServerBlock_getDataPtr = function(this: IServerBlock; length: CardinalPtr): BytePtr; cdecl;
336 IServerBlock_putDataPtr = procedure(this: IServerBlock; status: IStatus; length: Cardinal; data: Pointer); cdecl;
337 IServerBlock_newKeyPtr = function(this: IServerBlock; status: IStatus): ICryptKey; cdecl;
338 IClientBlock_getLoginPtr = function(this: IClientBlock): PAnsiChar; cdecl;
339 IClientBlock_getPasswordPtr = function(this: IClientBlock): PAnsiChar; cdecl;
340 IClientBlock_getDataPtr = function(this: IClientBlock; length: CardinalPtr): BytePtr; cdecl;
341 IClientBlock_putDataPtr = procedure(this: IClientBlock; status: IStatus; length: Cardinal; data: Pointer); cdecl;
342 IClientBlock_newKeyPtr = function(this: IClientBlock; status: IStatus): ICryptKey; cdecl;
343 IServer_authenticatePtr = function(this: IServer; status: IStatus; sBlock: IServerBlock; writerInterface: IWriter): Integer; cdecl;
344 IClient_authenticatePtr = function(this: IClient; status: IStatus; cBlock: IClientBlock): Integer; cdecl;
345 IUserField_enteredPtr = function(this: IUserField): Integer; cdecl;
346 IUserField_specifiedPtr = function(this: IUserField): Integer; cdecl;
347 IUserField_setEnteredPtr = procedure(this: IUserField; status: IStatus; newValue: Integer); cdecl;
348 ICharUserField_getPtr = function(this: ICharUserField): PAnsiChar; cdecl;
349 ICharUserField_set_Ptr = procedure(this: ICharUserField; status: IStatus; newValue: PAnsiChar); cdecl;
350 IIntUserField_getPtr = function(this: IIntUserField): Integer; cdecl;
351 IIntUserField_set_Ptr = procedure(this: IIntUserField; status: IStatus; newValue: Integer); cdecl;
352 IUser_operationPtr = function(this: IUser): Cardinal; cdecl;
353 IUser_userNamePtr = function(this: IUser): ICharUserField; cdecl;
354 IUser_passwordPtr = function(this: IUser): ICharUserField; cdecl;
355 IUser_firstNamePtr = function(this: IUser): ICharUserField; cdecl;
356 IUser_lastNamePtr = function(this: IUser): ICharUserField; cdecl;
357 IUser_middleNamePtr = function(this: IUser): ICharUserField; cdecl;
358 IUser_commentPtr = function(this: IUser): ICharUserField; cdecl;
359 IUser_attributesPtr = function(this: IUser): ICharUserField; cdecl;
360 IUser_activePtr = function(this: IUser): IIntUserField; cdecl;
361 IUser_adminPtr = function(this: IUser): IIntUserField; cdecl;
362 IUser_clearPtr = procedure(this: IUser; status: IStatus); cdecl;
363 IListUsers_listPtr = procedure(this: IListUsers; status: IStatus; user: IUser); cdecl;
364 ILogonInfo_namePtr = function(this: ILogonInfo): PAnsiChar; cdecl;
365 ILogonInfo_rolePtr = function(this: ILogonInfo): PAnsiChar; cdecl;
366 ILogonInfo_networkProtocolPtr = function(this: ILogonInfo): PAnsiChar; cdecl;
367 ILogonInfo_remoteAddressPtr = function(this: ILogonInfo): PAnsiChar; cdecl;
368 ILogonInfo_authBlockPtr = function(this: ILogonInfo; length: CardinalPtr): BytePtr; cdecl;
369 IManagement_startPtr = procedure(this: IManagement; status: IStatus; logonInfo: ILogonInfo); cdecl;
370 IManagement_executePtr = function(this: IManagement; status: IStatus; user: IUser; callback: IListUsers): Integer; cdecl;
371 IManagement_commitPtr = procedure(this: IManagement; status: IStatus); cdecl;
372 IManagement_rollbackPtr = procedure(this: IManagement; status: IStatus); cdecl;
373 IWireCryptPlugin_getKnownTypesPtr = function(this: IWireCryptPlugin; status: IStatus): PAnsiChar; cdecl;
374 IWireCryptPlugin_setKeyPtr = procedure(this: IWireCryptPlugin; status: IStatus; key: ICryptKey); cdecl;
375 IWireCryptPlugin_encryptPtr = procedure(this: IWireCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
376 IWireCryptPlugin_decryptPtr = procedure(this: IWireCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
377 ICryptKeyCallback_callbackPtr = function(this: ICryptKeyCallback; dataLength: Cardinal; data: Pointer; bufferLength: Cardinal; buffer: Pointer): Cardinal; cdecl;
378 IKeyHolderPlugin_keyCallbackPtr = function(this: IKeyHolderPlugin; status: IStatus; callback: ICryptKeyCallback): Integer; cdecl;
379 IKeyHolderPlugin_keyHandlePtr = function(this: IKeyHolderPlugin; status: IStatus; keyName: PAnsiChar): ICryptKeyCallback; cdecl;
380 IDbCryptPlugin_setKeyPtr = procedure(this: IDbCryptPlugin; status: IStatus; length: Cardinal; sources: IKeyHolderPluginPtr; keyName: PAnsiChar); cdecl;
381 IDbCryptPlugin_encryptPtr = procedure(this: IDbCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
382 IDbCryptPlugin_decryptPtr = procedure(this: IDbCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
383 IExternalContext_getMasterPtr = function(this: IExternalContext): IMaster; cdecl;
384 IExternalContext_getEnginePtr = function(this: IExternalContext; status: IStatus): IExternalEngine; cdecl;
385 IExternalContext_getAttachmentPtr = function(this: IExternalContext; status: IStatus): IAttachment; cdecl;
386 IExternalContext_getTransactionPtr = function(this: IExternalContext; status: IStatus): ITransaction; cdecl;
387 IExternalContext_getUserNamePtr = function(this: IExternalContext): PAnsiChar; cdecl;
388 IExternalContext_getDatabaseNamePtr = function(this: IExternalContext): PAnsiChar; cdecl;
389 IExternalContext_getClientCharSetPtr = function(this: IExternalContext): PAnsiChar; cdecl;
390 IExternalContext_obtainInfoCodePtr = function(this: IExternalContext): Integer; cdecl;
391 IExternalContext_getInfoPtr = function(this: IExternalContext; code: Integer): Pointer; cdecl;
392 IExternalContext_setInfoPtr = function(this: IExternalContext; code: Integer; value: Pointer): Pointer; cdecl;
393 IExternalResultSet_fetchPtr = function(this: IExternalResultSet; status: IStatus): Boolean; cdecl;
394 IExternalFunction_getCharSetPtr = procedure(this: IExternalFunction; status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); cdecl;
395 IExternalFunction_executePtr = procedure(this: IExternalFunction; status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer); cdecl;
396 IExternalProcedure_getCharSetPtr = procedure(this: IExternalProcedure; status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); cdecl;
397 IExternalProcedure_openPtr = function(this: IExternalProcedure; status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer): IExternalResultSet; cdecl;
398 IExternalTrigger_getCharSetPtr = procedure(this: IExternalTrigger; status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); cdecl;
399 IExternalTrigger_executePtr = procedure(this: IExternalTrigger; status: IStatus; context: IExternalContext; action: Cardinal; oldMsg: Pointer; newMsg: Pointer); cdecl;
400 IRoutineMetadata_getPackagePtr = function(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
401 IRoutineMetadata_getNamePtr = function(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
402 IRoutineMetadata_getEntryPointPtr = function(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
403 IRoutineMetadata_getBodyPtr = function(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
404 IRoutineMetadata_getInputMetadataPtr = function(this: IRoutineMetadata; status: IStatus): IMessageMetadata; cdecl;
405 IRoutineMetadata_getOutputMetadataPtr = function(this: IRoutineMetadata; status: IStatus): IMessageMetadata; cdecl;
406 IRoutineMetadata_getTriggerMetadataPtr = function(this: IRoutineMetadata; status: IStatus): IMessageMetadata; cdecl;
407 IRoutineMetadata_getTriggerTablePtr = function(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
408 IRoutineMetadata_getTriggerTypePtr = function(this: IRoutineMetadata; status: IStatus): Cardinal; cdecl;
409 IExternalEngine_openPtr = procedure(this: IExternalEngine; status: IStatus; context: IExternalContext; charSet: PAnsiChar; charSetSize: Cardinal); cdecl;
410 IExternalEngine_openAttachmentPtr = procedure(this: IExternalEngine; status: IStatus; context: IExternalContext); cdecl;
411 IExternalEngine_closeAttachmentPtr = procedure(this: IExternalEngine; status: IStatus; context: IExternalContext); cdecl;
412 IExternalEngine_makeFunctionPtr = function(this: IExternalEngine; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalFunction; cdecl;
413 IExternalEngine_makeProcedurePtr = function(this: IExternalEngine; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalProcedure; cdecl;
414 IExternalEngine_makeTriggerPtr = function(this: IExternalEngine; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder): IExternalTrigger; cdecl;
415 ITimer_handlerPtr = procedure(this: ITimer); cdecl;
416 ITimerControl_startPtr = procedure(this: ITimerControl; status: IStatus; timer: ITimer; microSeconds: QWord); cdecl;
417 ITimerControl_stopPtr = procedure(this: ITimerControl; status: IStatus; timer: ITimer); cdecl;
418 IVersionCallback_callbackPtr = procedure(this: IVersionCallback; status: IStatus; text: PAnsiChar); cdecl;
419 IUtil_getFbVersionPtr = procedure(this: IUtil; status: IStatus; att: IAttachment; callback: IVersionCallback); cdecl;
420 IUtil_loadBlobPtr = procedure(this: IUtil; status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean); cdecl;
421 IUtil_dumpBlobPtr = procedure(this: IUtil; status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean); cdecl;
422 IUtil_getPerfCountersPtr = procedure(this: IUtil; status: IStatus; att: IAttachment; countersSet: PAnsiChar; counters: Int64Ptr); cdecl;
423 IUtil_executeCreateDatabasePtr = function(this: IUtil; status: IStatus; stmtLength: Cardinal; creatDBstatement: PAnsiChar; dialect: Cardinal; stmtIsCreateDb: BooleanPtr): IAttachment; cdecl;
424 IUtil_decodeDatePtr = procedure(this: IUtil; date: ISC_DATE; year: CardinalPtr; month: CardinalPtr; day: CardinalPtr); cdecl;
425 IUtil_decodeTimePtr = procedure(this: IUtil; time: ISC_TIME; hours: CardinalPtr; minutes: CardinalPtr; seconds: CardinalPtr; fractions: CardinalPtr); cdecl;
426 IUtil_encodeDatePtr = function(this: IUtil; year: Cardinal; month: Cardinal; day: Cardinal): ISC_DATE; cdecl;
427 IUtil_encodeTimePtr = function(this: IUtil; hours: Cardinal; minutes: Cardinal; seconds: Cardinal; fractions: Cardinal): ISC_TIME; cdecl;
428 IUtil_formatStatusPtr = function(this: IUtil; buffer: PAnsiChar; bufferSize: Cardinal; status: IStatus): Cardinal; cdecl;
429 IUtil_getClientVersionPtr = function(this: IUtil): Cardinal; cdecl;
430 IUtil_getXpbBuilderPtr = function(this: IUtil; status: IStatus; kind: Cardinal; buf: BytePtr; len: Cardinal): IXpbBuilder; cdecl;
431 IUtil_setOffsetsPtr = function(this: IUtil; status: IStatus; metadata: IMessageMetadata; callback: IOffsetsCallback): Cardinal; cdecl;
432 IOffsetsCallback_setOffsetPtr = procedure(this: IOffsetsCallback; status: IStatus; index: Cardinal; offset: Cardinal; nullOffset: Cardinal); cdecl;
433 IXpbBuilder_clearPtr = procedure(this: IXpbBuilder; status: IStatus); cdecl;
434 IXpbBuilder_removeCurrentPtr = procedure(this: IXpbBuilder; status: IStatus); cdecl;
435 IXpbBuilder_insertIntPtr = procedure(this: IXpbBuilder; status: IStatus; tag: Byte; value: Integer); cdecl;
436 IXpbBuilder_insertBigIntPtr = procedure(this: IXpbBuilder; status: IStatus; tag: Byte; value: Int64); cdecl;
437 IXpbBuilder_insertBytesPtr = procedure(this: IXpbBuilder; status: IStatus; tag: Byte; bytes: Pointer; length: Cardinal); cdecl;
438 IXpbBuilder_insertStringPtr = procedure(this: IXpbBuilder; status: IStatus; tag: Byte; str: PAnsiChar); cdecl;
439 IXpbBuilder_insertTagPtr = procedure(this: IXpbBuilder; status: IStatus; tag: Byte); cdecl;
440 IXpbBuilder_isEofPtr = function(this: IXpbBuilder; status: IStatus): Boolean; cdecl;
441 IXpbBuilder_moveNextPtr = procedure(this: IXpbBuilder; status: IStatus); cdecl;
442 IXpbBuilder_rewindPtr = procedure(this: IXpbBuilder; status: IStatus); cdecl;
443 IXpbBuilder_findFirstPtr = function(this: IXpbBuilder; status: IStatus; tag: Byte): Boolean; cdecl;
444 IXpbBuilder_findNextPtr = function(this: IXpbBuilder; status: IStatus): Boolean; cdecl;
445 IXpbBuilder_getTagPtr = function(this: IXpbBuilder; status: IStatus): Byte; cdecl;
446 IXpbBuilder_getLengthPtr = function(this: IXpbBuilder; status: IStatus): Cardinal; cdecl;
447 IXpbBuilder_getIntPtr = function(this: IXpbBuilder; status: IStatus): Integer; cdecl;
448 IXpbBuilder_getBigIntPtr = function(this: IXpbBuilder; status: IStatus): Int64; cdecl;
449 IXpbBuilder_getStringPtr = function(this: IXpbBuilder; status: IStatus): PAnsiChar; cdecl;
450 IXpbBuilder_getBytesPtr = function(this: IXpbBuilder; status: IStatus): BytePtr; cdecl;
451 IXpbBuilder_getBufferLengthPtr = function(this: IXpbBuilder; status: IStatus): Cardinal; cdecl;
452 IXpbBuilder_getBufferPtr = function(this: IXpbBuilder; status: IStatus): BytePtr; cdecl;
453 ITraceConnection_getKindPtr = function(this: ITraceConnection): Cardinal; cdecl;
454 ITraceConnection_getProcessIDPtr = function(this: ITraceConnection): Integer; cdecl;
455 ITraceConnection_getUserNamePtr = function(this: ITraceConnection): PAnsiChar; cdecl;
456 ITraceConnection_getRoleNamePtr = function(this: ITraceConnection): PAnsiChar; cdecl;
457 ITraceConnection_getCharSetPtr = function(this: ITraceConnection): PAnsiChar; cdecl;
458 ITraceConnection_getRemoteProtocolPtr = function(this: ITraceConnection): PAnsiChar; cdecl;
459 ITraceConnection_getRemoteAddressPtr = function(this: ITraceConnection): PAnsiChar; cdecl;
460 ITraceConnection_getRemoteProcessIDPtr = function(this: ITraceConnection): Integer; cdecl;
461 ITraceConnection_getRemoteProcessNamePtr = function(this: ITraceConnection): PAnsiChar; cdecl;
462 ITraceDatabaseConnection_getConnectionIDPtr = function(this: ITraceDatabaseConnection): Int64; cdecl;
463 ITraceDatabaseConnection_getDatabaseNamePtr = function(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
464 ITraceTransaction_getTransactionIDPtr = function(this: ITraceTransaction): Int64; cdecl;
465 ITraceTransaction_getReadOnlyPtr = function(this: ITraceTransaction): Boolean; cdecl;
466 ITraceTransaction_getWaitPtr = function(this: ITraceTransaction): Integer; cdecl;
467 ITraceTransaction_getIsolationPtr = function(this: ITraceTransaction): Cardinal; cdecl;
468 ITraceTransaction_getPerfPtr = function(this: ITraceTransaction): PerformanceInfoPtr; cdecl;
469 ITraceParams_getCountPtr = function(this: ITraceParams): Cardinal; cdecl;
470 ITraceParams_getParamPtr = function(this: ITraceParams; idx: Cardinal): dscPtr; cdecl;
471 ITraceStatement_getStmtIDPtr = function(this: ITraceStatement): Int64; cdecl;
472 ITraceStatement_getPerfPtr = function(this: ITraceStatement): PerformanceInfoPtr; cdecl;
473 ITraceSQLStatement_getTextPtr = function(this: ITraceSQLStatement): PAnsiChar; cdecl;
474 ITraceSQLStatement_getPlanPtr = function(this: ITraceSQLStatement): PAnsiChar; cdecl;
475 ITraceSQLStatement_getInputsPtr = function(this: ITraceSQLStatement): ITraceParams; cdecl;
476 ITraceSQLStatement_getTextUTF8Ptr = function(this: ITraceSQLStatement): PAnsiChar; cdecl;
477 ITraceSQLStatement_getExplainedPlanPtr = function(this: ITraceSQLStatement): PAnsiChar; cdecl;
478 ITraceBLRStatement_getDataPtr = function(this: ITraceBLRStatement): BytePtr; cdecl;
479 ITraceBLRStatement_getDataLengthPtr = function(this: ITraceBLRStatement): Cardinal; cdecl;
480 ITraceBLRStatement_getTextPtr = function(this: ITraceBLRStatement): PAnsiChar; cdecl;
481 ITraceDYNRequest_getDataPtr = function(this: ITraceDYNRequest): BytePtr; cdecl;
482 ITraceDYNRequest_getDataLengthPtr = function(this: ITraceDYNRequest): Cardinal; cdecl;
483 ITraceDYNRequest_getTextPtr = function(this: ITraceDYNRequest): PAnsiChar; cdecl;
484 ITraceContextVariable_getNameSpacePtr = function(this: ITraceContextVariable): PAnsiChar; cdecl;
485 ITraceContextVariable_getVarNamePtr = function(this: ITraceContextVariable): PAnsiChar; cdecl;
486 ITraceContextVariable_getVarValuePtr = function(this: ITraceContextVariable): PAnsiChar; cdecl;
487 ITraceProcedure_getProcNamePtr = function(this: ITraceProcedure): PAnsiChar; cdecl;
488 ITraceProcedure_getInputsPtr = function(this: ITraceProcedure): ITraceParams; cdecl;
489 ITraceProcedure_getPerfPtr = function(this: ITraceProcedure): PerformanceInfoPtr; cdecl;
490 ITraceFunction_getFuncNamePtr = function(this: ITraceFunction): PAnsiChar; cdecl;
491 ITraceFunction_getInputsPtr = function(this: ITraceFunction): ITraceParams; cdecl;
492 ITraceFunction_getResultPtr = function(this: ITraceFunction): ITraceParams; cdecl;
493 ITraceFunction_getPerfPtr = function(this: ITraceFunction): PerformanceInfoPtr; cdecl;
494 ITraceTrigger_getTriggerNamePtr = function(this: ITraceTrigger): PAnsiChar; cdecl;
495 ITraceTrigger_getRelationNamePtr = function(this: ITraceTrigger): PAnsiChar; cdecl;
496 ITraceTrigger_getActionPtr = function(this: ITraceTrigger): Integer; cdecl;
497 ITraceTrigger_getWhichPtr = function(this: ITraceTrigger): Integer; cdecl;
498 ITraceTrigger_getPerfPtr = function(this: ITraceTrigger): PerformanceInfoPtr; cdecl;
499 ITraceServiceConnection_getServiceIDPtr = function(this: ITraceServiceConnection): Pointer; cdecl;
500 ITraceServiceConnection_getServiceMgrPtr = function(this: ITraceServiceConnection): PAnsiChar; cdecl;
501 ITraceServiceConnection_getServiceNamePtr = function(this: ITraceServiceConnection): PAnsiChar; cdecl;
502 ITraceStatusVector_hasErrorPtr = function(this: ITraceStatusVector): Boolean; cdecl;
503 ITraceStatusVector_hasWarningPtr = function(this: ITraceStatusVector): Boolean; cdecl;
504 ITraceStatusVector_getStatusPtr = function(this: ITraceStatusVector): IStatus; cdecl;
505 ITraceStatusVector_getTextPtr = function(this: ITraceStatusVector): PAnsiChar; cdecl;
506 ITraceSweepInfo_getOITPtr = function(this: ITraceSweepInfo): Int64; cdecl;
507 ITraceSweepInfo_getOSTPtr = function(this: ITraceSweepInfo): Int64; cdecl;
508 ITraceSweepInfo_getOATPtr = function(this: ITraceSweepInfo): Int64; cdecl;
509 ITraceSweepInfo_getNextPtr = function(this: ITraceSweepInfo): Int64; cdecl;
510 ITraceSweepInfo_getPerfPtr = function(this: ITraceSweepInfo): PerformanceInfoPtr; cdecl;
511 ITraceLogWriter_writePtr = function(this: ITraceLogWriter; buf: Pointer; size: Cardinal): Cardinal; cdecl;
512 ITraceInitInfo_getConfigTextPtr = function(this: ITraceInitInfo): PAnsiChar; cdecl;
513 ITraceInitInfo_getTraceSessionIDPtr = function(this: ITraceInitInfo): Integer; cdecl;
514 ITraceInitInfo_getTraceSessionNamePtr = function(this: ITraceInitInfo): PAnsiChar; cdecl;
515 ITraceInitInfo_getFirebirdRootDirectoryPtr = function(this: ITraceInitInfo): PAnsiChar; cdecl;
516 ITraceInitInfo_getDatabaseNamePtr = function(this: ITraceInitInfo): PAnsiChar; cdecl;
517 ITraceInitInfo_getConnectionPtr = function(this: ITraceInitInfo): ITraceDatabaseConnection; cdecl;
518 ITraceInitInfo_getLogWriterPtr = function(this: ITraceInitInfo): ITraceLogWriter; cdecl;
519 ITracePlugin_trace_get_errorPtr = function(this: ITracePlugin): PAnsiChar; cdecl;
520 ITracePlugin_trace_attachPtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; create_db: Boolean; att_result: Cardinal): Boolean; cdecl;
521 ITracePlugin_trace_detachPtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; drop_db: Boolean): Boolean; cdecl;
522 ITracePlugin_trace_transaction_startPtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; tpb_length: Cardinal; tpb: BytePtr; tra_result: Cardinal): Boolean; cdecl;
523 ITracePlugin_trace_transaction_endPtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; commit: Boolean; retain_context: Boolean; tra_result: Cardinal): Boolean; cdecl;
524 ITracePlugin_trace_proc_executePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; procedure_: ITraceProcedure; started: Boolean; proc_result: Cardinal): Boolean; cdecl;
525 ITracePlugin_trace_trigger_executePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; trigger: ITraceTrigger; started: Boolean; trig_result: Cardinal): Boolean; cdecl;
526 ITracePlugin_trace_set_contextPtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; variable: ITraceContextVariable): Boolean; cdecl;
527 ITracePlugin_trace_dsql_preparePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; time_millis: Int64; req_result: Cardinal): Boolean; cdecl;
528 ITracePlugin_trace_dsql_freePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; statement: ITraceSQLStatement; option: Cardinal): Boolean; cdecl;
529 ITracePlugin_trace_dsql_executePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; started: Boolean; req_result: Cardinal): Boolean; cdecl;
530 ITracePlugin_trace_blr_compilePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; time_millis: Int64; req_result: Cardinal): Boolean; cdecl;
531 ITracePlugin_trace_blr_executePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; req_result: Cardinal): Boolean; cdecl;
532 ITracePlugin_trace_dyn_executePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; request: ITraceDYNRequest; time_millis: Int64; req_result: Cardinal): Boolean; cdecl;
533 ITracePlugin_trace_service_attachPtr = function(this: ITracePlugin; service: ITraceServiceConnection; att_result: Cardinal): Boolean; cdecl;
534 ITracePlugin_trace_service_startPtr = function(this: ITracePlugin; service: ITraceServiceConnection; switches_length: Cardinal; switches: PAnsiChar; start_result: Cardinal): Boolean; cdecl;
535 ITracePlugin_trace_service_queryPtr = function(this: ITracePlugin; service: ITraceServiceConnection; send_item_length: Cardinal; send_items: BytePtr; recv_item_length: Cardinal; recv_items: BytePtr; query_result: Cardinal): Boolean; cdecl;
536 ITracePlugin_trace_service_detachPtr = function(this: ITracePlugin; service: ITraceServiceConnection; detach_result: Cardinal): Boolean; cdecl;
537 ITracePlugin_trace_event_errorPtr = function(this: ITracePlugin; connection: ITraceConnection; status: ITraceStatusVector; function_: PAnsiChar): Boolean; cdecl;
538 ITracePlugin_trace_event_sweepPtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; sweep: ITraceSweepInfo; sweep_state: Cardinal): Boolean; cdecl;
539 ITracePlugin_trace_func_executePtr = function(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; function_: ITraceFunction; started: Boolean; func_result: Cardinal): Boolean; cdecl;
540 ITraceFactory_trace_needsPtr = function(this: ITraceFactory): QWord; cdecl;
541 ITraceFactory_trace_createPtr = function(this: ITraceFactory; status: IStatus; init_info: ITraceInitInfo): ITracePlugin; cdecl;
542 IUdrFunctionFactory_setupPtr = procedure(this: IUdrFunctionFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder); cdecl;
543 IUdrFunctionFactory_newItemPtr = function(this: IUdrFunctionFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalFunction; cdecl;
544 IUdrProcedureFactory_setupPtr = procedure(this: IUdrProcedureFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder); cdecl;
545 IUdrProcedureFactory_newItemPtr = function(this: IUdrProcedureFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalProcedure; cdecl;
546 IUdrTriggerFactory_setupPtr = procedure(this: IUdrTriggerFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder); cdecl;
547 IUdrTriggerFactory_newItemPtr = function(this: IUdrTriggerFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalTrigger; cdecl;
548 IUdrPlugin_getMasterPtr = function(this: IUdrPlugin): IMaster; cdecl;
549 IUdrPlugin_registerFunctionPtr = procedure(this: IUdrPlugin; status: IStatus; name: PAnsiChar; factory: IUdrFunctionFactory); cdecl;
550 IUdrPlugin_registerProcedurePtr = procedure(this: IUdrPlugin; status: IStatus; name: PAnsiChar; factory: IUdrProcedureFactory); cdecl;
551 IUdrPlugin_registerTriggerPtr = procedure(this: IUdrPlugin; status: IStatus; name: PAnsiChar; factory: IUdrTriggerFactory); cdecl;
552
553 VersionedVTable = class
554 version: NativeInt;
555 end;
556
557 IVersioned = class
558 vTable: VersionedVTable;
559
560 const VERSION = 0;
561
562 end;
563
564 IVersionedImpl = class(IVersioned)
565 constructor create;
566
567 end;
568
569 ReferenceCountedVTable = class(VersionedVTable)
570 addRef: IReferenceCounted_addRefPtr;
571 release: IReferenceCounted_releasePtr;
572 end;
573
574 IReferenceCounted = class(IVersioned)
575 const VERSION = 2;
576
577 procedure addRef();
578 function release(): Integer;
579 end;
580
581 IReferenceCountedImpl = class(IReferenceCounted)
582 constructor create;
583
584 procedure addRef(); virtual; abstract;
585 function release(): Integer; virtual; abstract;
586 end;
587
588 DisposableVTable = class(VersionedVTable)
589 dispose: IDisposable_disposePtr;
590 end;
591
592 IDisposable = class(IVersioned)
593 const VERSION = 1;
594
595 procedure dispose();
596 end;
597
598 IDisposableImpl = class(IDisposable)
599 constructor create;
600
601 procedure dispose(); virtual; abstract;
602 end;
603
604 StatusVTable = class(DisposableVTable)
605 init: IStatus_initPtr;
606 getState: IStatus_getStatePtr;
607 setErrors2: IStatus_setErrors2Ptr;
608 setWarnings2: IStatus_setWarnings2Ptr;
609 setErrors: IStatus_setErrorsPtr;
610 setWarnings: IStatus_setWarningsPtr;
611 getErrors: IStatus_getErrorsPtr;
612 getWarnings: IStatus_getWarningsPtr;
613 clone: IStatus_clonePtr;
614 end;
615
616 IStatus = class(IDisposable)
617 const VERSION = 10;
618 const STATE_WARNINGS = Cardinal(1);
619 const STATE_ERRORS = Cardinal(2);
620 const RESULT_ERROR = Integer(-1);
621 const RESULT_OK = Integer(0);
622 const RESULT_NO_DATA = Integer(1);
623 const RESULT_SEGMENT = Integer(2);
624
625 procedure init();
626 function getState(): Cardinal;
627 procedure setErrors2(length: Cardinal; value: NativeIntPtr);
628 procedure setWarnings2(length: Cardinal; value: NativeIntPtr);
629 procedure setErrors(value: NativeIntPtr);
630 procedure setWarnings(value: NativeIntPtr);
631 function getErrors(): NativeIntPtr;
632 function getWarnings(): NativeIntPtr;
633 function clone(): IStatus;
634 end;
635
636 IStatusImpl = class(IStatus)
637 constructor create;
638
639 procedure dispose(); virtual; abstract;
640 procedure init(); virtual; abstract;
641 function getState(): Cardinal; virtual; abstract;
642 procedure setErrors2(length: Cardinal; value: NativeIntPtr); virtual; abstract;
643 procedure setWarnings2(length: Cardinal; value: NativeIntPtr); virtual; abstract;
644 procedure setErrors(value: NativeIntPtr); virtual; abstract;
645 procedure setWarnings(value: NativeIntPtr); virtual; abstract;
646 function getErrors(): NativeIntPtr; virtual; abstract;
647 function getWarnings(): NativeIntPtr; virtual; abstract;
648 function clone(): IStatus; virtual; abstract;
649 end;
650
651 MasterVTable = class(VersionedVTable)
652 getStatus: IMaster_getStatusPtr;
653 getDispatcher: IMaster_getDispatcherPtr;
654 getPluginManager: IMaster_getPluginManagerPtr;
655 getTimerControl: IMaster_getTimerControlPtr;
656 getDtc: IMaster_getDtcPtr;
657 registerAttachment: IMaster_registerAttachmentPtr;
658 registerTransaction: IMaster_registerTransactionPtr;
659 getMetadataBuilder: IMaster_getMetadataBuilderPtr;
660 serverMode: IMaster_serverModePtr;
661 getUtilInterface: IMaster_getUtilInterfacePtr;
662 getConfigManager: IMaster_getConfigManagerPtr;
663 getProcessExiting: IMaster_getProcessExitingPtr;
664 end;
665
666 IMaster = class(IVersioned)
667 const VERSION = 12;
668
669 function getStatus(): IStatus;
670 function getDispatcher(): IProvider;
671 function getPluginManager(): IPluginManager;
672 function getTimerControl(): ITimerControl;
673 function getDtc(): IDtc;
674 function registerAttachment(provider: IProvider; attachment: IAttachment): IAttachment;
675 function registerTransaction(attachment: IAttachment; transaction: ITransaction): ITransaction;
676 function getMetadataBuilder(status: IStatus; fieldCount: Cardinal): IMetadataBuilder;
677 function serverMode(mode: Integer): Integer;
678 function getUtilInterface(): IUtil;
679 function getConfigManager(): IConfigManager;
680 function getProcessExiting(): Boolean;
681 end;
682
683 IMasterImpl = class(IMaster)
684 constructor create;
685
686 function getStatus(): IStatus; virtual; abstract;
687 function getDispatcher(): IProvider; virtual; abstract;
688 function getPluginManager(): IPluginManager; virtual; abstract;
689 function getTimerControl(): ITimerControl; virtual; abstract;
690 function getDtc(): IDtc; virtual; abstract;
691 function registerAttachment(provider: IProvider; attachment: IAttachment): IAttachment; virtual; abstract;
692 function registerTransaction(attachment: IAttachment; transaction: ITransaction): ITransaction; virtual; abstract;
693 function getMetadataBuilder(status: IStatus; fieldCount: Cardinal): IMetadataBuilder; virtual; abstract;
694 function serverMode(mode: Integer): Integer; virtual; abstract;
695 function getUtilInterface(): IUtil; virtual; abstract;
696 function getConfigManager(): IConfigManager; virtual; abstract;
697 function getProcessExiting(): Boolean; virtual; abstract;
698 end;
699
700 PluginBaseVTable = class(ReferenceCountedVTable)
701 setOwner: IPluginBase_setOwnerPtr;
702 getOwner: IPluginBase_getOwnerPtr;
703 end;
704
705 IPluginBase = class(IReferenceCounted)
706 const VERSION = 4;
707
708 procedure setOwner(r: IReferenceCounted);
709 function getOwner(): IReferenceCounted;
710 end;
711
712 IPluginBaseImpl = class(IPluginBase)
713 constructor create;
714
715 procedure addRef(); virtual; abstract;
716 function release(): Integer; virtual; abstract;
717 procedure setOwner(r: IReferenceCounted); virtual; abstract;
718 function getOwner(): IReferenceCounted; virtual; abstract;
719 end;
720
721 PluginSetVTable = class(ReferenceCountedVTable)
722 getName: IPluginSet_getNamePtr;
723 getModuleName: IPluginSet_getModuleNamePtr;
724 getPlugin: IPluginSet_getPluginPtr;
725 next: IPluginSet_nextPtr;
726 set_: IPluginSet_set_Ptr;
727 end;
728
729 IPluginSet = class(IReferenceCounted)
730 const VERSION = 7;
731
732 function getName(): PAnsiChar;
733 function getModuleName(): PAnsiChar;
734 function getPlugin(status: IStatus): IPluginBase;
735 procedure next(status: IStatus);
736 procedure set_(status: IStatus; s: PAnsiChar);
737 end;
738
739 IPluginSetImpl = class(IPluginSet)
740 constructor create;
741
742 procedure addRef(); virtual; abstract;
743 function release(): Integer; virtual; abstract;
744 function getName(): PAnsiChar; virtual; abstract;
745 function getModuleName(): PAnsiChar; virtual; abstract;
746 function getPlugin(status: IStatus): IPluginBase; virtual; abstract;
747 procedure next(status: IStatus); virtual; abstract;
748 procedure set_(status: IStatus; s: PAnsiChar); virtual; abstract;
749 end;
750
751 ConfigEntryVTable = class(ReferenceCountedVTable)
752 getName: IConfigEntry_getNamePtr;
753 getValue: IConfigEntry_getValuePtr;
754 getIntValue: IConfigEntry_getIntValuePtr;
755 getBoolValue: IConfigEntry_getBoolValuePtr;
756 getSubConfig: IConfigEntry_getSubConfigPtr;
757 end;
758
759 IConfigEntry = class(IReferenceCounted)
760 const VERSION = 7;
761
762 function getName(): PAnsiChar;
763 function getValue(): PAnsiChar;
764 function getIntValue(): Int64;
765 function getBoolValue(): Boolean;
766 function getSubConfig(status: IStatus): IConfig;
767 end;
768
769 IConfigEntryImpl = class(IConfigEntry)
770 constructor create;
771
772 procedure addRef(); virtual; abstract;
773 function release(): Integer; virtual; abstract;
774 function getName(): PAnsiChar; virtual; abstract;
775 function getValue(): PAnsiChar; virtual; abstract;
776 function getIntValue(): Int64; virtual; abstract;
777 function getBoolValue(): Boolean; virtual; abstract;
778 function getSubConfig(status: IStatus): IConfig; virtual; abstract;
779 end;
780
781 ConfigVTable = class(ReferenceCountedVTable)
782 find: IConfig_findPtr;
783 findValue: IConfig_findValuePtr;
784 findPos: IConfig_findPosPtr;
785 end;
786
787 IConfig = class(IReferenceCounted)
788 const VERSION = 5;
789
790 function find(status: IStatus; name: PAnsiChar): IConfigEntry;
791 function findValue(status: IStatus; name: PAnsiChar; value: PAnsiChar): IConfigEntry;
792 function findPos(status: IStatus; name: PAnsiChar; pos: Cardinal): IConfigEntry;
793 end;
794
795 IConfigImpl = class(IConfig)
796 constructor create;
797
798 procedure addRef(); virtual; abstract;
799 function release(): Integer; virtual; abstract;
800 function find(status: IStatus; name: PAnsiChar): IConfigEntry; virtual; abstract;
801 function findValue(status: IStatus; name: PAnsiChar; value: PAnsiChar): IConfigEntry; virtual; abstract;
802 function findPos(status: IStatus; name: PAnsiChar; pos: Cardinal): IConfigEntry; virtual; abstract;
803 end;
804
805 FirebirdConfVTable = class(ReferenceCountedVTable)
806 getKey: IFirebirdConf_getKeyPtr;
807 asInteger: IFirebirdConf_asIntegerPtr;
808 asString: IFirebirdConf_asStringPtr;
809 asBoolean: IFirebirdConf_asBooleanPtr;
810 end;
811
812 IFirebirdConf = class(IReferenceCounted)
813 const VERSION = 6;
814
815 function getKey(name: PAnsiChar): Cardinal;
816 function asInteger(key: Cardinal): Int64;
817 function asString(key: Cardinal): PAnsiChar;
818 function asBoolean(key: Cardinal): Boolean;
819 end;
820
821 IFirebirdConfImpl = class(IFirebirdConf)
822 constructor create;
823
824 procedure addRef(); virtual; abstract;
825 function release(): Integer; virtual; abstract;
826 function getKey(name: PAnsiChar): Cardinal; virtual; abstract;
827 function asInteger(key: Cardinal): Int64; virtual; abstract;
828 function asString(key: Cardinal): PAnsiChar; virtual; abstract;
829 function asBoolean(key: Cardinal): Boolean; virtual; abstract;
830 end;
831
832 PluginConfigVTable = class(ReferenceCountedVTable)
833 getConfigFileName: IPluginConfig_getConfigFileNamePtr;
834 getDefaultConfig: IPluginConfig_getDefaultConfigPtr;
835 getFirebirdConf: IPluginConfig_getFirebirdConfPtr;
836 setReleaseDelay: IPluginConfig_setReleaseDelayPtr;
837 end;
838
839 IPluginConfig = class(IReferenceCounted)
840 const VERSION = 6;
841
842 function getConfigFileName(): PAnsiChar;
843 function getDefaultConfig(status: IStatus): IConfig;
844 function getFirebirdConf(status: IStatus): IFirebirdConf;
845 procedure setReleaseDelay(status: IStatus; microSeconds: QWord);
846 end;
847
848 IPluginConfigImpl = class(IPluginConfig)
849 constructor create;
850
851 procedure addRef(); virtual; abstract;
852 function release(): Integer; virtual; abstract;
853 function getConfigFileName(): PAnsiChar; virtual; abstract;
854 function getDefaultConfig(status: IStatus): IConfig; virtual; abstract;
855 function getFirebirdConf(status: IStatus): IFirebirdConf; virtual; abstract;
856 procedure setReleaseDelay(status: IStatus; microSeconds: QWord); virtual; abstract;
857 end;
858
859 PluginFactoryVTable = class(VersionedVTable)
860 createPlugin: IPluginFactory_createPluginPtr;
861 end;
862
863 IPluginFactory = class(IVersioned)
864 const VERSION = 1;
865
866 function createPlugin(status: IStatus; factoryParameter: IPluginConfig): IPluginBase;
867 end;
868
869 IPluginFactoryImpl = class(IPluginFactory)
870 constructor create;
871
872 function createPlugin(status: IStatus; factoryParameter: IPluginConfig): IPluginBase; virtual; abstract;
873 end;
874
875 PluginModuleVTable = class(VersionedVTable)
876 doClean: IPluginModule_doCleanPtr;
877 end;
878
879 IPluginModule = class(IVersioned)
880 const VERSION = 1;
881
882 procedure doClean();
883 end;
884
885 IPluginModuleImpl = class(IPluginModule)
886 constructor create;
887
888 procedure doClean(); virtual; abstract;
889 end;
890
891 PluginManagerVTable = class(VersionedVTable)
892 registerPluginFactory: IPluginManager_registerPluginFactoryPtr;
893 registerModule: IPluginManager_registerModulePtr;
894 unregisterModule: IPluginManager_unregisterModulePtr;
895 getPlugins: IPluginManager_getPluginsPtr;
896 getConfig: IPluginManager_getConfigPtr;
897 releasePlugin: IPluginManager_releasePluginPtr;
898 end;
899
900 IPluginManager = class(IVersioned)
901 const VERSION = 6;
902 const TYPE_PROVIDER = Cardinal(1);
903 const TYPE_FIRST_NON_LIB = Cardinal(2);
904 const TYPE_AUTH_SERVER = Cardinal(3);
905 const TYPE_AUTH_CLIENT = Cardinal(4);
906 const TYPE_AUTH_USER_MANAGEMENT = Cardinal(5);
907 const TYPE_EXTERNAL_ENGINE = Cardinal(6);
908 const TYPE_TRACE = Cardinal(7);
909 const TYPE_WIRE_CRYPT = Cardinal(8);
910 const TYPE_DB_CRYPT = Cardinal(9);
911 const TYPE_KEY_HOLDER = Cardinal(10);
912 const TYPE_COUNT = Cardinal(11);
913
914 procedure registerPluginFactory(pluginType: Cardinal; defaultName: PAnsiChar; factory: IPluginFactory);
915 procedure registerModule(cleanup: IPluginModule);
916 procedure unregisterModule(cleanup: IPluginModule);
917 function getPlugins(status: IStatus; pluginType: Cardinal; namesList: PAnsiChar; firebirdConf: IFirebirdConf): IPluginSet;
918 function getConfig(status: IStatus; filename: PAnsiChar): IConfig;
919 procedure releasePlugin(plugin: IPluginBase);
920 end;
921
922 IPluginManagerImpl = class(IPluginManager)
923 constructor create;
924
925 procedure registerPluginFactory(pluginType: Cardinal; defaultName: PAnsiChar; factory: IPluginFactory); virtual; abstract;
926 procedure registerModule(cleanup: IPluginModule); virtual; abstract;
927 procedure unregisterModule(cleanup: IPluginModule); virtual; abstract;
928 function getPlugins(status: IStatus; pluginType: Cardinal; namesList: PAnsiChar; firebirdConf: IFirebirdConf): IPluginSet; virtual; abstract;
929 function getConfig(status: IStatus; filename: PAnsiChar): IConfig; virtual; abstract;
930 procedure releasePlugin(plugin: IPluginBase); virtual; abstract;
931 end;
932
933 CryptKeyVTable = class(VersionedVTable)
934 setSymmetric: ICryptKey_setSymmetricPtr;
935 setAsymmetric: ICryptKey_setAsymmetricPtr;
936 getEncryptKey: ICryptKey_getEncryptKeyPtr;
937 getDecryptKey: ICryptKey_getDecryptKeyPtr;
938 end;
939
940 ICryptKey = class(IVersioned)
941 const VERSION = 4;
942
943 procedure setSymmetric(status: IStatus; type_: PAnsiChar; keyLength: Cardinal; key: Pointer);
944 procedure setAsymmetric(status: IStatus; type_: PAnsiChar; encryptKeyLength: Cardinal; encryptKey: Pointer; decryptKeyLength: Cardinal; decryptKey: Pointer);
945 function getEncryptKey(length: CardinalPtr): Pointer;
946 function getDecryptKey(length: CardinalPtr): Pointer;
947 end;
948
949 ICryptKeyImpl = class(ICryptKey)
950 constructor create;
951
952 procedure setSymmetric(status: IStatus; type_: PAnsiChar; keyLength: Cardinal; key: Pointer); virtual; abstract;
953 procedure setAsymmetric(status: IStatus; type_: PAnsiChar; encryptKeyLength: Cardinal; encryptKey: Pointer; decryptKeyLength: Cardinal; decryptKey: Pointer); virtual; abstract;
954 function getEncryptKey(length: CardinalPtr): Pointer; virtual; abstract;
955 function getDecryptKey(length: CardinalPtr): Pointer; virtual; abstract;
956 end;
957
958 ConfigManagerVTable = class(VersionedVTable)
959 getDirectory: IConfigManager_getDirectoryPtr;
960 getFirebirdConf: IConfigManager_getFirebirdConfPtr;
961 getDatabaseConf: IConfigManager_getDatabaseConfPtr;
962 getPluginConfig: IConfigManager_getPluginConfigPtr;
963 getInstallDirectory: IConfigManager_getInstallDirectoryPtr;
964 getRootDirectory: IConfigManager_getRootDirectoryPtr;
965 end;
966
967 IConfigManager = class(IVersioned)
968 const VERSION = 6;
969 const DIR_BIN = Cardinal(0);
970 const DIR_SBIN = Cardinal(1);
971 const DIR_CONF = Cardinal(2);
972 const DIR_LIB = Cardinal(3);
973 const DIR_INC = Cardinal(4);
974 const DIR_DOC = Cardinal(5);
975 const DIR_UDF = Cardinal(6);
976 const DIR_SAMPLE = Cardinal(7);
977 const DIR_SAMPLEDB = Cardinal(8);
978 const DIR_HELP = Cardinal(9);
979 const DIR_INTL = Cardinal(10);
980 const DIR_MISC = Cardinal(11);
981 const DIR_SECDB = Cardinal(12);
982 const DIR_MSG = Cardinal(13);
983 const DIR_LOG = Cardinal(14);
984 const DIR_GUARD = Cardinal(15);
985 const DIR_PLUGINS = Cardinal(16);
986 const DIR_COUNT = Cardinal(17);
987
988 function getDirectory(code: Cardinal): PAnsiChar;
989 function getFirebirdConf(): IFirebirdConf;
990 function getDatabaseConf(dbName: PAnsiChar): IFirebirdConf;
991 function getPluginConfig(configuredPlugin: PAnsiChar): IConfig;
992 function getInstallDirectory(): PAnsiChar;
993 function getRootDirectory(): PAnsiChar;
994 end;
995
996 IConfigManagerImpl = class(IConfigManager)
997 constructor create;
998
999 function getDirectory(code: Cardinal): PAnsiChar; virtual; abstract;
1000 function getFirebirdConf(): IFirebirdConf; virtual; abstract;
1001 function getDatabaseConf(dbName: PAnsiChar): IFirebirdConf; virtual; abstract;
1002 function getPluginConfig(configuredPlugin: PAnsiChar): IConfig; virtual; abstract;
1003 function getInstallDirectory(): PAnsiChar; virtual; abstract;
1004 function getRootDirectory(): PAnsiChar; virtual; abstract;
1005 end;
1006
1007 EventCallbackVTable = class(ReferenceCountedVTable)
1008 eventCallbackFunction: IEventCallback_eventCallbackFunctionPtr;
1009 end;
1010
1011 IEventCallback = class(IReferenceCounted)
1012 const VERSION = 3;
1013
1014 procedure eventCallbackFunction(length: Cardinal; events: BytePtr);
1015 end;
1016
1017 IEventCallbackImpl = class(IEventCallback)
1018 constructor create;
1019
1020 procedure addRef(); virtual; abstract;
1021 function release(): Integer; virtual; abstract;
1022 procedure eventCallbackFunction(length: Cardinal; events: BytePtr); virtual; abstract;
1023 end;
1024
1025 BlobVTable = class(ReferenceCountedVTable)
1026 getInfo: IBlob_getInfoPtr;
1027 getSegment: IBlob_getSegmentPtr;
1028 putSegment: IBlob_putSegmentPtr;
1029 cancel: IBlob_cancelPtr;
1030 close: IBlob_closePtr;
1031 seek: IBlob_seekPtr;
1032 end;
1033
1034 IBlob = class(IReferenceCounted)
1035 const VERSION = 8;
1036
1037 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
1038 function getSegment(status: IStatus; bufferLength: Cardinal; buffer: Pointer; segmentLength: CardinalPtr): Integer;
1039 procedure putSegment(status: IStatus; length: Cardinal; buffer: Pointer);
1040 procedure cancel(status: IStatus);
1041 procedure close(status: IStatus);
1042 function seek(status: IStatus; mode: Integer; offset: Integer): Integer;
1043 end;
1044
1045 IBlobImpl = class(IBlob)
1046 constructor create;
1047
1048 procedure addRef(); virtual; abstract;
1049 function release(): Integer; virtual; abstract;
1050 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); virtual; abstract;
1051 function getSegment(status: IStatus; bufferLength: Cardinal; buffer: Pointer; segmentLength: CardinalPtr): Integer; virtual; abstract;
1052 procedure putSegment(status: IStatus; length: Cardinal; buffer: Pointer); virtual; abstract;
1053 procedure cancel(status: IStatus); virtual; abstract;
1054 procedure close(status: IStatus); virtual; abstract;
1055 function seek(status: IStatus; mode: Integer; offset: Integer): Integer; virtual; abstract;
1056 end;
1057
1058 TransactionVTable = class(ReferenceCountedVTable)
1059 getInfo: ITransaction_getInfoPtr;
1060 prepare: ITransaction_preparePtr;
1061 commit: ITransaction_commitPtr;
1062 commitRetaining: ITransaction_commitRetainingPtr;
1063 rollback: ITransaction_rollbackPtr;
1064 rollbackRetaining: ITransaction_rollbackRetainingPtr;
1065 disconnect: ITransaction_disconnectPtr;
1066 join: ITransaction_joinPtr;
1067 validate: ITransaction_validatePtr;
1068 enterDtc: ITransaction_enterDtcPtr;
1069 end;
1070
1071 ITransaction = class(IReferenceCounted)
1072 const VERSION = 12;
1073
1074 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
1075 procedure prepare(status: IStatus; msgLength: Cardinal; message: BytePtr);
1076 procedure commit(status: IStatus);
1077 procedure commitRetaining(status: IStatus);
1078 procedure rollback(status: IStatus);
1079 procedure rollbackRetaining(status: IStatus);
1080 procedure disconnect(status: IStatus);
1081 function join(status: IStatus; transaction: ITransaction): ITransaction;
1082 function validate(status: IStatus; attachment: IAttachment): ITransaction;
1083 function enterDtc(status: IStatus): ITransaction;
1084 end;
1085
1086 ITransactionImpl = class(ITransaction)
1087 constructor create;
1088
1089 procedure addRef(); virtual; abstract;
1090 function release(): Integer; virtual; abstract;
1091 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); virtual; abstract;
1092 procedure prepare(status: IStatus; msgLength: Cardinal; message: BytePtr); virtual; abstract;
1093 procedure commit(status: IStatus); virtual; abstract;
1094 procedure commitRetaining(status: IStatus); virtual; abstract;
1095 procedure rollback(status: IStatus); virtual; abstract;
1096 procedure rollbackRetaining(status: IStatus); virtual; abstract;
1097 procedure disconnect(status: IStatus); virtual; abstract;
1098 function join(status: IStatus; transaction: ITransaction): ITransaction; virtual; abstract;
1099 function validate(status: IStatus; attachment: IAttachment): ITransaction; virtual; abstract;
1100 function enterDtc(status: IStatus): ITransaction; virtual; abstract;
1101 end;
1102
1103 MessageMetadataVTable = class(ReferenceCountedVTable)
1104 getCount: IMessageMetadata_getCountPtr;
1105 getField: IMessageMetadata_getFieldPtr;
1106 getRelation: IMessageMetadata_getRelationPtr;
1107 getOwner: IMessageMetadata_getOwnerPtr;
1108 getAlias: IMessageMetadata_getAliasPtr;
1109 getType: IMessageMetadata_getTypePtr;
1110 isNullable: IMessageMetadata_isNullablePtr;
1111 getSubType: IMessageMetadata_getSubTypePtr;
1112 getLength: IMessageMetadata_getLengthPtr;
1113 getScale: IMessageMetadata_getScalePtr;
1114 getCharSet: IMessageMetadata_getCharSetPtr;
1115 getOffset: IMessageMetadata_getOffsetPtr;
1116 getNullOffset: IMessageMetadata_getNullOffsetPtr;
1117 getBuilder: IMessageMetadata_getBuilderPtr;
1118 getMessageLength: IMessageMetadata_getMessageLengthPtr;
1119 end;
1120
1121 IMessageMetadata = class(IReferenceCounted)
1122 const VERSION = 17;
1123
1124 function getCount(status: IStatus): Cardinal;
1125 function getField(status: IStatus; index: Cardinal): PAnsiChar;
1126 function getRelation(status: IStatus; index: Cardinal): PAnsiChar;
1127 function getOwner(status: IStatus; index: Cardinal): PAnsiChar;
1128 function getAlias(status: IStatus; index: Cardinal): PAnsiChar;
1129 function getType(status: IStatus; index: Cardinal): Cardinal;
1130 function isNullable(status: IStatus; index: Cardinal): Boolean;
1131 function getSubType(status: IStatus; index: Cardinal): Integer;
1132 function getLength(status: IStatus; index: Cardinal): Cardinal;
1133 function getScale(status: IStatus; index: Cardinal): Integer;
1134 function getCharSet(status: IStatus; index: Cardinal): Cardinal;
1135 function getOffset(status: IStatus; index: Cardinal): Cardinal;
1136 function getNullOffset(status: IStatus; index: Cardinal): Cardinal;
1137 function getBuilder(status: IStatus): IMetadataBuilder;
1138 function getMessageLength(status: IStatus): Cardinal;
1139 end;
1140
1141 IMessageMetadataImpl = class(IMessageMetadata)
1142 constructor create;
1143
1144 procedure addRef(); virtual; abstract;
1145 function release(): Integer; virtual; abstract;
1146 function getCount(status: IStatus): Cardinal; virtual; abstract;
1147 function getField(status: IStatus; index: Cardinal): PAnsiChar; virtual; abstract;
1148 function getRelation(status: IStatus; index: Cardinal): PAnsiChar; virtual; abstract;
1149 function getOwner(status: IStatus; index: Cardinal): PAnsiChar; virtual; abstract;
1150 function getAlias(status: IStatus; index: Cardinal): PAnsiChar; virtual; abstract;
1151 function getType(status: IStatus; index: Cardinal): Cardinal; virtual; abstract;
1152 function isNullable(status: IStatus; index: Cardinal): Boolean; virtual; abstract;
1153 function getSubType(status: IStatus; index: Cardinal): Integer; virtual; abstract;
1154 function getLength(status: IStatus; index: Cardinal): Cardinal; virtual; abstract;
1155 function getScale(status: IStatus; index: Cardinal): Integer; virtual; abstract;
1156 function getCharSet(status: IStatus; index: Cardinal): Cardinal; virtual; abstract;
1157 function getOffset(status: IStatus; index: Cardinal): Cardinal; virtual; abstract;
1158 function getNullOffset(status: IStatus; index: Cardinal): Cardinal; virtual; abstract;
1159 function getBuilder(status: IStatus): IMetadataBuilder; virtual; abstract;
1160 function getMessageLength(status: IStatus): Cardinal; virtual; abstract;
1161 end;
1162
1163 MetadataBuilderVTable = class(ReferenceCountedVTable)
1164 setType: IMetadataBuilder_setTypePtr;
1165 setSubType: IMetadataBuilder_setSubTypePtr;
1166 setLength: IMetadataBuilder_setLengthPtr;
1167 setCharSet: IMetadataBuilder_setCharSetPtr;
1168 setScale: IMetadataBuilder_setScalePtr;
1169 truncate: IMetadataBuilder_truncatePtr;
1170 moveNameToIndex: IMetadataBuilder_moveNameToIndexPtr;
1171 remove: IMetadataBuilder_removePtr;
1172 addField: IMetadataBuilder_addFieldPtr;
1173 getMetadata: IMetadataBuilder_getMetadataPtr;
1174 end;
1175
1176 IMetadataBuilder = class(IReferenceCounted)
1177 const VERSION = 12;
1178
1179 procedure setType(status: IStatus; index: Cardinal; type_: Cardinal);
1180 procedure setSubType(status: IStatus; index: Cardinal; subType: Integer);
1181 procedure setLength(status: IStatus; index: Cardinal; length: Cardinal);
1182 procedure setCharSet(status: IStatus; index: Cardinal; charSet: Cardinal);
1183 procedure setScale(status: IStatus; index: Cardinal; scale: integer);
1184 procedure truncate(status: IStatus; count: Cardinal);
1185 procedure moveNameToIndex(status: IStatus; name: PAnsiChar; index: Cardinal);
1186 procedure remove(status: IStatus; index: Cardinal);
1187 function addField(status: IStatus): Cardinal;
1188 function getMetadata(status: IStatus): IMessageMetadata;
1189 end;
1190
1191 IMetadataBuilderImpl = class(IMetadataBuilder)
1192 constructor create;
1193
1194 procedure addRef(); virtual; abstract;
1195 function release(): Integer; virtual; abstract;
1196 procedure setType(status: IStatus; index: Cardinal; type_: Cardinal); virtual; abstract;
1197 procedure setSubType(status: IStatus; index: Cardinal; subType: Integer); virtual; abstract;
1198 procedure setLength(status: IStatus; index: Cardinal; length: Cardinal); virtual; abstract;
1199 procedure setCharSet(status: IStatus; index: Cardinal; charSet: Cardinal); virtual; abstract;
1200 procedure setScale(status: IStatus; index: Cardinal; scale: integer); virtual; abstract;
1201 procedure truncate(status: IStatus; count: Cardinal); virtual; abstract;
1202 procedure moveNameToIndex(status: IStatus; name: PAnsiChar; index: Cardinal); virtual; abstract;
1203 procedure remove(status: IStatus; index: Cardinal); virtual; abstract;
1204 function addField(status: IStatus): Cardinal; virtual; abstract;
1205 function getMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
1206 end;
1207
1208 ResultSetVTable = class(ReferenceCountedVTable)
1209 fetchNext: IResultSet_fetchNextPtr;
1210 fetchPrior: IResultSet_fetchPriorPtr;
1211 fetchFirst: IResultSet_fetchFirstPtr;
1212 fetchLast: IResultSet_fetchLastPtr;
1213 fetchAbsolute: IResultSet_fetchAbsolutePtr;
1214 fetchRelative: IResultSet_fetchRelativePtr;
1215 isEof: IResultSet_isEofPtr;
1216 isBof: IResultSet_isBofPtr;
1217 getMetadata: IResultSet_getMetadataPtr;
1218 close: IResultSet_closePtr;
1219 setDelayedOutputFormat: IResultSet_setDelayedOutputFormatPtr;
1220 end;
1221
1222 IResultSet = class(IReferenceCounted)
1223 const VERSION = 13;
1224
1225 function fetchNext(status: IStatus; message: Pointer): Integer;
1226 function fetchPrior(status: IStatus; message: Pointer): Integer;
1227 function fetchFirst(status: IStatus; message: Pointer): Integer;
1228 function fetchLast(status: IStatus; message: Pointer): Integer;
1229 function fetchAbsolute(status: IStatus; position: Integer; message: Pointer): Integer;
1230 function fetchRelative(status: IStatus; offset: Integer; message: Pointer): Integer;
1231 function isEof(status: IStatus): Boolean;
1232 function isBof(status: IStatus): Boolean;
1233 function getMetadata(status: IStatus): IMessageMetadata;
1234 procedure close(status: IStatus);
1235 procedure setDelayedOutputFormat(status: IStatus; format: IMessageMetadata);
1236 end;
1237
1238 IResultSetImpl = class(IResultSet)
1239 constructor create;
1240
1241 procedure addRef(); virtual; abstract;
1242 function release(): Integer; virtual; abstract;
1243 function fetchNext(status: IStatus; message: Pointer): Integer; virtual; abstract;
1244 function fetchPrior(status: IStatus; message: Pointer): Integer; virtual; abstract;
1245 function fetchFirst(status: IStatus; message: Pointer): Integer; virtual; abstract;
1246 function fetchLast(status: IStatus; message: Pointer): Integer; virtual; abstract;
1247 function fetchAbsolute(status: IStatus; position: Integer; message: Pointer): Integer; virtual; abstract;
1248 function fetchRelative(status: IStatus; offset: Integer; message: Pointer): Integer; virtual; abstract;
1249 function isEof(status: IStatus): Boolean; virtual; abstract;
1250 function isBof(status: IStatus): Boolean; virtual; abstract;
1251 function getMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
1252 procedure close(status: IStatus); virtual; abstract;
1253 procedure setDelayedOutputFormat(status: IStatus; format: IMessageMetadata); virtual; abstract;
1254 end;
1255
1256 StatementVTable = class(ReferenceCountedVTable)
1257 getInfo: IStatement_getInfoPtr;
1258 getType: IStatement_getTypePtr;
1259 getPlan: IStatement_getPlanPtr;
1260 getAffectedRecords: IStatement_getAffectedRecordsPtr;
1261 getInputMetadata: IStatement_getInputMetadataPtr;
1262 getOutputMetadata: IStatement_getOutputMetadataPtr;
1263 execute: IStatement_executePtr;
1264 openCursor: IStatement_openCursorPtr;
1265 setCursorName: IStatement_setCursorNamePtr;
1266 free: IStatement_freePtr;
1267 getFlags: IStatement_getFlagsPtr;
1268 end;
1269
1270 IStatement = class(IReferenceCounted)
1271 const VERSION = 13;
1272 const PREPARE_PREFETCH_NONE = Cardinal(0);
1273 const PREPARE_PREFETCH_TYPE = Cardinal(1);
1274 const PREPARE_PREFETCH_INPUT_PARAMETERS = Cardinal(2);
1275 const PREPARE_PREFETCH_OUTPUT_PARAMETERS = Cardinal(4);
1276 const PREPARE_PREFETCH_LEGACY_PLAN = Cardinal(8);
1277 const PREPARE_PREFETCH_DETAILED_PLAN = Cardinal(16);
1278 const PREPARE_PREFETCH_AFFECTED_RECORDS = Cardinal(32);
1279 const PREPARE_PREFETCH_FLAGS = Cardinal(64);
1280 const PREPARE_PREFETCH_METADATA = Cardinal(IStatement.PREPARE_PREFETCH_TYPE or IStatement.PREPARE_PREFETCH_FLAGS or IStatement.PREPARE_PREFETCH_INPUT_PARAMETERS or IStatement.PREPARE_PREFETCH_OUTPUT_PARAMETERS);
1281 const PREPARE_PREFETCH_ALL = Cardinal(IStatement.PREPARE_PREFETCH_METADATA or IStatement.PREPARE_PREFETCH_LEGACY_PLAN or IStatement.PREPARE_PREFETCH_DETAILED_PLAN or IStatement.PREPARE_PREFETCH_AFFECTED_RECORDS);
1282 const FLAG_HAS_CURSOR = Cardinal(1);
1283 const FLAG_REPEAT_EXECUTE = Cardinal(2);
1284 const CURSOR_TYPE_SCROLLABLE = Cardinal(1);
1285
1286 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
1287 function getType(status: IStatus): Cardinal;
1288 function getPlan(status: IStatus; detailed: Boolean): PAnsiChar;
1289 function getAffectedRecords(status: IStatus): QWord;
1290 function getInputMetadata(status: IStatus): IMessageMetadata;
1291 function getOutputMetadata(status: IStatus): IMessageMetadata;
1292 function execute(status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction;
1293 function openCursor(status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; flags: Cardinal): IResultSet;
1294 procedure setCursorName(status: IStatus; name: PAnsiChar);
1295 procedure free(status: IStatus);
1296 function getFlags(status: IStatus): Cardinal;
1297 end;
1298
1299 IStatementImpl = class(IStatement)
1300 constructor create;
1301
1302 procedure addRef(); virtual; abstract;
1303 function release(): Integer; virtual; abstract;
1304 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); virtual; abstract;
1305 function getType(status: IStatus): Cardinal; virtual; abstract;
1306 function getPlan(status: IStatus; detailed: Boolean): PAnsiChar; virtual; abstract;
1307 function getAffectedRecords(status: IStatus): QWord; virtual; abstract;
1308 function getInputMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
1309 function getOutputMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
1310 function execute(status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction; virtual; abstract;
1311 function openCursor(status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; flags: Cardinal): IResultSet; virtual; abstract;
1312 procedure setCursorName(status: IStatus; name: PAnsiChar); virtual; abstract;
1313 procedure free(status: IStatus); virtual; abstract;
1314 function getFlags(status: IStatus): Cardinal; virtual; abstract;
1315 end;
1316
1317 RequestVTable = class(ReferenceCountedVTable)
1318 receive: IRequest_receivePtr;
1319 send: IRequest_sendPtr;
1320 getInfo: IRequest_getInfoPtr;
1321 start: IRequest_startPtr;
1322 startAndSend: IRequest_startAndSendPtr;
1323 unwind: IRequest_unwindPtr;
1324 free: IRequest_freePtr;
1325 end;
1326
1327 IRequest = class(IReferenceCounted)
1328 const VERSION = 9;
1329
1330 procedure receive(status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr);
1331 procedure send(status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr);
1332 procedure getInfo(status: IStatus; level: Integer; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
1333 procedure start(status: IStatus; tra: ITransaction; level: Integer);
1334 procedure startAndSend(status: IStatus; tra: ITransaction; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr);
1335 procedure unwind(status: IStatus; level: Integer);
1336 procedure free(status: IStatus);
1337 end;
1338
1339 IRequestImpl = class(IRequest)
1340 constructor create;
1341
1342 procedure addRef(); virtual; abstract;
1343 function release(): Integer; virtual; abstract;
1344 procedure receive(status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); virtual; abstract;
1345 procedure send(status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); virtual; abstract;
1346 procedure getInfo(status: IStatus; level: Integer; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); virtual; abstract;
1347 procedure start(status: IStatus; tra: ITransaction; level: Integer); virtual; abstract;
1348 procedure startAndSend(status: IStatus; tra: ITransaction; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); virtual; abstract;
1349 procedure unwind(status: IStatus; level: Integer); virtual; abstract;
1350 procedure free(status: IStatus); virtual; abstract;
1351 end;
1352
1353 EventsVTable = class(ReferenceCountedVTable)
1354 cancel: IEvents_cancelPtr;
1355 end;
1356
1357 IEvents = class(IReferenceCounted)
1358 const VERSION = 3;
1359
1360 procedure cancel(status: IStatus);
1361 end;
1362
1363 IEventsImpl = class(IEvents)
1364 constructor create;
1365
1366 procedure addRef(); virtual; abstract;
1367 function release(): Integer; virtual; abstract;
1368 procedure cancel(status: IStatus); virtual; abstract;
1369 end;
1370
1371 AttachmentVTable = class(ReferenceCountedVTable)
1372 getInfo: IAttachment_getInfoPtr;
1373 startTransaction: IAttachment_startTransactionPtr;
1374 reconnectTransaction: IAttachment_reconnectTransactionPtr;
1375 compileRequest: IAttachment_compileRequestPtr;
1376 transactRequest: IAttachment_transactRequestPtr;
1377 createBlob: IAttachment_createBlobPtr;
1378 openBlob: IAttachment_openBlobPtr;
1379 getSlice: IAttachment_getSlicePtr;
1380 putSlice: IAttachment_putSlicePtr;
1381 executeDyn: IAttachment_executeDynPtr;
1382 prepare: IAttachment_preparePtr;
1383 execute: IAttachment_executePtr;
1384 openCursor: IAttachment_openCursorPtr;
1385 queEvents: IAttachment_queEventsPtr;
1386 cancelOperation: IAttachment_cancelOperationPtr;
1387 ping: IAttachment_pingPtr;
1388 detach: IAttachment_detachPtr;
1389 dropDatabase: IAttachment_dropDatabasePtr;
1390 end;
1391
1392 IAttachment = class(IReferenceCounted)
1393 const VERSION = 20;
1394
1395 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
1396 function startTransaction(status: IStatus; tpbLength: Cardinal; tpb: BytePtr): ITransaction;
1397 function reconnectTransaction(status: IStatus; length: Cardinal; id: BytePtr): ITransaction;
1398 function compileRequest(status: IStatus; blrLength: Cardinal; blr: BytePtr): IRequest;
1399 procedure transactRequest(status: IStatus; transaction: ITransaction; blrLength: Cardinal; blr: BytePtr; inMsgLength: Cardinal; inMsg: BytePtr; outMsgLength: Cardinal; outMsg: BytePtr);
1400 function createBlob(status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob;
1401 function openBlob(status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob;
1402 function getSlice(status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr): Integer;
1403 procedure putSlice(status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr);
1404 procedure executeDyn(status: IStatus; transaction: ITransaction; length: Cardinal; dyn: BytePtr);
1405 function prepare(status: IStatus; tra: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; flags: Cardinal): IStatement;
1406 function execute(status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction;
1407 function openCursor(status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; cursorName: PAnsiChar; cursorFlags: Cardinal): IResultSet;
1408 function queEvents(status: IStatus; callback: IEventCallback; length: Cardinal; events: BytePtr): IEvents;
1409 procedure cancelOperation(status: IStatus; option: Integer);
1410 procedure ping(status: IStatus);
1411 procedure detach(status: IStatus);
1412 procedure dropDatabase(status: IStatus);
1413 end;
1414
1415 IAttachmentImpl = class(IAttachment)
1416 constructor create;
1417
1418 procedure addRef(); virtual; abstract;
1419 function release(): Integer; virtual; abstract;
1420 procedure getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); virtual; abstract;
1421 function startTransaction(status: IStatus; tpbLength: Cardinal; tpb: BytePtr): ITransaction; virtual; abstract;
1422 function reconnectTransaction(status: IStatus; length: Cardinal; id: BytePtr): ITransaction; virtual; abstract;
1423 function compileRequest(status: IStatus; blrLength: Cardinal; blr: BytePtr): IRequest; virtual; abstract;
1424 procedure transactRequest(status: IStatus; transaction: ITransaction; blrLength: Cardinal; blr: BytePtr; inMsgLength: Cardinal; inMsg: BytePtr; outMsgLength: Cardinal; outMsg: BytePtr); virtual; abstract;
1425 function createBlob(status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob; virtual; abstract;
1426 function openBlob(status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob; virtual; abstract;
1427 function getSlice(status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr): Integer; virtual; abstract;
1428 procedure putSlice(status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr); virtual; abstract;
1429 procedure executeDyn(status: IStatus; transaction: ITransaction; length: Cardinal; dyn: BytePtr); virtual; abstract;
1430 function prepare(status: IStatus; tra: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; flags: Cardinal): IStatement; virtual; abstract;
1431 function execute(status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction; virtual; abstract;
1432 function openCursor(status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; cursorName: PAnsiChar; cursorFlags: Cardinal): IResultSet; virtual; abstract;
1433 function queEvents(status: IStatus; callback: IEventCallback; length: Cardinal; events: BytePtr): IEvents; virtual; abstract;
1434 procedure cancelOperation(status: IStatus; option: Integer); virtual; abstract;
1435 procedure ping(status: IStatus); virtual; abstract;
1436 procedure detach(status: IStatus); virtual; abstract;
1437 procedure dropDatabase(status: IStatus); virtual; abstract;
1438 end;
1439
1440 ServiceVTable = class(ReferenceCountedVTable)
1441 detach: IService_detachPtr;
1442 query: IService_queryPtr;
1443 start: IService_startPtr;
1444 end;
1445
1446 IService = class(IReferenceCounted)
1447 const VERSION = 5;
1448
1449 procedure detach(status: IStatus);
1450 procedure query(status: IStatus; sendLength: Cardinal; sendItems: BytePtr; receiveLength: Cardinal; receiveItems: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
1451 procedure start(status: IStatus; spbLength: Cardinal; spb: BytePtr);
1452 end;
1453
1454 IServiceImpl = class(IService)
1455 constructor create;
1456
1457 procedure addRef(); virtual; abstract;
1458 function release(): Integer; virtual; abstract;
1459 procedure detach(status: IStatus); virtual; abstract;
1460 procedure query(status: IStatus; sendLength: Cardinal; sendItems: BytePtr; receiveLength: Cardinal; receiveItems: BytePtr; bufferLength: Cardinal; buffer: BytePtr); virtual; abstract;
1461 procedure start(status: IStatus; spbLength: Cardinal; spb: BytePtr); virtual; abstract;
1462 end;
1463
1464 ProviderVTable = class(PluginBaseVTable)
1465 attachDatabase: IProvider_attachDatabasePtr;
1466 createDatabase: IProvider_createDatabasePtr;
1467 attachServiceManager: IProvider_attachServiceManagerPtr;
1468 shutdown: IProvider_shutdownPtr;
1469 setDbCryptCallback: IProvider_setDbCryptCallbackPtr;
1470 end;
1471
1472 IProvider = class(IPluginBase)
1473 const VERSION = 9;
1474
1475 function attachDatabase(status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment;
1476 function createDatabase(status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment;
1477 function attachServiceManager(status: IStatus; service: PAnsiChar; spbLength: Cardinal; spb: BytePtr): IService;
1478 procedure shutdown(status: IStatus; timeout: Cardinal; reason: Integer);
1479 procedure setDbCryptCallback(status: IStatus; cryptCallback: ICryptKeyCallback);
1480 end;
1481
1482 IProviderImpl = class(IProvider)
1483 constructor create;
1484
1485 procedure addRef(); virtual; abstract;
1486 function release(): Integer; virtual; abstract;
1487 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1488 function getOwner(): IReferenceCounted; virtual; abstract;
1489 function attachDatabase(status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment; virtual; abstract;
1490 function createDatabase(status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment; virtual; abstract;
1491 function attachServiceManager(status: IStatus; service: PAnsiChar; spbLength: Cardinal; spb: BytePtr): IService; virtual; abstract;
1492 procedure shutdown(status: IStatus; timeout: Cardinal; reason: Integer); virtual; abstract;
1493 procedure setDbCryptCallback(status: IStatus; cryptCallback: ICryptKeyCallback); virtual; abstract;
1494 end;
1495
1496 DtcStartVTable = class(DisposableVTable)
1497 addAttachment: IDtcStart_addAttachmentPtr;
1498 addWithTpb: IDtcStart_addWithTpbPtr;
1499 start: IDtcStart_startPtr;
1500 end;
1501
1502 IDtcStart = class(IDisposable)
1503 const VERSION = 4;
1504
1505 procedure addAttachment(status: IStatus; att: IAttachment);
1506 procedure addWithTpb(status: IStatus; att: IAttachment; length: Cardinal; tpb: BytePtr);
1507 function start(status: IStatus): ITransaction;
1508 end;
1509
1510 IDtcStartImpl = class(IDtcStart)
1511 constructor create;
1512
1513 procedure dispose(); virtual; abstract;
1514 procedure addAttachment(status: IStatus; att: IAttachment); virtual; abstract;
1515 procedure addWithTpb(status: IStatus; att: IAttachment; length: Cardinal; tpb: BytePtr); virtual; abstract;
1516 function start(status: IStatus): ITransaction; virtual; abstract;
1517 end;
1518
1519 DtcVTable = class(VersionedVTable)
1520 join: IDtc_joinPtr;
1521 startBuilder: IDtc_startBuilderPtr;
1522 end;
1523
1524 IDtc = class(IVersioned)
1525 const VERSION = 2;
1526
1527 function join(status: IStatus; one: ITransaction; two: ITransaction): ITransaction;
1528 function startBuilder(status: IStatus): IDtcStart;
1529 end;
1530
1531 IDtcImpl = class(IDtc)
1532 constructor create;
1533
1534 function join(status: IStatus; one: ITransaction; two: ITransaction): ITransaction; virtual; abstract;
1535 function startBuilder(status: IStatus): IDtcStart; virtual; abstract;
1536 end;
1537
1538 AuthVTable = class(PluginBaseVTable)
1539 end;
1540
1541 IAuth = class(IPluginBase)
1542 const VERSION = 4;
1543 const AUTH_FAILED = Integer(-1);
1544 const AUTH_SUCCESS = Integer(0);
1545 const AUTH_MORE_DATA = Integer(1);
1546 const AUTH_CONTINUE = Integer(2);
1547
1548 end;
1549
1550 IAuthImpl = class(IAuth)
1551 constructor create;
1552
1553 procedure addRef(); virtual; abstract;
1554 function release(): Integer; virtual; abstract;
1555 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1556 function getOwner(): IReferenceCounted; virtual; abstract;
1557 end;
1558
1559 WriterVTable = class(VersionedVTable)
1560 reset: IWriter_resetPtr;
1561 add: IWriter_addPtr;
1562 setType: IWriter_setTypePtr;
1563 setDb: IWriter_setDbPtr;
1564 end;
1565
1566 IWriter = class(IVersioned)
1567 const VERSION = 4;
1568
1569 procedure reset();
1570 procedure add(status: IStatus; name: PAnsiChar);
1571 procedure setType(status: IStatus; value: PAnsiChar);
1572 procedure setDb(status: IStatus; value: PAnsiChar);
1573 end;
1574
1575 IWriterImpl = class(IWriter)
1576 constructor create;
1577
1578 procedure reset(); virtual; abstract;
1579 procedure add(status: IStatus; name: PAnsiChar); virtual; abstract;
1580 procedure setType(status: IStatus; value: PAnsiChar); virtual; abstract;
1581 procedure setDb(status: IStatus; value: PAnsiChar); virtual; abstract;
1582 end;
1583
1584 ServerBlockVTable = class(VersionedVTable)
1585 getLogin: IServerBlock_getLoginPtr;
1586 getData: IServerBlock_getDataPtr;
1587 putData: IServerBlock_putDataPtr;
1588 newKey: IServerBlock_newKeyPtr;
1589 end;
1590
1591 IServerBlock = class(IVersioned)
1592 const VERSION = 4;
1593
1594 function getLogin(): PAnsiChar;
1595 function getData(length: CardinalPtr): BytePtr;
1596 procedure putData(status: IStatus; length: Cardinal; data: Pointer);
1597 function newKey(status: IStatus): ICryptKey;
1598 end;
1599
1600 IServerBlockImpl = class(IServerBlock)
1601 constructor create;
1602
1603 function getLogin(): PAnsiChar; virtual; abstract;
1604 function getData(length: CardinalPtr): BytePtr; virtual; abstract;
1605 procedure putData(status: IStatus; length: Cardinal; data: Pointer); virtual; abstract;
1606 function newKey(status: IStatus): ICryptKey; virtual; abstract;
1607 end;
1608
1609 ClientBlockVTable = class(ReferenceCountedVTable)
1610 getLogin: IClientBlock_getLoginPtr;
1611 getPassword: IClientBlock_getPasswordPtr;
1612 getData: IClientBlock_getDataPtr;
1613 putData: IClientBlock_putDataPtr;
1614 newKey: IClientBlock_newKeyPtr;
1615 end;
1616
1617 IClientBlock = class(IReferenceCounted)
1618 const VERSION = 7;
1619
1620 function getLogin(): PAnsiChar;
1621 function getPassword(): PAnsiChar;
1622 function getData(length: CardinalPtr): BytePtr;
1623 procedure putData(status: IStatus; length: Cardinal; data: Pointer);
1624 function newKey(status: IStatus): ICryptKey;
1625 end;
1626
1627 IClientBlockImpl = class(IClientBlock)
1628 constructor create;
1629
1630 procedure addRef(); virtual; abstract;
1631 function release(): Integer; virtual; abstract;
1632 function getLogin(): PAnsiChar; virtual; abstract;
1633 function getPassword(): PAnsiChar; virtual; abstract;
1634 function getData(length: CardinalPtr): BytePtr; virtual; abstract;
1635 procedure putData(status: IStatus; length: Cardinal; data: Pointer); virtual; abstract;
1636 function newKey(status: IStatus): ICryptKey; virtual; abstract;
1637 end;
1638
1639 ServerVTable = class(AuthVTable)
1640 authenticate: IServer_authenticatePtr;
1641 end;
1642
1643 IServer = class(IAuth)
1644 const VERSION = 5;
1645
1646 function authenticate(status: IStatus; sBlock: IServerBlock; writerInterface: IWriter): Integer;
1647 end;
1648
1649 IServerImpl = class(IServer)
1650 constructor create;
1651
1652 procedure addRef(); virtual; abstract;
1653 function release(): Integer; virtual; abstract;
1654 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1655 function getOwner(): IReferenceCounted; virtual; abstract;
1656 function authenticate(status: IStatus; sBlock: IServerBlock; writerInterface: IWriter): Integer; virtual; abstract;
1657 end;
1658
1659 ClientVTable = class(AuthVTable)
1660 authenticate: IClient_authenticatePtr;
1661 end;
1662
1663 IClient = class(IAuth)
1664 const VERSION = 5;
1665
1666 function authenticate(status: IStatus; cBlock: IClientBlock): Integer;
1667 end;
1668
1669 IClientImpl = class(IClient)
1670 constructor create;
1671
1672 procedure addRef(); virtual; abstract;
1673 function release(): Integer; virtual; abstract;
1674 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1675 function getOwner(): IReferenceCounted; virtual; abstract;
1676 function authenticate(status: IStatus; cBlock: IClientBlock): Integer; virtual; abstract;
1677 end;
1678
1679 UserFieldVTable = class(VersionedVTable)
1680 entered: IUserField_enteredPtr;
1681 specified: IUserField_specifiedPtr;
1682 setEntered: IUserField_setEnteredPtr;
1683 end;
1684
1685 IUserField = class(IVersioned)
1686 const VERSION = 3;
1687
1688 function entered(): Integer;
1689 function specified(): Integer;
1690 procedure setEntered(status: IStatus; newValue: Integer);
1691 end;
1692
1693 IUserFieldImpl = class(IUserField)
1694 constructor create;
1695
1696 function entered(): Integer; virtual; abstract;
1697 function specified(): Integer; virtual; abstract;
1698 procedure setEntered(status: IStatus; newValue: Integer); virtual; abstract;
1699 end;
1700
1701 CharUserFieldVTable = class(UserFieldVTable)
1702 get: ICharUserField_getPtr;
1703 set_: ICharUserField_set_Ptr;
1704 end;
1705
1706 ICharUserField = class(IUserField)
1707 const VERSION = 5;
1708
1709 function get(): PAnsiChar;
1710 procedure set_(status: IStatus; newValue: PAnsiChar);
1711 end;
1712
1713 ICharUserFieldImpl = class(ICharUserField)
1714 constructor create;
1715
1716 function entered(): Integer; virtual; abstract;
1717 function specified(): Integer; virtual; abstract;
1718 procedure setEntered(status: IStatus; newValue: Integer); virtual; abstract;
1719 function get(): PAnsiChar; virtual; abstract;
1720 procedure set_(status: IStatus; newValue: PAnsiChar); virtual; abstract;
1721 end;
1722
1723 IntUserFieldVTable = class(UserFieldVTable)
1724 get: IIntUserField_getPtr;
1725 set_: IIntUserField_set_Ptr;
1726 end;
1727
1728 IIntUserField = class(IUserField)
1729 const VERSION = 5;
1730
1731 function get(): Integer;
1732 procedure set_(status: IStatus; newValue: Integer);
1733 end;
1734
1735 IIntUserFieldImpl = class(IIntUserField)
1736 constructor create;
1737
1738 function entered(): Integer; virtual; abstract;
1739 function specified(): Integer; virtual; abstract;
1740 procedure setEntered(status: IStatus; newValue: Integer); virtual; abstract;
1741 function get(): Integer; virtual; abstract;
1742 procedure set_(status: IStatus; newValue: Integer); virtual; abstract;
1743 end;
1744
1745 UserVTable = class(VersionedVTable)
1746 operation: IUser_operationPtr;
1747 userName: IUser_userNamePtr;
1748 password: IUser_passwordPtr;
1749 firstName: IUser_firstNamePtr;
1750 lastName: IUser_lastNamePtr;
1751 middleName: IUser_middleNamePtr;
1752 comment: IUser_commentPtr;
1753 attributes: IUser_attributesPtr;
1754 active: IUser_activePtr;
1755 admin: IUser_adminPtr;
1756 clear: IUser_clearPtr;
1757 end;
1758
1759 IUser = class(IVersioned)
1760 const VERSION = 11;
1761 const OP_USER_ADD = Cardinal(1);
1762 const OP_USER_MODIFY = Cardinal(2);
1763 const OP_USER_DELETE = Cardinal(3);
1764 const OP_USER_DISPLAY = Cardinal(4);
1765 const OP_USER_SET_MAP = Cardinal(5);
1766 const OP_USER_DROP_MAP = Cardinal(6);
1767
1768 function operation(): Cardinal;
1769 function userName(): ICharUserField;
1770 function password(): ICharUserField;
1771 function firstName(): ICharUserField;
1772 function lastName(): ICharUserField;
1773 function middleName(): ICharUserField;
1774 function comment(): ICharUserField;
1775 function attributes(): ICharUserField;
1776 function active(): IIntUserField;
1777 function admin(): IIntUserField;
1778 procedure clear(status: IStatus);
1779 end;
1780
1781 IUserImpl = class(IUser)
1782 constructor create;
1783
1784 function operation(): Cardinal; virtual; abstract;
1785 function userName(): ICharUserField; virtual; abstract;
1786 function password(): ICharUserField; virtual; abstract;
1787 function firstName(): ICharUserField; virtual; abstract;
1788 function lastName(): ICharUserField; virtual; abstract;
1789 function middleName(): ICharUserField; virtual; abstract;
1790 function comment(): ICharUserField; virtual; abstract;
1791 function attributes(): ICharUserField; virtual; abstract;
1792 function active(): IIntUserField; virtual; abstract;
1793 function admin(): IIntUserField; virtual; abstract;
1794 procedure clear(status: IStatus); virtual; abstract;
1795 end;
1796
1797 ListUsersVTable = class(VersionedVTable)
1798 list: IListUsers_listPtr;
1799 end;
1800
1801 IListUsers = class(IVersioned)
1802 const VERSION = 1;
1803
1804 procedure list(status: IStatus; user: IUser);
1805 end;
1806
1807 IListUsersImpl = class(IListUsers)
1808 constructor create;
1809
1810 procedure list(status: IStatus; user: IUser); virtual; abstract;
1811 end;
1812
1813 LogonInfoVTable = class(VersionedVTable)
1814 name: ILogonInfo_namePtr;
1815 role: ILogonInfo_rolePtr;
1816 networkProtocol: ILogonInfo_networkProtocolPtr;
1817 remoteAddress: ILogonInfo_remoteAddressPtr;
1818 authBlock: ILogonInfo_authBlockPtr;
1819 end;
1820
1821 ILogonInfo = class(IVersioned)
1822 const VERSION = 5;
1823
1824 function name(): PAnsiChar;
1825 function role(): PAnsiChar;
1826 function networkProtocol(): PAnsiChar;
1827 function remoteAddress(): PAnsiChar;
1828 function authBlock(length: CardinalPtr): BytePtr;
1829 end;
1830
1831 ILogonInfoImpl = class(ILogonInfo)
1832 constructor create;
1833
1834 function name(): PAnsiChar; virtual; abstract;
1835 function role(): PAnsiChar; virtual; abstract;
1836 function networkProtocol(): PAnsiChar; virtual; abstract;
1837 function remoteAddress(): PAnsiChar; virtual; abstract;
1838 function authBlock(length: CardinalPtr): BytePtr; virtual; abstract;
1839 end;
1840
1841 ManagementVTable = class(PluginBaseVTable)
1842 start: IManagement_startPtr;
1843 execute: IManagement_executePtr;
1844 commit: IManagement_commitPtr;
1845 rollback: IManagement_rollbackPtr;
1846 end;
1847
1848 IManagement = class(IPluginBase)
1849 const VERSION = 8;
1850
1851 procedure start(status: IStatus; logonInfo: ILogonInfo);
1852 function execute(status: IStatus; user: IUser; callback: IListUsers): Integer;
1853 procedure commit(status: IStatus);
1854 procedure rollback(status: IStatus);
1855 end;
1856
1857 IManagementImpl = class(IManagement)
1858 constructor create;
1859
1860 procedure addRef(); virtual; abstract;
1861 function release(): Integer; virtual; abstract;
1862 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1863 function getOwner(): IReferenceCounted; virtual; abstract;
1864 procedure start(status: IStatus; logonInfo: ILogonInfo); virtual; abstract;
1865 function execute(status: IStatus; user: IUser; callback: IListUsers): Integer; virtual; abstract;
1866 procedure commit(status: IStatus); virtual; abstract;
1867 procedure rollback(status: IStatus); virtual; abstract;
1868 end;
1869
1870 WireCryptPluginVTable = class(PluginBaseVTable)
1871 getKnownTypes: IWireCryptPlugin_getKnownTypesPtr;
1872 setKey: IWireCryptPlugin_setKeyPtr;
1873 encrypt: IWireCryptPlugin_encryptPtr;
1874 decrypt: IWireCryptPlugin_decryptPtr;
1875 end;
1876
1877 IWireCryptPlugin = class(IPluginBase)
1878 const VERSION = 8;
1879
1880 function getKnownTypes(status: IStatus): PAnsiChar;
1881 procedure setKey(status: IStatus; key: ICryptKey);
1882 procedure encrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
1883 procedure decrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
1884 end;
1885
1886 IWireCryptPluginImpl = class(IWireCryptPlugin)
1887 constructor create;
1888
1889 procedure addRef(); virtual; abstract;
1890 function release(): Integer; virtual; abstract;
1891 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1892 function getOwner(): IReferenceCounted; virtual; abstract;
1893 function getKnownTypes(status: IStatus): PAnsiChar; virtual; abstract;
1894 procedure setKey(status: IStatus; key: ICryptKey); virtual; abstract;
1895 procedure encrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); virtual; abstract;
1896 procedure decrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); virtual; abstract;
1897 end;
1898
1899 CryptKeyCallbackVTable = class(VersionedVTable)
1900 callback: ICryptKeyCallback_callbackPtr;
1901 end;
1902
1903 ICryptKeyCallback = class(IVersioned)
1904 const VERSION = 1;
1905
1906 function callback(dataLength: Cardinal; data: Pointer; bufferLength: Cardinal; buffer: Pointer): Cardinal;
1907 end;
1908
1909 ICryptKeyCallbackImpl = class(ICryptKeyCallback)
1910 constructor create;
1911
1912 function callback(dataLength: Cardinal; data: Pointer; bufferLength: Cardinal; buffer: Pointer): Cardinal; virtual; abstract;
1913 end;
1914
1915 KeyHolderPluginVTable = class(PluginBaseVTable)
1916 keyCallback: IKeyHolderPlugin_keyCallbackPtr;
1917 keyHandle: IKeyHolderPlugin_keyHandlePtr;
1918 end;
1919
1920 IKeyHolderPlugin = class(IPluginBase)
1921 const VERSION = 6;
1922
1923 function keyCallback(status: IStatus; callback: ICryptKeyCallback): Integer;
1924 function keyHandle(status: IStatus; keyName: PAnsiChar): ICryptKeyCallback;
1925 end;
1926
1927 IKeyHolderPluginImpl = class(IKeyHolderPlugin)
1928 constructor create;
1929
1930 procedure addRef(); virtual; abstract;
1931 function release(): Integer; virtual; abstract;
1932 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1933 function getOwner(): IReferenceCounted; virtual; abstract;
1934 function keyCallback(status: IStatus; callback: ICryptKeyCallback): Integer; virtual; abstract;
1935 function keyHandle(status: IStatus; keyName: PAnsiChar): ICryptKeyCallback; virtual; abstract;
1936 end;
1937
1938 DbCryptPluginVTable = class(PluginBaseVTable)
1939 setKey: IDbCryptPlugin_setKeyPtr;
1940 encrypt: IDbCryptPlugin_encryptPtr;
1941 decrypt: IDbCryptPlugin_decryptPtr;
1942 end;
1943
1944 IDbCryptPlugin = class(IPluginBase)
1945 const VERSION = 7;
1946
1947 procedure setKey(status: IStatus; length: Cardinal; sources: IKeyHolderPluginPtr; keyName: PAnsiChar);
1948 procedure encrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
1949 procedure decrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
1950 end;
1951
1952 IDbCryptPluginImpl = class(IDbCryptPlugin)
1953 constructor create;
1954
1955 procedure addRef(); virtual; abstract;
1956 function release(): Integer; virtual; abstract;
1957 procedure setOwner(r: IReferenceCounted); virtual; abstract;
1958 function getOwner(): IReferenceCounted; virtual; abstract;
1959 procedure setKey(status: IStatus; length: Cardinal; sources: IKeyHolderPluginPtr; keyName: PAnsiChar); virtual; abstract;
1960 procedure encrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); virtual; abstract;
1961 procedure decrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); virtual; abstract;
1962 end;
1963
1964 ExternalContextVTable = class(VersionedVTable)
1965 getMaster: IExternalContext_getMasterPtr;
1966 getEngine: IExternalContext_getEnginePtr;
1967 getAttachment: IExternalContext_getAttachmentPtr;
1968 getTransaction: IExternalContext_getTransactionPtr;
1969 getUserName: IExternalContext_getUserNamePtr;
1970 getDatabaseName: IExternalContext_getDatabaseNamePtr;
1971 getClientCharSet: IExternalContext_getClientCharSetPtr;
1972 obtainInfoCode: IExternalContext_obtainInfoCodePtr;
1973 getInfo: IExternalContext_getInfoPtr;
1974 setInfo: IExternalContext_setInfoPtr;
1975 end;
1976
1977 IExternalContext = class(IVersioned)
1978 const VERSION = 10;
1979
1980 function getMaster(): IMaster;
1981 function getEngine(status: IStatus): IExternalEngine;
1982 function getAttachment(status: IStatus): IAttachment;
1983 function getTransaction(status: IStatus): ITransaction;
1984 function getUserName(): PAnsiChar;
1985 function getDatabaseName(): PAnsiChar;
1986 function getClientCharSet(): PAnsiChar;
1987 function obtainInfoCode(): Integer;
1988 function getInfo(code: Integer): Pointer;
1989 function setInfo(code: Integer; value: Pointer): Pointer;
1990 end;
1991
1992 IExternalContextImpl = class(IExternalContext)
1993 constructor create;
1994
1995 function getMaster(): IMaster; virtual; abstract;
1996 function getEngine(status: IStatus): IExternalEngine; virtual; abstract;
1997 function getAttachment(status: IStatus): IAttachment; virtual; abstract;
1998 function getTransaction(status: IStatus): ITransaction; virtual; abstract;
1999 function getUserName(): PAnsiChar; virtual; abstract;
2000 function getDatabaseName(): PAnsiChar; virtual; abstract;
2001 function getClientCharSet(): PAnsiChar; virtual; abstract;
2002 function obtainInfoCode(): Integer; virtual; abstract;
2003 function getInfo(code: Integer): Pointer; virtual; abstract;
2004 function setInfo(code: Integer; value: Pointer): Pointer; virtual; abstract;
2005 end;
2006
2007 ExternalResultSetVTable = class(DisposableVTable)
2008 fetch: IExternalResultSet_fetchPtr;
2009 end;
2010
2011 IExternalResultSet = class(IDisposable)
2012 const VERSION = 2;
2013
2014 function fetch(status: IStatus): Boolean;
2015 end;
2016
2017 IExternalResultSetImpl = class(IExternalResultSet)
2018 constructor create;
2019
2020 procedure dispose(); virtual; abstract;
2021 function fetch(status: IStatus): Boolean; virtual; abstract;
2022 end;
2023
2024 ExternalFunctionVTable = class(DisposableVTable)
2025 getCharSet: IExternalFunction_getCharSetPtr;
2026 execute: IExternalFunction_executePtr;
2027 end;
2028
2029 IExternalFunction = class(IDisposable)
2030 const VERSION = 3;
2031
2032 procedure getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal);
2033 procedure execute(status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer);
2034 end;
2035
2036 IExternalFunctionImpl = class(IExternalFunction)
2037 constructor create;
2038
2039 procedure dispose(); virtual; abstract;
2040 procedure getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); virtual; abstract;
2041 procedure execute(status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer); virtual; abstract;
2042 end;
2043
2044 ExternalProcedureVTable = class(DisposableVTable)
2045 getCharSet: IExternalProcedure_getCharSetPtr;
2046 open: IExternalProcedure_openPtr;
2047 end;
2048
2049 IExternalProcedure = class(IDisposable)
2050 const VERSION = 3;
2051
2052 procedure getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal);
2053 function open(status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer): IExternalResultSet;
2054 end;
2055
2056 IExternalProcedureImpl = class(IExternalProcedure)
2057 constructor create;
2058
2059 procedure dispose(); virtual; abstract;
2060 procedure getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); virtual; abstract;
2061 function open(status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer): IExternalResultSet; virtual; abstract;
2062 end;
2063
2064 ExternalTriggerVTable = class(DisposableVTable)
2065 getCharSet: IExternalTrigger_getCharSetPtr;
2066 execute: IExternalTrigger_executePtr;
2067 end;
2068
2069 IExternalTrigger = class(IDisposable)
2070 const VERSION = 3;
2071 const TYPE_BEFORE = Cardinal(1);
2072 const TYPE_AFTER = Cardinal(2);
2073 const TYPE_DATABASE = Cardinal(3);
2074 const ACTION_INSERT = Cardinal(1);
2075 const ACTION_UPDATE = Cardinal(2);
2076 const ACTION_DELETE = Cardinal(3);
2077 const ACTION_CONNECT = Cardinal(4);
2078 const ACTION_DISCONNECT = Cardinal(5);
2079 const ACTION_TRANS_START = Cardinal(6);
2080 const ACTION_TRANS_COMMIT = Cardinal(7);
2081 const ACTION_TRANS_ROLLBACK = Cardinal(8);
2082 const ACTION_DDL = Cardinal(9);
2083
2084 procedure getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal);
2085 procedure execute(status: IStatus; context: IExternalContext; action: Cardinal; oldMsg: Pointer; newMsg: Pointer);
2086 end;
2087
2088 IExternalTriggerImpl = class(IExternalTrigger)
2089 constructor create;
2090
2091 procedure dispose(); virtual; abstract;
2092 procedure getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); virtual; abstract;
2093 procedure execute(status: IStatus; context: IExternalContext; action: Cardinal; oldMsg: Pointer; newMsg: Pointer); virtual; abstract;
2094 end;
2095
2096 RoutineMetadataVTable = class(VersionedVTable)
2097 getPackage: IRoutineMetadata_getPackagePtr;
2098 getName: IRoutineMetadata_getNamePtr;
2099 getEntryPoint: IRoutineMetadata_getEntryPointPtr;
2100 getBody: IRoutineMetadata_getBodyPtr;
2101 getInputMetadata: IRoutineMetadata_getInputMetadataPtr;
2102 getOutputMetadata: IRoutineMetadata_getOutputMetadataPtr;
2103 getTriggerMetadata: IRoutineMetadata_getTriggerMetadataPtr;
2104 getTriggerTable: IRoutineMetadata_getTriggerTablePtr;
2105 getTriggerType: IRoutineMetadata_getTriggerTypePtr;
2106 end;
2107
2108 IRoutineMetadata = class(IVersioned)
2109 const VERSION = 9;
2110
2111 function getPackage(status: IStatus): PAnsiChar;
2112 function getName(status: IStatus): PAnsiChar;
2113 function getEntryPoint(status: IStatus): PAnsiChar;
2114 function getBody(status: IStatus): PAnsiChar;
2115 function getInputMetadata(status: IStatus): IMessageMetadata;
2116 function getOutputMetadata(status: IStatus): IMessageMetadata;
2117 function getTriggerMetadata(status: IStatus): IMessageMetadata;
2118 function getTriggerTable(status: IStatus): PAnsiChar;
2119 function getTriggerType(status: IStatus): Cardinal;
2120 end;
2121
2122 IRoutineMetadataImpl = class(IRoutineMetadata)
2123 constructor create;
2124
2125 function getPackage(status: IStatus): PAnsiChar; virtual; abstract;
2126 function getName(status: IStatus): PAnsiChar; virtual; abstract;
2127 function getEntryPoint(status: IStatus): PAnsiChar; virtual; abstract;
2128 function getBody(status: IStatus): PAnsiChar; virtual; abstract;
2129 function getInputMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
2130 function getOutputMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
2131 function getTriggerMetadata(status: IStatus): IMessageMetadata; virtual; abstract;
2132 function getTriggerTable(status: IStatus): PAnsiChar; virtual; abstract;
2133 function getTriggerType(status: IStatus): Cardinal; virtual; abstract;
2134 end;
2135
2136 ExternalEngineVTable = class(PluginBaseVTable)
2137 open: IExternalEngine_openPtr;
2138 openAttachment: IExternalEngine_openAttachmentPtr;
2139 closeAttachment: IExternalEngine_closeAttachmentPtr;
2140 makeFunction: IExternalEngine_makeFunctionPtr;
2141 makeProcedure: IExternalEngine_makeProcedurePtr;
2142 makeTrigger: IExternalEngine_makeTriggerPtr;
2143 end;
2144
2145 IExternalEngine = class(IPluginBase)
2146 const VERSION = 10;
2147
2148 procedure open(status: IStatus; context: IExternalContext; charSet: PAnsiChar; charSetSize: Cardinal);
2149 procedure openAttachment(status: IStatus; context: IExternalContext);
2150 procedure closeAttachment(status: IStatus; context: IExternalContext);
2151 function makeFunction(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalFunction;
2152 function makeProcedure(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalProcedure;
2153 function makeTrigger(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder): IExternalTrigger;
2154 end;
2155
2156 IExternalEngineImpl = class(IExternalEngine)
2157 constructor create;
2158
2159 procedure addRef(); virtual; abstract;
2160 function release(): Integer; virtual; abstract;
2161 procedure setOwner(r: IReferenceCounted); virtual; abstract;
2162 function getOwner(): IReferenceCounted; virtual; abstract;
2163 procedure open(status: IStatus; context: IExternalContext; charSet: PAnsiChar; charSetSize: Cardinal); virtual; abstract;
2164 procedure openAttachment(status: IStatus; context: IExternalContext); virtual; abstract;
2165 procedure closeAttachment(status: IStatus; context: IExternalContext); virtual; abstract;
2166 function makeFunction(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalFunction; virtual; abstract;
2167 function makeProcedure(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalProcedure; virtual; abstract;
2168 function makeTrigger(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder): IExternalTrigger; virtual; abstract;
2169 end;
2170
2171 TimerVTable = class(ReferenceCountedVTable)
2172 handler: ITimer_handlerPtr;
2173 end;
2174
2175 ITimer = class(IReferenceCounted)
2176 const VERSION = 3;
2177
2178 procedure handler();
2179 end;
2180
2181 ITimerImpl = class(ITimer)
2182 constructor create;
2183
2184 procedure addRef(); virtual; abstract;
2185 function release(): Integer; virtual; abstract;
2186 procedure handler(); virtual; abstract;
2187 end;
2188
2189 TimerControlVTable = class(VersionedVTable)
2190 start: ITimerControl_startPtr;
2191 stop: ITimerControl_stopPtr;
2192 end;
2193
2194 ITimerControl = class(IVersioned)
2195 const VERSION = 2;
2196
2197 procedure start(status: IStatus; timer: ITimer; microSeconds: QWord);
2198 procedure stop(status: IStatus; timer: ITimer);
2199 end;
2200
2201 ITimerControlImpl = class(ITimerControl)
2202 constructor create;
2203
2204 procedure start(status: IStatus; timer: ITimer; microSeconds: QWord); virtual; abstract;
2205 procedure stop(status: IStatus; timer: ITimer); virtual; abstract;
2206 end;
2207
2208 VersionCallbackVTable = class(VersionedVTable)
2209 callback: IVersionCallback_callbackPtr;
2210 end;
2211
2212 IVersionCallback = class(IVersioned)
2213 const VERSION = 1;
2214
2215 procedure callback(status: IStatus; text: PAnsiChar);
2216 end;
2217
2218 IVersionCallbackImpl = class(IVersionCallback)
2219 constructor create;
2220
2221 procedure callback(status: IStatus; text: PAnsiChar); virtual; abstract;
2222 end;
2223
2224 UtilVTable = class(VersionedVTable)
2225 getFbVersion: IUtil_getFbVersionPtr;
2226 loadBlob: IUtil_loadBlobPtr;
2227 dumpBlob: IUtil_dumpBlobPtr;
2228 getPerfCounters: IUtil_getPerfCountersPtr;
2229 executeCreateDatabase: IUtil_executeCreateDatabasePtr;
2230 decodeDate: IUtil_decodeDatePtr;
2231 decodeTime: IUtil_decodeTimePtr;
2232 encodeDate: IUtil_encodeDatePtr;
2233 encodeTime: IUtil_encodeTimePtr;
2234 formatStatus: IUtil_formatStatusPtr;
2235 getClientVersion: IUtil_getClientVersionPtr;
2236 getXpbBuilder: IUtil_getXpbBuilderPtr;
2237 setOffsets: IUtil_setOffsetsPtr;
2238 end;
2239
2240 IUtil = class(IVersioned)
2241 const VERSION = 13;
2242
2243 procedure getFbVersion(status: IStatus; att: IAttachment; callback: IVersionCallback);
2244 procedure loadBlob(status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean);
2245 procedure dumpBlob(status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean);
2246 procedure getPerfCounters(status: IStatus; att: IAttachment; countersSet: PAnsiChar; counters: Int64Ptr);
2247 function executeCreateDatabase(status: IStatus; stmtLength: Cardinal; creatDBstatement: PAnsiChar; dialect: Cardinal; stmtIsCreateDb: BooleanPtr): IAttachment;
2248 procedure decodeDate(date: ISC_DATE; year: CardinalPtr; month: CardinalPtr; day: CardinalPtr);
2249 procedure decodeTime(time: ISC_TIME; hours: CardinalPtr; minutes: CardinalPtr; seconds: CardinalPtr; fractions: CardinalPtr);
2250 function encodeDate(year: Cardinal; month: Cardinal; day: Cardinal): ISC_DATE;
2251 function encodeTime(hours: Cardinal; minutes: Cardinal; seconds: Cardinal; fractions: Cardinal): ISC_TIME;
2252 function formatStatus(buffer: PAnsiChar; bufferSize: Cardinal; status: IStatus): Cardinal;
2253 function getClientVersion(): Cardinal;
2254 function getXpbBuilder(status: IStatus; kind: Cardinal; buf: BytePtr; len: Cardinal): IXpbBuilder;
2255 function setOffsets(status: IStatus; metadata: IMessageMetadata; callback: IOffsetsCallback): Cardinal;
2256 end;
2257
2258 IUtilImpl = class(IUtil)
2259 constructor create;
2260
2261 procedure getFbVersion(status: IStatus; att: IAttachment; callback: IVersionCallback); virtual; abstract;
2262 procedure loadBlob(status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean); virtual; abstract;
2263 procedure dumpBlob(status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean); virtual; abstract;
2264 procedure getPerfCounters(status: IStatus; att: IAttachment; countersSet: PAnsiChar; counters: Int64Ptr); virtual; abstract;
2265 function executeCreateDatabase(status: IStatus; stmtLength: Cardinal; creatDBstatement: PAnsiChar; dialect: Cardinal; stmtIsCreateDb: BooleanPtr): IAttachment; virtual; abstract;
2266 procedure decodeDate(date: ISC_DATE; year: CardinalPtr; month: CardinalPtr; day: CardinalPtr); virtual; abstract;
2267 procedure decodeTime(time: ISC_TIME; hours: CardinalPtr; minutes: CardinalPtr; seconds: CardinalPtr; fractions: CardinalPtr); virtual; abstract;
2268 function encodeDate(year: Cardinal; month: Cardinal; day: Cardinal): ISC_DATE; virtual; abstract;
2269 function encodeTime(hours: Cardinal; minutes: Cardinal; seconds: Cardinal; fractions: Cardinal): ISC_TIME; virtual; abstract;
2270 function formatStatus(buffer: PAnsiChar; bufferSize: Cardinal; status: IStatus): Cardinal; virtual; abstract;
2271 function getClientVersion(): Cardinal; virtual; abstract;
2272 function getXpbBuilder(status: IStatus; kind: Cardinal; buf: BytePtr; len: Cardinal): IXpbBuilder; virtual; abstract;
2273 function setOffsets(status: IStatus; metadata: IMessageMetadata; callback: IOffsetsCallback): Cardinal; virtual; abstract;
2274 end;
2275
2276 OffsetsCallbackVTable = class(VersionedVTable)
2277 setOffset: IOffsetsCallback_setOffsetPtr;
2278 end;
2279
2280 IOffsetsCallback = class(IVersioned)
2281 const VERSION = 1;
2282
2283 procedure setOffset(status: IStatus; index: Cardinal; offset: Cardinal; nullOffset: Cardinal);
2284 end;
2285
2286 IOffsetsCallbackImpl = class(IOffsetsCallback)
2287 constructor create;
2288
2289 procedure setOffset(status: IStatus; index: Cardinal; offset: Cardinal; nullOffset: Cardinal); virtual; abstract;
2290 end;
2291
2292 XpbBuilderVTable = class(DisposableVTable)
2293 clear: IXpbBuilder_clearPtr;
2294 removeCurrent: IXpbBuilder_removeCurrentPtr;
2295 insertInt: IXpbBuilder_insertIntPtr;
2296 insertBigInt: IXpbBuilder_insertBigIntPtr;
2297 insertBytes: IXpbBuilder_insertBytesPtr;
2298 insertString: IXpbBuilder_insertStringPtr;
2299 insertTag: IXpbBuilder_insertTagPtr;
2300 isEof: IXpbBuilder_isEofPtr;
2301 moveNext: IXpbBuilder_moveNextPtr;
2302 rewind: IXpbBuilder_rewindPtr;
2303 findFirst: IXpbBuilder_findFirstPtr;
2304 findNext: IXpbBuilder_findNextPtr;
2305 getTag: IXpbBuilder_getTagPtr;
2306 getLength: IXpbBuilder_getLengthPtr;
2307 getInt: IXpbBuilder_getIntPtr;
2308 getBigInt: IXpbBuilder_getBigIntPtr;
2309 getString: IXpbBuilder_getStringPtr;
2310 getBytes: IXpbBuilder_getBytesPtr;
2311 getBufferLength: IXpbBuilder_getBufferLengthPtr;
2312 getBuffer: IXpbBuilder_getBufferPtr;
2313 end;
2314
2315 IXpbBuilder = class(IDisposable)
2316 const VERSION = 21;
2317 const DPB = Cardinal(1);
2318 const SPB_ATTACH = Cardinal(2);
2319 const SPB_START = Cardinal(3);
2320 const TPB = Cardinal(4);
2321
2322 procedure clear(status: IStatus);
2323 procedure removeCurrent(status: IStatus);
2324 procedure insertInt(status: IStatus; tag: Byte; value: Integer);
2325 procedure insertBigInt(status: IStatus; tag: Byte; value: Int64);
2326 procedure insertBytes(status: IStatus; tag: Byte; bytes: Pointer; length: Cardinal);
2327 procedure insertString(status: IStatus; tag: Byte; str: PAnsiChar);
2328 procedure insertTag(status: IStatus; tag: Byte);
2329 function isEof(status: IStatus): Boolean;
2330 procedure moveNext(status: IStatus);
2331 procedure rewind(status: IStatus);
2332 function findFirst(status: IStatus; tag: Byte): Boolean;
2333 function findNext(status: IStatus): Boolean;
2334 function getTag(status: IStatus): Byte;
2335 function getLength(status: IStatus): Cardinal;
2336 function getInt(status: IStatus): Integer;
2337 function getBigInt(status: IStatus): Int64;
2338 function getString(status: IStatus): PAnsiChar;
2339 function getBytes(status: IStatus): BytePtr;
2340 function getBufferLength(status: IStatus): Cardinal;
2341 function getBuffer(status: IStatus): BytePtr;
2342 end;
2343
2344 IXpbBuilderImpl = class(IXpbBuilder)
2345 constructor create;
2346
2347 procedure dispose(); virtual; abstract;
2348 procedure clear(status: IStatus); virtual; abstract;
2349 procedure removeCurrent(status: IStatus); virtual; abstract;
2350 procedure insertInt(status: IStatus; tag: Byte; value: Integer); virtual; abstract;
2351 procedure insertBigInt(status: IStatus; tag: Byte; value: Int64); virtual; abstract;
2352 procedure insertBytes(status: IStatus; tag: Byte; bytes: Pointer; length: Cardinal); virtual; abstract;
2353 procedure insertString(status: IStatus; tag: Byte; str: PAnsiChar); virtual; abstract;
2354 procedure insertTag(status: IStatus; tag: Byte); virtual; abstract;
2355 function isEof(status: IStatus): Boolean; virtual; abstract;
2356 procedure moveNext(status: IStatus); virtual; abstract;
2357 procedure rewind(status: IStatus); virtual; abstract;
2358 function findFirst(status: IStatus; tag: Byte): Boolean; virtual; abstract;
2359 function findNext(status: IStatus): Boolean; virtual; abstract;
2360 function getTag(status: IStatus): Byte; virtual; abstract;
2361 function getLength(status: IStatus): Cardinal; virtual; abstract;
2362 function getInt(status: IStatus): Integer; virtual; abstract;
2363 function getBigInt(status: IStatus): Int64; virtual; abstract;
2364 function getString(status: IStatus): PAnsiChar; virtual; abstract;
2365 function getBytes(status: IStatus): BytePtr; virtual; abstract;
2366 function getBufferLength(status: IStatus): Cardinal; virtual; abstract;
2367 function getBuffer(status: IStatus): BytePtr; virtual; abstract;
2368 end;
2369
2370 TraceConnectionVTable = class(VersionedVTable)
2371 getKind: ITraceConnection_getKindPtr;
2372 getProcessID: ITraceConnection_getProcessIDPtr;
2373 getUserName: ITraceConnection_getUserNamePtr;
2374 getRoleName: ITraceConnection_getRoleNamePtr;
2375 getCharSet: ITraceConnection_getCharSetPtr;
2376 getRemoteProtocol: ITraceConnection_getRemoteProtocolPtr;
2377 getRemoteAddress: ITraceConnection_getRemoteAddressPtr;
2378 getRemoteProcessID: ITraceConnection_getRemoteProcessIDPtr;
2379 getRemoteProcessName: ITraceConnection_getRemoteProcessNamePtr;
2380 end;
2381
2382 ITraceConnection = class(IVersioned)
2383 const VERSION = 9;
2384 const KIND_DATABASE = Cardinal(1);
2385 const KIND_SERVICE = Cardinal(2);
2386
2387 function getKind(): Cardinal;
2388 function getProcessID(): Integer;
2389 function getUserName(): PAnsiChar;
2390 function getRoleName(): PAnsiChar;
2391 function getCharSet(): PAnsiChar;
2392 function getRemoteProtocol(): PAnsiChar;
2393 function getRemoteAddress(): PAnsiChar;
2394 function getRemoteProcessID(): Integer;
2395 function getRemoteProcessName(): PAnsiChar;
2396 end;
2397
2398 ITraceConnectionImpl = class(ITraceConnection)
2399 constructor create;
2400
2401 function getKind(): Cardinal; virtual; abstract;
2402 function getProcessID(): Integer; virtual; abstract;
2403 function getUserName(): PAnsiChar; virtual; abstract;
2404 function getRoleName(): PAnsiChar; virtual; abstract;
2405 function getCharSet(): PAnsiChar; virtual; abstract;
2406 function getRemoteProtocol(): PAnsiChar; virtual; abstract;
2407 function getRemoteAddress(): PAnsiChar; virtual; abstract;
2408 function getRemoteProcessID(): Integer; virtual; abstract;
2409 function getRemoteProcessName(): PAnsiChar; virtual; abstract;
2410 end;
2411
2412 TraceDatabaseConnectionVTable = class(TraceConnectionVTable)
2413 getConnectionID: ITraceDatabaseConnection_getConnectionIDPtr;
2414 getDatabaseName: ITraceDatabaseConnection_getDatabaseNamePtr;
2415 end;
2416
2417 ITraceDatabaseConnection = class(ITraceConnection)
2418 const VERSION = 11;
2419
2420 function getConnectionID(): Int64;
2421 function getDatabaseName(): PAnsiChar;
2422 end;
2423
2424 ITraceDatabaseConnectionImpl = class(ITraceDatabaseConnection)
2425 constructor create;
2426
2427 function getKind(): Cardinal; virtual; abstract;
2428 function getProcessID(): Integer; virtual; abstract;
2429 function getUserName(): PAnsiChar; virtual; abstract;
2430 function getRoleName(): PAnsiChar; virtual; abstract;
2431 function getCharSet(): PAnsiChar; virtual; abstract;
2432 function getRemoteProtocol(): PAnsiChar; virtual; abstract;
2433 function getRemoteAddress(): PAnsiChar; virtual; abstract;
2434 function getRemoteProcessID(): Integer; virtual; abstract;
2435 function getRemoteProcessName(): PAnsiChar; virtual; abstract;
2436 function getConnectionID(): Int64; virtual; abstract;
2437 function getDatabaseName(): PAnsiChar; virtual; abstract;
2438 end;
2439
2440 TraceTransactionVTable = class(VersionedVTable)
2441 getTransactionID: ITraceTransaction_getTransactionIDPtr;
2442 getReadOnly: ITraceTransaction_getReadOnlyPtr;
2443 getWait: ITraceTransaction_getWaitPtr;
2444 getIsolation: ITraceTransaction_getIsolationPtr;
2445 getPerf: ITraceTransaction_getPerfPtr;
2446 end;
2447
2448 ITraceTransaction = class(IVersioned)
2449 const VERSION = 5;
2450 const ISOLATION_CONSISTENCY = Cardinal(1);
2451 const ISOLATION_CONCURRENCY = Cardinal(2);
2452 const ISOLATION_READ_COMMITTED_RECVER = Cardinal(3);
2453 const ISOLATION_READ_COMMITTED_NORECVER = Cardinal(4);
2454
2455 function getTransactionID(): Int64;
2456 function getReadOnly(): Boolean;
2457 function getWait(): Integer;
2458 function getIsolation(): Cardinal;
2459 function getPerf(): PerformanceInfoPtr;
2460 end;
2461
2462 ITraceTransactionImpl = class(ITraceTransaction)
2463 constructor create;
2464
2465 function getTransactionID(): Int64; virtual; abstract;
2466 function getReadOnly(): Boolean; virtual; abstract;
2467 function getWait(): Integer; virtual; abstract;
2468 function getIsolation(): Cardinal; virtual; abstract;
2469 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2470 end;
2471
2472 TraceParamsVTable = class(VersionedVTable)
2473 getCount: ITraceParams_getCountPtr;
2474 getParam: ITraceParams_getParamPtr;
2475 end;
2476
2477 ITraceParams = class(IVersioned)
2478 const VERSION = 2;
2479
2480 function getCount(): Cardinal;
2481 function getParam(idx: Cardinal): dscPtr;
2482 end;
2483
2484 ITraceParamsImpl = class(ITraceParams)
2485 constructor create;
2486
2487 function getCount(): Cardinal; virtual; abstract;
2488 function getParam(idx: Cardinal): dscPtr; virtual; abstract;
2489 end;
2490
2491 TraceStatementVTable = class(VersionedVTable)
2492 getStmtID: ITraceStatement_getStmtIDPtr;
2493 getPerf: ITraceStatement_getPerfPtr;
2494 end;
2495
2496 ITraceStatement = class(IVersioned)
2497 const VERSION = 2;
2498
2499 function getStmtID(): Int64;
2500 function getPerf(): PerformanceInfoPtr;
2501 end;
2502
2503 ITraceStatementImpl = class(ITraceStatement)
2504 constructor create;
2505
2506 function getStmtID(): Int64; virtual; abstract;
2507 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2508 end;
2509
2510 TraceSQLStatementVTable = class(TraceStatementVTable)
2511 getText: ITraceSQLStatement_getTextPtr;
2512 getPlan: ITraceSQLStatement_getPlanPtr;
2513 getInputs: ITraceSQLStatement_getInputsPtr;
2514 getTextUTF8: ITraceSQLStatement_getTextUTF8Ptr;
2515 getExplainedPlan: ITraceSQLStatement_getExplainedPlanPtr;
2516 end;
2517
2518 ITraceSQLStatement = class(ITraceStatement)
2519 const VERSION = 7;
2520
2521 function getText(): PAnsiChar;
2522 function getPlan(): PAnsiChar;
2523 function getInputs(): ITraceParams;
2524 function getTextUTF8(): PAnsiChar;
2525 function getExplainedPlan(): PAnsiChar;
2526 end;
2527
2528 ITraceSQLStatementImpl = class(ITraceSQLStatement)
2529 constructor create;
2530
2531 function getStmtID(): Int64; virtual; abstract;
2532 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2533 function getText(): PAnsiChar; virtual; abstract;
2534 function getPlan(): PAnsiChar; virtual; abstract;
2535 function getInputs(): ITraceParams; virtual; abstract;
2536 function getTextUTF8(): PAnsiChar; virtual; abstract;
2537 function getExplainedPlan(): PAnsiChar; virtual; abstract;
2538 end;
2539
2540 TraceBLRStatementVTable = class(TraceStatementVTable)
2541 getData: ITraceBLRStatement_getDataPtr;
2542 getDataLength: ITraceBLRStatement_getDataLengthPtr;
2543 getText: ITraceBLRStatement_getTextPtr;
2544 end;
2545
2546 ITraceBLRStatement = class(ITraceStatement)
2547 const VERSION = 5;
2548
2549 function getData(): BytePtr;
2550 function getDataLength(): Cardinal;
2551 function getText(): PAnsiChar;
2552 end;
2553
2554 ITraceBLRStatementImpl = class(ITraceBLRStatement)
2555 constructor create;
2556
2557 function getStmtID(): Int64; virtual; abstract;
2558 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2559 function getData(): BytePtr; virtual; abstract;
2560 function getDataLength(): Cardinal; virtual; abstract;
2561 function getText(): PAnsiChar; virtual; abstract;
2562 end;
2563
2564 TraceDYNRequestVTable = class(VersionedVTable)
2565 getData: ITraceDYNRequest_getDataPtr;
2566 getDataLength: ITraceDYNRequest_getDataLengthPtr;
2567 getText: ITraceDYNRequest_getTextPtr;
2568 end;
2569
2570 ITraceDYNRequest = class(IVersioned)
2571 const VERSION = 3;
2572
2573 function getData(): BytePtr;
2574 function getDataLength(): Cardinal;
2575 function getText(): PAnsiChar;
2576 end;
2577
2578 ITraceDYNRequestImpl = class(ITraceDYNRequest)
2579 constructor create;
2580
2581 function getData(): BytePtr; virtual; abstract;
2582 function getDataLength(): Cardinal; virtual; abstract;
2583 function getText(): PAnsiChar; virtual; abstract;
2584 end;
2585
2586 TraceContextVariableVTable = class(VersionedVTable)
2587 getNameSpace: ITraceContextVariable_getNameSpacePtr;
2588 getVarName: ITraceContextVariable_getVarNamePtr;
2589 getVarValue: ITraceContextVariable_getVarValuePtr;
2590 end;
2591
2592 ITraceContextVariable = class(IVersioned)
2593 const VERSION = 3;
2594
2595 function getNameSpace(): PAnsiChar;
2596 function getVarName(): PAnsiChar;
2597 function getVarValue(): PAnsiChar;
2598 end;
2599
2600 ITraceContextVariableImpl = class(ITraceContextVariable)
2601 constructor create;
2602
2603 function getNameSpace(): PAnsiChar; virtual; abstract;
2604 function getVarName(): PAnsiChar; virtual; abstract;
2605 function getVarValue(): PAnsiChar; virtual; abstract;
2606 end;
2607
2608 TraceProcedureVTable = class(VersionedVTable)
2609 getProcName: ITraceProcedure_getProcNamePtr;
2610 getInputs: ITraceProcedure_getInputsPtr;
2611 getPerf: ITraceProcedure_getPerfPtr;
2612 end;
2613
2614 ITraceProcedure = class(IVersioned)
2615 const VERSION = 3;
2616
2617 function getProcName(): PAnsiChar;
2618 function getInputs(): ITraceParams;
2619 function getPerf(): PerformanceInfoPtr;
2620 end;
2621
2622 ITraceProcedureImpl = class(ITraceProcedure)
2623 constructor create;
2624
2625 function getProcName(): PAnsiChar; virtual; abstract;
2626 function getInputs(): ITraceParams; virtual; abstract;
2627 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2628 end;
2629
2630 TraceFunctionVTable = class(VersionedVTable)
2631 getFuncName: ITraceFunction_getFuncNamePtr;
2632 getInputs: ITraceFunction_getInputsPtr;
2633 getResult: ITraceFunction_getResultPtr;
2634 getPerf: ITraceFunction_getPerfPtr;
2635 end;
2636
2637 ITraceFunction = class(IVersioned)
2638 const VERSION = 4;
2639
2640 function getFuncName(): PAnsiChar;
2641 function getInputs(): ITraceParams;
2642 function getResult(): ITraceParams;
2643 function getPerf(): PerformanceInfoPtr;
2644 end;
2645
2646 ITraceFunctionImpl = class(ITraceFunction)
2647 constructor create;
2648
2649 function getFuncName(): PAnsiChar; virtual; abstract;
2650 function getInputs(): ITraceParams; virtual; abstract;
2651 function getResult(): ITraceParams; virtual; abstract;
2652 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2653 end;
2654
2655 TraceTriggerVTable = class(VersionedVTable)
2656 getTriggerName: ITraceTrigger_getTriggerNamePtr;
2657 getRelationName: ITraceTrigger_getRelationNamePtr;
2658 getAction: ITraceTrigger_getActionPtr;
2659 getWhich: ITraceTrigger_getWhichPtr;
2660 getPerf: ITraceTrigger_getPerfPtr;
2661 end;
2662
2663 ITraceTrigger = class(IVersioned)
2664 const VERSION = 5;
2665 const TYPE_ALL = Cardinal(0);
2666 const TYPE_BEFORE = Cardinal(1);
2667 const TYPE_AFTER = Cardinal(2);
2668
2669 function getTriggerName(): PAnsiChar;
2670 function getRelationName(): PAnsiChar;
2671 function getAction(): Integer;
2672 function getWhich(): Integer;
2673 function getPerf(): PerformanceInfoPtr;
2674 end;
2675
2676 ITraceTriggerImpl = class(ITraceTrigger)
2677 constructor create;
2678
2679 function getTriggerName(): PAnsiChar; virtual; abstract;
2680 function getRelationName(): PAnsiChar; virtual; abstract;
2681 function getAction(): Integer; virtual; abstract;
2682 function getWhich(): Integer; virtual; abstract;
2683 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2684 end;
2685
2686 TraceServiceConnectionVTable = class(TraceConnectionVTable)
2687 getServiceID: ITraceServiceConnection_getServiceIDPtr;
2688 getServiceMgr: ITraceServiceConnection_getServiceMgrPtr;
2689 getServiceName: ITraceServiceConnection_getServiceNamePtr;
2690 end;
2691
2692 ITraceServiceConnection = class(ITraceConnection)
2693 const VERSION = 12;
2694
2695 function getServiceID(): Pointer;
2696 function getServiceMgr(): PAnsiChar;
2697 function getServiceName(): PAnsiChar;
2698 end;
2699
2700 ITraceServiceConnectionImpl = class(ITraceServiceConnection)
2701 constructor create;
2702
2703 function getKind(): Cardinal; virtual; abstract;
2704 function getProcessID(): Integer; virtual; abstract;
2705 function getUserName(): PAnsiChar; virtual; abstract;
2706 function getRoleName(): PAnsiChar; virtual; abstract;
2707 function getCharSet(): PAnsiChar; virtual; abstract;
2708 function getRemoteProtocol(): PAnsiChar; virtual; abstract;
2709 function getRemoteAddress(): PAnsiChar; virtual; abstract;
2710 function getRemoteProcessID(): Integer; virtual; abstract;
2711 function getRemoteProcessName(): PAnsiChar; virtual; abstract;
2712 function getServiceID(): Pointer; virtual; abstract;
2713 function getServiceMgr(): PAnsiChar; virtual; abstract;
2714 function getServiceName(): PAnsiChar; virtual; abstract;
2715 end;
2716
2717 TraceStatusVectorVTable = class(VersionedVTable)
2718 hasError: ITraceStatusVector_hasErrorPtr;
2719 hasWarning: ITraceStatusVector_hasWarningPtr;
2720 getStatus: ITraceStatusVector_getStatusPtr;
2721 getText: ITraceStatusVector_getTextPtr;
2722 end;
2723
2724 ITraceStatusVector = class(IVersioned)
2725 const VERSION = 4;
2726
2727 function hasError(): Boolean;
2728 function hasWarning(): Boolean;
2729 function getStatus(): IStatus;
2730 function getText(): PAnsiChar;
2731 end;
2732
2733 ITraceStatusVectorImpl = class(ITraceStatusVector)
2734 constructor create;
2735
2736 function hasError(): Boolean; virtual; abstract;
2737 function hasWarning(): Boolean; virtual; abstract;
2738 function getStatus(): IStatus; virtual; abstract;
2739 function getText(): PAnsiChar; virtual; abstract;
2740 end;
2741
2742 TraceSweepInfoVTable = class(VersionedVTable)
2743 getOIT: ITraceSweepInfo_getOITPtr;
2744 getOST: ITraceSweepInfo_getOSTPtr;
2745 getOAT: ITraceSweepInfo_getOATPtr;
2746 getNext: ITraceSweepInfo_getNextPtr;
2747 getPerf: ITraceSweepInfo_getPerfPtr;
2748 end;
2749
2750 ITraceSweepInfo = class(IVersioned)
2751 const VERSION = 5;
2752
2753 function getOIT(): Int64;
2754 function getOST(): Int64;
2755 function getOAT(): Int64;
2756 function getNext(): Int64;
2757 function getPerf(): PerformanceInfoPtr;
2758 end;
2759
2760 ITraceSweepInfoImpl = class(ITraceSweepInfo)
2761 constructor create;
2762
2763 function getOIT(): Int64; virtual; abstract;
2764 function getOST(): Int64; virtual; abstract;
2765 function getOAT(): Int64; virtual; abstract;
2766 function getNext(): Int64; virtual; abstract;
2767 function getPerf(): PerformanceInfoPtr; virtual; abstract;
2768 end;
2769
2770 TraceLogWriterVTable = class(ReferenceCountedVTable)
2771 write: ITraceLogWriter_writePtr;
2772 end;
2773
2774 ITraceLogWriter = class(IReferenceCounted)
2775 const VERSION = 3;
2776
2777 function write(buf: Pointer; size: Cardinal): Cardinal;
2778 end;
2779
2780 ITraceLogWriterImpl = class(ITraceLogWriter)
2781 constructor create;
2782
2783 procedure addRef(); virtual; abstract;
2784 function release(): Integer; virtual; abstract;
2785 function write(buf: Pointer; size: Cardinal): Cardinal; virtual; abstract;
2786 end;
2787
2788 TraceInitInfoVTable = class(VersionedVTable)
2789 getConfigText: ITraceInitInfo_getConfigTextPtr;
2790 getTraceSessionID: ITraceInitInfo_getTraceSessionIDPtr;
2791 getTraceSessionName: ITraceInitInfo_getTraceSessionNamePtr;
2792 getFirebirdRootDirectory: ITraceInitInfo_getFirebirdRootDirectoryPtr;
2793 getDatabaseName: ITraceInitInfo_getDatabaseNamePtr;
2794 getConnection: ITraceInitInfo_getConnectionPtr;
2795 getLogWriter: ITraceInitInfo_getLogWriterPtr;
2796 end;
2797
2798 ITraceInitInfo = class(IVersioned)
2799 const VERSION = 7;
2800
2801 function getConfigText(): PAnsiChar;
2802 function getTraceSessionID(): Integer;
2803 function getTraceSessionName(): PAnsiChar;
2804 function getFirebirdRootDirectory(): PAnsiChar;
2805 function getDatabaseName(): PAnsiChar;
2806 function getConnection(): ITraceDatabaseConnection;
2807 function getLogWriter(): ITraceLogWriter;
2808 end;
2809
2810 ITraceInitInfoImpl = class(ITraceInitInfo)
2811 constructor create;
2812
2813 function getConfigText(): PAnsiChar; virtual; abstract;
2814 function getTraceSessionID(): Integer; virtual; abstract;
2815 function getTraceSessionName(): PAnsiChar; virtual; abstract;
2816 function getFirebirdRootDirectory(): PAnsiChar; virtual; abstract;
2817 function getDatabaseName(): PAnsiChar; virtual; abstract;
2818 function getConnection(): ITraceDatabaseConnection; virtual; abstract;
2819 function getLogWriter(): ITraceLogWriter; virtual; abstract;
2820 end;
2821
2822 TracePluginVTable = class(ReferenceCountedVTable)
2823 trace_get_error: ITracePlugin_trace_get_errorPtr;
2824 trace_attach: ITracePlugin_trace_attachPtr;
2825 trace_detach: ITracePlugin_trace_detachPtr;
2826 trace_transaction_start: ITracePlugin_trace_transaction_startPtr;
2827 trace_transaction_end: ITracePlugin_trace_transaction_endPtr;
2828 trace_proc_execute: ITracePlugin_trace_proc_executePtr;
2829 trace_trigger_execute: ITracePlugin_trace_trigger_executePtr;
2830 trace_set_context: ITracePlugin_trace_set_contextPtr;
2831 trace_dsql_prepare: ITracePlugin_trace_dsql_preparePtr;
2832 trace_dsql_free: ITracePlugin_trace_dsql_freePtr;
2833 trace_dsql_execute: ITracePlugin_trace_dsql_executePtr;
2834 trace_blr_compile: ITracePlugin_trace_blr_compilePtr;
2835 trace_blr_execute: ITracePlugin_trace_blr_executePtr;
2836 trace_dyn_execute: ITracePlugin_trace_dyn_executePtr;
2837 trace_service_attach: ITracePlugin_trace_service_attachPtr;
2838 trace_service_start: ITracePlugin_trace_service_startPtr;
2839 trace_service_query: ITracePlugin_trace_service_queryPtr;
2840 trace_service_detach: ITracePlugin_trace_service_detachPtr;
2841 trace_event_error: ITracePlugin_trace_event_errorPtr;
2842 trace_event_sweep: ITracePlugin_trace_event_sweepPtr;
2843 trace_func_execute: ITracePlugin_trace_func_executePtr;
2844 end;
2845
2846 ITracePlugin = class(IReferenceCounted)
2847 const VERSION = 23;
2848 const RESULT_SUCCESS = Cardinal(0);
2849 const RESULT_FAILED = Cardinal(1);
2850 const RESULT_UNAUTHORIZED = Cardinal(2);
2851 const SWEEP_STATE_STARTED = Cardinal(1);
2852 const SWEEP_STATE_FINISHED = Cardinal(2);
2853 const SWEEP_STATE_FAILED = Cardinal(3);
2854 const SWEEP_STATE_PROGRESS = Cardinal(4);
2855
2856 function trace_get_error(): PAnsiChar;
2857 function trace_attach(connection: ITraceDatabaseConnection; create_db: Boolean; att_result: Cardinal): Boolean;
2858 function trace_detach(connection: ITraceDatabaseConnection; drop_db: Boolean): Boolean;
2859 function trace_transaction_start(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; tpb_length: Cardinal; tpb: BytePtr; tra_result: Cardinal): Boolean;
2860 function trace_transaction_end(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; commit: Boolean; retain_context: Boolean; tra_result: Cardinal): Boolean;
2861 function trace_proc_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; procedure_: ITraceProcedure; started: Boolean; proc_result: Cardinal): Boolean;
2862 function trace_trigger_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; trigger: ITraceTrigger; started: Boolean; trig_result: Cardinal): Boolean;
2863 function trace_set_context(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; variable: ITraceContextVariable): Boolean;
2864 function trace_dsql_prepare(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; time_millis: Int64; req_result: Cardinal): Boolean;
2865 function trace_dsql_free(connection: ITraceDatabaseConnection; statement: ITraceSQLStatement; option: Cardinal): Boolean;
2866 function trace_dsql_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; started: Boolean; req_result: Cardinal): Boolean;
2867 function trace_blr_compile(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; time_millis: Int64; req_result: Cardinal): Boolean;
2868 function trace_blr_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; req_result: Cardinal): Boolean;
2869 function trace_dyn_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; request: ITraceDYNRequest; time_millis: Int64; req_result: Cardinal): Boolean;
2870 function trace_service_attach(service: ITraceServiceConnection; att_result: Cardinal): Boolean;
2871 function trace_service_start(service: ITraceServiceConnection; switches_length: Cardinal; switches: PAnsiChar; start_result: Cardinal): Boolean;
2872 function trace_service_query(service: ITraceServiceConnection; send_item_length: Cardinal; send_items: BytePtr; recv_item_length: Cardinal; recv_items: BytePtr; query_result: Cardinal): Boolean;
2873 function trace_service_detach(service: ITraceServiceConnection; detach_result: Cardinal): Boolean;
2874 function trace_event_error(connection: ITraceConnection; status: ITraceStatusVector; function_: PAnsiChar): Boolean;
2875 function trace_event_sweep(connection: ITraceDatabaseConnection; sweep: ITraceSweepInfo; sweep_state: Cardinal): Boolean;
2876 function trace_func_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; function_: ITraceFunction; started: Boolean; func_result: Cardinal): Boolean;
2877 end;
2878
2879 ITracePluginImpl = class(ITracePlugin)
2880 constructor create;
2881
2882 procedure addRef(); virtual; abstract;
2883 function release(): Integer; virtual; abstract;
2884 function trace_get_error(): PAnsiChar; virtual; abstract;
2885 function trace_attach(connection: ITraceDatabaseConnection; create_db: Boolean; att_result: Cardinal): Boolean; virtual; abstract;
2886 function trace_detach(connection: ITraceDatabaseConnection; drop_db: Boolean): Boolean; virtual; abstract;
2887 function trace_transaction_start(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; tpb_length: Cardinal; tpb: BytePtr; tra_result: Cardinal): Boolean; virtual; abstract;
2888 function trace_transaction_end(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; commit: Boolean; retain_context: Boolean; tra_result: Cardinal): Boolean; virtual; abstract;
2889 function trace_proc_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; procedure_: ITraceProcedure; started: Boolean; proc_result: Cardinal): Boolean; virtual; abstract;
2890 function trace_trigger_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; trigger: ITraceTrigger; started: Boolean; trig_result: Cardinal): Boolean; virtual; abstract;
2891 function trace_set_context(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; variable: ITraceContextVariable): Boolean; virtual; abstract;
2892 function trace_dsql_prepare(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; time_millis: Int64; req_result: Cardinal): Boolean; virtual; abstract;
2893 function trace_dsql_free(connection: ITraceDatabaseConnection; statement: ITraceSQLStatement; option: Cardinal): Boolean; virtual; abstract;
2894 function trace_dsql_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; started: Boolean; req_result: Cardinal): Boolean; virtual; abstract;
2895 function trace_blr_compile(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; time_millis: Int64; req_result: Cardinal): Boolean; virtual; abstract;
2896 function trace_blr_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; req_result: Cardinal): Boolean; virtual; abstract;
2897 function trace_dyn_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; request: ITraceDYNRequest; time_millis: Int64; req_result: Cardinal): Boolean; virtual; abstract;
2898 function trace_service_attach(service: ITraceServiceConnection; att_result: Cardinal): Boolean; virtual; abstract;
2899 function trace_service_start(service: ITraceServiceConnection; switches_length: Cardinal; switches: PAnsiChar; start_result: Cardinal): Boolean; virtual; abstract;
2900 function trace_service_query(service: ITraceServiceConnection; send_item_length: Cardinal; send_items: BytePtr; recv_item_length: Cardinal; recv_items: BytePtr; query_result: Cardinal): Boolean; virtual; abstract;
2901 function trace_service_detach(service: ITraceServiceConnection; detach_result: Cardinal): Boolean; virtual; abstract;
2902 function trace_event_error(connection: ITraceConnection; status: ITraceStatusVector; function_: PAnsiChar): Boolean; virtual; abstract;
2903 function trace_event_sweep(connection: ITraceDatabaseConnection; sweep: ITraceSweepInfo; sweep_state: Cardinal): Boolean; virtual; abstract;
2904 function trace_func_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; function_: ITraceFunction; started: Boolean; func_result: Cardinal): Boolean; virtual; abstract;
2905 end;
2906
2907 TraceFactoryVTable = class(PluginBaseVTable)
2908 trace_needs: ITraceFactory_trace_needsPtr;
2909 trace_create: ITraceFactory_trace_createPtr;
2910 end;
2911
2912 ITraceFactory = class(IPluginBase)
2913 const VERSION = 6;
2914 const TRACE_EVENT_ATTACH = Cardinal(0);
2915 const TRACE_EVENT_DETACH = Cardinal(1);
2916 const TRACE_EVENT_TRANSACTION_START = Cardinal(2);
2917 const TRACE_EVENT_TRANSACTION_END = Cardinal(3);
2918 const TRACE_EVENT_SET_CONTEXT = Cardinal(4);
2919 const TRACE_EVENT_PROC_EXECUTE = Cardinal(5);
2920 const TRACE_EVENT_TRIGGER_EXECUTE = Cardinal(6);
2921 const TRACE_EVENT_DSQL_PREPARE = Cardinal(7);
2922 const TRACE_EVENT_DSQL_FREE = Cardinal(8);
2923 const TRACE_EVENT_DSQL_EXECUTE = Cardinal(9);
2924 const TRACE_EVENT_BLR_COMPILE = Cardinal(10);
2925 const TRACE_EVENT_BLR_EXECUTE = Cardinal(11);
2926 const TRACE_EVENT_DYN_EXECUTE = Cardinal(12);
2927 const TRACE_EVENT_SERVICE_ATTACH = Cardinal(13);
2928 const TRACE_EVENT_SERVICE_START = Cardinal(14);
2929 const TRACE_EVENT_SERVICE_QUERY = Cardinal(15);
2930 const TRACE_EVENT_SERVICE_DETACH = Cardinal(16);
2931 const TRACE_EVENT_ERROR = Cardinal(17);
2932 const TRACE_EVENT_SWEEP = Cardinal(18);
2933 const TRACE_EVENT_FUNC_EXECUTE = Cardinal(19);
2934 const TRACE_EVENT_MAX = Cardinal(20);
2935
2936 function trace_needs(): QWord;
2937 function trace_create(status: IStatus; init_info: ITraceInitInfo): ITracePlugin;
2938 end;
2939
2940 ITraceFactoryImpl = class(ITraceFactory)
2941 constructor create;
2942
2943 procedure addRef(); virtual; abstract;
2944 function release(): Integer; virtual; abstract;
2945 procedure setOwner(r: IReferenceCounted); virtual; abstract;
2946 function getOwner(): IReferenceCounted; virtual; abstract;
2947 function trace_needs(): QWord; virtual; abstract;
2948 function trace_create(status: IStatus; init_info: ITraceInitInfo): ITracePlugin; virtual; abstract;
2949 end;
2950
2951 UdrFunctionFactoryVTable = class(DisposableVTable)
2952 setup: IUdrFunctionFactory_setupPtr;
2953 newItem: IUdrFunctionFactory_newItemPtr;
2954 end;
2955
2956 IUdrFunctionFactory = class(IDisposable)
2957 const VERSION = 3;
2958
2959 procedure setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder);
2960 function newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalFunction;
2961 end;
2962
2963 IUdrFunctionFactoryImpl = class(IUdrFunctionFactory)
2964 constructor create;
2965
2966 procedure dispose(); virtual; abstract;
2967 procedure setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder); virtual; abstract;
2968 function newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalFunction; virtual; abstract;
2969 end;
2970
2971 UdrProcedureFactoryVTable = class(DisposableVTable)
2972 setup: IUdrProcedureFactory_setupPtr;
2973 newItem: IUdrProcedureFactory_newItemPtr;
2974 end;
2975
2976 IUdrProcedureFactory = class(IDisposable)
2977 const VERSION = 3;
2978
2979 procedure setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder);
2980 function newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalProcedure;
2981 end;
2982
2983 IUdrProcedureFactoryImpl = class(IUdrProcedureFactory)
2984 constructor create;
2985
2986 procedure dispose(); virtual; abstract;
2987 procedure setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder); virtual; abstract;
2988 function newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalProcedure; virtual; abstract;
2989 end;
2990
2991 UdrTriggerFactoryVTable = class(DisposableVTable)
2992 setup: IUdrTriggerFactory_setupPtr;
2993 newItem: IUdrTriggerFactory_newItemPtr;
2994 end;
2995
2996 IUdrTriggerFactory = class(IDisposable)
2997 const VERSION = 3;
2998
2999 procedure setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder);
3000 function newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalTrigger;
3001 end;
3002
3003 IUdrTriggerFactoryImpl = class(IUdrTriggerFactory)
3004 constructor create;
3005
3006 procedure dispose(); virtual; abstract;
3007 procedure setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder); virtual; abstract;
3008 function newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalTrigger; virtual; abstract;
3009 end;
3010
3011 UdrPluginVTable = class(VersionedVTable)
3012 getMaster: IUdrPlugin_getMasterPtr;
3013 registerFunction: IUdrPlugin_registerFunctionPtr;
3014 registerProcedure: IUdrPlugin_registerProcedurePtr;
3015 registerTrigger: IUdrPlugin_registerTriggerPtr;
3016 end;
3017
3018 IUdrPlugin = class(IVersioned)
3019 const VERSION = 4;
3020
3021 function getMaster(): IMaster;
3022 procedure registerFunction(status: IStatus; name: PAnsiChar; factory: IUdrFunctionFactory);
3023 procedure registerProcedure(status: IStatus; name: PAnsiChar; factory: IUdrProcedureFactory);
3024 procedure registerTrigger(status: IStatus; name: PAnsiChar; factory: IUdrTriggerFactory);
3025 end;
3026
3027 IUdrPluginImpl = class(IUdrPlugin)
3028 constructor create;
3029
3030 function getMaster(): IMaster; virtual; abstract;
3031 procedure registerFunction(status: IStatus; name: PAnsiChar; factory: IUdrFunctionFactory); virtual; abstract;
3032 procedure registerProcedure(status: IStatus; name: PAnsiChar; factory: IUdrProcedureFactory); virtual; abstract;
3033 procedure registerTrigger(status: IStatus; name: PAnsiChar; factory: IUdrTriggerFactory); virtual; abstract;
3034 end;
3035
3036 // function fb_get_master_interface : IMaster; cdecl; external 'fbclient';
3037
3038 const
3039 { isc_dpb_version1 = byte(1);
3040 isc_dpb_version2 = byte(2);
3041 isc_dpb_cdd_pathname = byte(1);
3042 isc_dpb_allocation = byte(2);
3043 isc_dpb_journal = byte(3);
3044 isc_dpb_page_size = byte(4);
3045 isc_dpb_num_buffers = byte(5);
3046 isc_dpb_buffer_length = byte(6);
3047 isc_dpb_debug = byte(7);
3048 isc_dpb_garbage_collect = byte(8);
3049 isc_dpb_verify = byte(9);
3050 isc_dpb_sweep = byte(10);
3051 isc_dpb_enable_journal = byte(11);
3052 isc_dpb_disable_journal = byte(12);
3053 isc_dpb_dbkey_scope = byte(13);
3054 isc_dpb_number_of_users = byte(14);
3055 isc_dpb_trace = byte(15);
3056 isc_dpb_no_garbage_collect = byte(16);
3057 isc_dpb_damaged = byte(17);
3058 isc_dpb_license = byte(18);
3059 isc_dpb_sys_user_name = byte(19);
3060 isc_dpb_encrypt_key = byte(20);
3061 isc_dpb_activate_shadow = byte(21);
3062 isc_dpb_sweep_interval = byte(22);
3063 isc_dpb_delete_shadow = byte(23);
3064 isc_dpb_force_write = byte(24);
3065 isc_dpb_begin_log = byte(25);
3066 isc_dpb_quit_log = byte(26);
3067 isc_dpb_no_reserve = byte(27);
3068 isc_dpb_user_name = byte(28);
3069 isc_dpb_password = byte(29);
3070 isc_dpb_password_enc = byte(30);
3071 isc_dpb_sys_user_name_enc = byte(31);
3072 isc_dpb_interp = byte(32);
3073 isc_dpb_online_dump = byte(33);
3074 isc_dpb_old_file_size = byte(34);
3075 isc_dpb_old_num_files = byte(35);
3076 isc_dpb_old_file = byte(36);
3077 isc_dpb_old_start_page = byte(37);
3078 isc_dpb_old_start_seqno = byte(38);
3079 isc_dpb_old_start_file = byte(39);
3080 isc_dpb_drop_walfile = byte(40);
3081 isc_dpb_old_dump_id = byte(41);
3082 isc_dpb_wal_backup_dir = byte(42);
3083 isc_dpb_wal_chkptlen = byte(43);
3084 isc_dpb_wal_numbufs = byte(44);
3085 isc_dpb_wal_bufsize = byte(45);
3086 isc_dpb_wal_grp_cmt_wait = byte(46);
3087 isc_dpb_lc_messages = byte(47);
3088 isc_dpb_lc_ctype = byte(48);
3089 isc_dpb_cache_manager = byte(49);
3090 isc_dpb_shutdown = byte(50);
3091 isc_dpb_online = byte(51);
3092 isc_dpb_shutdown_delay = byte(52);
3093 isc_dpb_reserved = byte(53);
3094 isc_dpb_overwrite = byte(54);
3095 isc_dpb_sec_attach = byte(55);
3096 isc_dpb_disable_wal = byte(56);
3097 isc_dpb_connect_timeout = byte(57);
3098 isc_dpb_dummy_packet_interval = byte(58);
3099 isc_dpb_gbak_attach = byte(59);
3100 isc_dpb_sql_role_name = byte(60);
3101 isc_dpb_set_page_buffers = byte(61);
3102 isc_dpb_working_directory = byte(62);
3103 isc_dpb_sql_dialect = byte(63);
3104 isc_dpb_set_db_readonly = byte(64);
3105 isc_dpb_set_db_sql_dialect = byte(65);
3106 isc_dpb_gfix_attach = byte(66);
3107 isc_dpb_gstat_attach = byte(67);
3108 isc_dpb_set_db_charset = byte(68);
3109 isc_dpb_gsec_attach = byte(69);
3110 isc_dpb_address_path = byte(70);
3111 isc_dpb_process_id = byte(71);
3112 isc_dpb_no_db_triggers = byte(72);
3113 isc_dpb_trusted_auth = byte(73);
3114 isc_dpb_process_name = byte(74);
3115 isc_dpb_trusted_role = byte(75);
3116 isc_dpb_org_filename = byte(76);
3117 isc_dpb_utf8_filename = byte(77);
3118 isc_dpb_ext_call_depth = byte(78);
3119 isc_dpb_auth_block = byte(79);
3120 isc_dpb_client_version = byte(80);
3121 isc_dpb_remote_protocol = byte(81);
3122 isc_dpb_host_name = byte(82);
3123 isc_dpb_os_user = byte(83);
3124 isc_dpb_specific_auth_data = byte(84);
3125 isc_dpb_auth_plugin_list = byte(85);
3126 isc_dpb_auth_plugin_name = byte(86);
3127 isc_dpb_config = byte(87);
3128 isc_dpb_nolinger = byte(88);
3129 isc_dpb_reset_icu = byte(89);
3130 isc_dpb_map_attach = byte(90);
3131 isc_dpb_address = byte(1);
3132 isc_dpb_addr_protocol = byte(1);
3133 isc_dpb_addr_endpoint = byte(2);
3134 isc_dpb_pages = byte(1);
3135 isc_dpb_records = byte(2);
3136 isc_dpb_indices = byte(4);
3137 isc_dpb_transactions = byte(8);
3138 isc_dpb_no_update = byte(16);
3139 isc_dpb_repair = byte(32);
3140 isc_dpb_ignore = byte(64);
3141 isc_dpb_shut_cache = $1;
3142 isc_dpb_shut_attachment = $2;
3143 isc_dpb_shut_transaction = $4;
3144 isc_dpb_shut_force = $8;
3145 isc_dpb_shut_mode_mask = $70;
3146 isc_dpb_shut_default = $0;
3147 isc_dpb_shut_normal = $10;
3148 isc_dpb_shut_multi = $20;
3149 isc_dpb_shut_single = $30;
3150 isc_dpb_shut_full = $40;
3151 RDB_system = byte(1);
3152 RDB_id_assigned = byte(2);
3153 isc_tpb_version1 = byte(1);
3154 isc_tpb_version3 = byte(3);
3155 isc_tpb_consistency = byte(1);
3156 isc_tpb_concurrency = byte(2);
3157 isc_tpb_shared = byte(3);
3158 isc_tpb_protected = byte(4);
3159 isc_tpb_exclusive = byte(5);
3160 isc_tpb_wait = byte(6);
3161 isc_tpb_nowait = byte(7);
3162 isc_tpb_read = byte(8);
3163 isc_tpb_write = byte(9);
3164 isc_tpb_lock_read = byte(10);
3165 isc_tpb_lock_write = byte(11);
3166 isc_tpb_verb_time = byte(12);
3167 isc_tpb_commit_time = byte(13);
3168 isc_tpb_ignore_limbo = byte(14);
3169 isc_tpb_read_committed = byte(15);
3170 isc_tpb_autocommit = byte(16);
3171 isc_tpb_rec_version = byte(17);
3172 isc_tpb_no_rec_version = byte(18);
3173 isc_tpb_restart_requests = byte(19);
3174 isc_tpb_no_auto_undo = byte(20);
3175 isc_tpb_lock_timeout = byte(21);
3176 isc_bpb_version1 = byte(1);
3177 isc_bpb_source_type = byte(1);
3178 isc_bpb_target_type = byte(2);
3179 isc_bpb_type = byte(3);
3180 isc_bpb_source_interp = byte(4);
3181 isc_bpb_target_interp = byte(5);
3182 isc_bpb_filter_parameter = byte(6);
3183 isc_bpb_storage = byte(7);
3184 isc_bpb_type_segmented = $0;
3185 isc_bpb_type_stream = $1;
3186 isc_bpb_storage_main = $0;
3187 isc_bpb_storage_temp = $2;
3188 isc_spb_version1 = byte(1);
3189 isc_spb_current_version = byte(2);
3190 isc_spb_version3 = byte(3);
3191 isc_spb_command_line = byte(105);
3192 isc_spb_dbname = byte(106);
3193 isc_spb_verbose = byte(107);
3194 isc_spb_options = byte(108);
3195 isc_spb_address_path = byte(109);
3196 isc_spb_process_id = byte(110);
3197 isc_spb_trusted_auth = byte(111);
3198 isc_spb_process_name = byte(112);
3199 isc_spb_trusted_role = byte(113);
3200 isc_spb_verbint = byte(114);
3201 isc_spb_auth_block = byte(115);
3202 isc_spb_auth_plugin_name = byte(116);
3203 isc_spb_auth_plugin_list = byte(117);
3204 isc_spb_utf8_filename = byte(118);
3205 isc_spb_client_version = byte(119);
3206 isc_spb_remote_protocol = byte(120);
3207 isc_spb_host_name = byte(121);
3208 isc_spb_os_user = byte(122);
3209 isc_spb_config = byte(123);
3210 isc_spb_expected_db = byte(124);
3211 isc_action_svc_backup = byte(1);
3212 isc_action_svc_restore = byte(2);
3213 isc_action_svc_repair = byte(3);
3214 isc_action_svc_add_user = byte(4);
3215 isc_action_svc_delete_user = byte(5);
3216 isc_action_svc_modify_user = byte(6);
3217 isc_action_svc_display_user = byte(7);
3218 isc_action_svc_properties = byte(8);
3219 isc_action_svc_add_license = byte(9);
3220 isc_action_svc_remove_license = byte(10);
3221 isc_action_svc_db_stats = byte(11);
3222 isc_action_svc_get_ib_log = byte(12);
3223 isc_action_svc_get_fb_log = byte(12);
3224 isc_action_svc_nbak = byte(20);
3225 isc_action_svc_nrest = byte(21);
3226 isc_action_svc_trace_start = byte(22);
3227 isc_action_svc_trace_stop = byte(23);
3228 isc_action_svc_trace_suspend = byte(24);
3229 isc_action_svc_trace_resume = byte(25);
3230 isc_action_svc_trace_list = byte(26);
3231 isc_action_svc_set_mapping = byte(27);
3232 isc_action_svc_drop_mapping = byte(28);
3233 isc_action_svc_display_user_adm = byte(29);
3234 isc_action_svc_validate = byte(30);
3235 isc_action_svc_last = byte(31);
3236 isc_info_svc_svr_db_info = byte(50);
3237 isc_info_svc_get_license = byte(51);
3238 isc_info_svc_get_license_mask = byte(52);
3239 isc_info_svc_get_config = byte(53);
3240 isc_info_svc_version = byte(54);
3241 isc_info_svc_server_version = byte(55);
3242 isc_info_svc_implementation = byte(56);
3243 isc_info_svc_capabilities = byte(57);
3244 isc_info_svc_user_dbpath = byte(58);
3245 isc_info_svc_get_env = byte(59);
3246 isc_info_svc_get_env_lock = byte(60);
3247 isc_info_svc_get_env_msg = byte(61);
3248 isc_info_svc_line = byte(62);
3249 isc_info_svc_to_eof = byte(63);
3250 isc_info_svc_timeout = byte(64);
3251 isc_info_svc_get_licensed_users = byte(65);
3252 isc_info_svc_limbo_trans = byte(66);
3253 isc_info_svc_running = byte(67);
3254 isc_info_svc_get_users = byte(68);
3255 isc_info_svc_auth_block = byte(69);
3256 isc_info_svc_stdin = byte(78);
3257 isc_spb_sec_userid = byte(5);
3258 isc_spb_sec_groupid = byte(6);
3259 isc_spb_sec_username = byte(7);
3260 isc_spb_sec_password = byte(8);
3261 isc_spb_sec_groupname = byte(9);
3262 isc_spb_sec_firstname = byte(10);
3263 isc_spb_sec_middlename = byte(11);
3264 isc_spb_sec_lastname = byte(12);
3265 isc_spb_sec_admin = byte(13);
3266 isc_spb_lic_key = byte(5);
3267 isc_spb_lic_id = byte(6);
3268 isc_spb_lic_desc = byte(7);
3269 isc_spb_bkp_file = byte(5);
3270 isc_spb_bkp_factor = byte(6);
3271 isc_spb_bkp_length = byte(7);
3272 isc_spb_bkp_skip_data = byte(8);
3273 isc_spb_bkp_stat = byte(15);
3274 isc_spb_bkp_ignore_checksums = $01;
3275 isc_spb_bkp_ignore_limbo = $02;
3276 isc_spb_bkp_metadata_only = $04;
3277 isc_spb_bkp_no_garbage_collect = $08;
3278 isc_spb_bkp_old_descriptions = $10;
3279 isc_spb_bkp_non_transportable = $20;
3280 isc_spb_bkp_convert = $40;
3281 isc_spb_bkp_expand = $80;
3282 isc_spb_bkp_no_triggers = $8000;
3283 isc_spb_prp_page_buffers = byte(5);
3284 isc_spb_prp_sweep_interval = byte(6);
3285 isc_spb_prp_shutdown_db = byte(7);
3286 isc_spb_prp_deny_new_attachments = byte(9);
3287 isc_spb_prp_deny_new_transactions = byte(10);
3288 isc_spb_prp_reserve_space = byte(11);
3289 isc_spb_prp_write_mode = byte(12);
3290 isc_spb_prp_access_mode = byte(13);
3291 isc_spb_prp_set_sql_dialect = byte(14);
3292 isc_spb_prp_activate = $0100;
3293 isc_spb_prp_db_online = $0200;
3294 isc_spb_prp_nolinger = $0400;
3295 isc_spb_prp_force_shutdown = byte(41);
3296 isc_spb_prp_attachments_shutdown = byte(42);
3297 isc_spb_prp_transactions_shutdown = byte(43);
3298 isc_spb_prp_shutdown_mode = byte(44);
3299 isc_spb_prp_online_mode = byte(45);
3300 isc_spb_prp_sm_normal = byte(0);
3301 isc_spb_prp_sm_multi = byte(1);
3302 isc_spb_prp_sm_single = byte(2);
3303 isc_spb_prp_sm_full = byte(3);
3304 isc_spb_prp_res_use_full = byte(35);
3305 isc_spb_prp_res = byte(36);
3306 isc_spb_prp_wm_async = byte(37);
3307 isc_spb_prp_wm_sync = byte(38);
3308 isc_spb_prp_am_readonly = byte(39);
3309 isc_spb_prp_am_readwrite = byte(40);
3310 isc_spb_rpr_commit_trans = byte(15);
3311 isc_spb_rpr_rollback_trans = byte(34);
3312 isc_spb_rpr_recover_two_phase = byte(17);
3313 isc_spb_tra_id = byte(18);
3314 isc_spb_single_tra_id = byte(19);
3315 isc_spb_multi_tra_id = byte(20);
3316 isc_spb_tra_state = byte(21);
3317 isc_spb_tra_state_limbo = byte(22);
3318 isc_spb_tra_state_commit = byte(23);
3319 isc_spb_tra_state_rollback = byte(24);
3320 isc_spb_tra_state_unknown = byte(25);
3321 isc_spb_tra_host_site = byte(26);
3322 isc_spb_tra_remote_site = byte(27);
3323 isc_spb_tra_db_path = byte(28);
3324 isc_spb_tra_advise = byte(29);
3325 isc_spb_tra_advise_commit = byte(30);
3326 isc_spb_tra_advise_rollback = byte(31);
3327 isc_spb_tra_advise_unknown = byte(33);
3328 isc_spb_tra_id_64 = byte(46);
3329 isc_spb_single_tra_id_64 = byte(47);
3330 isc_spb_multi_tra_id_64 = byte(48);
3331 isc_spb_rpr_validate_db = $01;
3332 isc_spb_rpr_sweep_db = $02;
3333 isc_spb_rpr_mend_db = $04;
3334 isc_spb_rpr_list_limbo_trans = $08;
3335 isc_spb_rpr_check_db = $10;
3336 isc_spb_rpr_ignore_checksum = $20;
3337 isc_spb_rpr_kill_shadows = $40;
3338 isc_spb_rpr_full = $80;
3339 isc_spb_rpr_icu = $0800;
3340 isc_spb_res_buffers = byte(9);
3341 isc_spb_res_page_size = byte(10);
3342 isc_spb_res_length = byte(11);
3343 isc_spb_res_access_mode = byte(12);
3344 isc_spb_res_fix_fss_data = byte(13);
3345 isc_spb_res_fix_fss_metadata = byte(14);
3346 isc_spb_res_deactivate_idx = $0100;
3347 isc_spb_res_no_shadow = $0200;
3348 isc_spb_res_no_validity = $0400;
3349 isc_spb_res_one_at_a_time = $0800;
3350 isc_spb_res_replace = $1000;
3351 isc_spb_res_create = $2000;
3352 isc_spb_res_use_all_space = $4000;
3353 isc_spb_val_tab_incl = byte(1);
3354 isc_spb_val_tab_excl = byte(2);
3355 isc_spb_val_idx_incl = byte(3);
3356 isc_spb_val_idx_excl = byte(4);
3357 isc_spb_val_lock_timeout = byte(5);
3358 isc_spb_num_att = byte(5);
3359 isc_spb_num_db = byte(6);
3360 isc_spb_sts_table = byte(64);
3361 isc_spb_sts_data_pages = $01;
3362 isc_spb_sts_db_log = $02;
3363 isc_spb_sts_hdr_pages = $04;
3364 isc_spb_sts_idx_pages = $08;
3365 isc_spb_sts_sys_relations = $10;
3366 isc_spb_sts_record_versions = $20;
3367 isc_spb_sts_nocreation = $80;
3368 isc_spb_sts_encryption = $100;
3369 isc_spb_nbk_level = byte(5);
3370 isc_spb_nbk_file = byte(6);
3371 isc_spb_nbk_direct = byte(7);
3372 isc_spb_nbk_no_triggers = $01;
3373 isc_spb_trc_id = byte(1);
3374 isc_spb_trc_name = byte(2);
3375 isc_spb_trc_cfg = byte(3);
3376 isc_sdl_version1 = byte(1);
3377 isc_sdl_eoc = byte(255);
3378 isc_sdl_relation = byte(2);
3379 isc_sdl_rid = byte(3);
3380 isc_sdl_field = byte(4);
3381 isc_sdl_fid = byte(5);
3382 isc_sdl_struct = byte(6);
3383 isc_sdl_variable = byte(7);
3384 isc_sdl_scalar = byte(8);
3385 isc_sdl_tiny_integer = byte(9);
3386 isc_sdl_short_integer = byte(10);
3387 isc_sdl_long_integer = byte(11);
3388 isc_sdl_add = byte(13);
3389 isc_sdl_subtract = byte(14);
3390 isc_sdl_multiply = byte(15);
3391 isc_sdl_divide = byte(16);
3392 isc_sdl_negate = byte(17);
3393 isc_sdl_begin = byte(31);
3394 isc_sdl_end = byte(32);
3395 isc_sdl_do3 = byte(33);
3396 isc_sdl_do2 = byte(34);
3397 isc_sdl_do1 = byte(35);
3398 isc_sdl_element = byte(36);
3399 isc_blob_untyped = byte(0);
3400 isc_blob_text = byte(1);
3401 isc_blob_blr = byte(2);
3402 isc_blob_acl = byte(3);
3403 isc_blob_ranges = byte(4);
3404 isc_blob_summary = byte(5);
3405 isc_blob_format = byte(6);
3406 isc_blob_tra = byte(7);
3407 isc_blob_extfile = byte(8);
3408 isc_blob_debug_info = byte(9);
3409 isc_blob_max_predefined_subtype = byte(10);
3410 fb_shut_confirmation = byte(1);
3411 fb_shut_preproviders = byte(2);
3412 fb_shut_postproviders = byte(4);
3413 fb_shut_finish = byte(8);
3414 fb_shut_exit = byte(16);
3415 fb_cancel_disable = byte(1);
3416 fb_cancel_enable = byte(2);
3417 fb_cancel_raise = byte(3);
3418 fb_cancel_abort = byte(4);
3419 fb_dbg_version = byte(1);
3420 fb_dbg_end = byte(255);
3421 fb_dbg_map_src2blr = byte(2);
3422 fb_dbg_map_varname = byte(3);
3423 fb_dbg_map_argument = byte(4);
3424 fb_dbg_subproc = byte(5);
3425 fb_dbg_subfunc = byte(6);
3426 fb_dbg_map_curname = byte(7);
3427 fb_dbg_arg_input = byte(0);
3428 fb_dbg_arg_output = byte(1);}
3429 isc_facility = 20;
3430 isc_err_base = 335544320;
3431 isc_err_factor = 1;
3432 isc_arg_end = 0; (* end of argument list *)
3433 isc_arg_gds = 1; (* generic DSRI status value *)
3434 isc_arg_string = 2; (* string argument *)
3435 isc_arg_cstring = 3; (* count & string argument *)
3436 isc_arg_number = 4; (* numeric argument (long) *)
3437 isc_arg_interpreted = 5; (* interpreted status code (string) *)
3438 isc_arg_vms = 6; (* VAX/VMS status code (long) *)
3439 isc_arg_unix = 7; (* UNIX error code *)
3440 isc_arg_domain = 8; (* Apollo/Domain error code *)
3441 isc_arg_dos = 9; (* MSDOS/OS2 error code *)
3442 { isc_arith_except = 335544321;
3443 isc_bad_dbkey = 335544322;
3444 isc_bad_db_format = 335544323;
3445 isc_bad_db_handle = 335544324;
3446 isc_bad_dpb_content = 335544325;
3447 isc_bad_dpb_form = 335544326;
3448 isc_bad_req_handle = 335544327;
3449 isc_bad_segstr_handle = 335544328;
3450 isc_bad_segstr_id = 335544329;
3451 isc_bad_tpb_content = 335544330;
3452 isc_bad_tpb_form = 335544331;
3453 isc_bad_trans_handle = 335544332;
3454 isc_bug_check = 335544333;
3455 isc_convert_error = 335544334;
3456 isc_db_corrupt = 335544335;
3457 isc_deadlock = 335544336;
3458 isc_excess_trans = 335544337;
3459 isc_from_no_match = 335544338;
3460 isc_infinap = 335544339;
3461 isc_infona = 335544340;
3462 isc_infunk = 335544341;
3463 isc_integ_fail = 335544342;
3464 isc_invalid_blr = 335544343;
3465 isc_io_error = 335544344;
3466 isc_lock_conflict = 335544345;
3467 isc_metadata_corrupt = 335544346;
3468 isc_not_valid = 335544347;
3469 isc_no_cur_rec = 335544348;
3470 isc_no_dup = 335544349;
3471 isc_no_finish = 335544350;
3472 isc_no_meta_update = 335544351;
3473 isc_no_priv = 335544352;
3474 isc_no_recon = 335544353;
3475 isc_no_record = 335544354;
3476 isc_no_segstr_close = 335544355;
3477 isc_obsolete_metadata = 335544356;
3478 isc_open_trans = 335544357;
3479 isc_port_len = 335544358;
3480 isc_read_only_field = 335544359;
3481 isc_read_only_rel = 335544360;
3482 isc_read_only_trans = 335544361;
3483 isc_read_only_view = 335544362;
3484 isc_req_no_trans = 335544363;
3485 isc_req_sync = 335544364;
3486 isc_req_wrong_db = 335544365;
3487 isc_segment = 335544366;
3488 isc_segstr_eof = 335544367;
3489 isc_segstr_no_op = 335544368;
3490 isc_segstr_no_read = 335544369;
3491 isc_segstr_no_trans = 335544370;
3492 isc_segstr_no_write = 335544371;
3493 isc_segstr_wrong_db = 335544372;
3494 isc_sys_request = 335544373;
3495 isc_stream_eof = 335544374;
3496 isc_unavailable = 335544375;
3497 isc_unres_rel = 335544376;
3498 isc_uns_ext = 335544377;
3499 isc_wish_list = 335544378;
3500 isc_wrong_ods = 335544379;
3501 isc_wronumarg = 335544380;
3502 isc_imp_exc = 335544381;
3503 isc_random = 335544382;
3504 isc_fatal_conflict = 335544383;
3505 isc_badblk = 335544384;
3506 isc_invpoolcl = 335544385;
3507 isc_nopoolids = 335544386;
3508 isc_relbadblk = 335544387;
3509 isc_blktoobig = 335544388;
3510 isc_bufexh = 335544389;
3511 isc_syntaxerr = 335544390;
3512 isc_bufinuse = 335544391;
3513 isc_bdbincon = 335544392;
3514 isc_reqinuse = 335544393;
3515 isc_badodsver = 335544394;
3516 isc_relnotdef = 335544395;
3517 isc_fldnotdef = 335544396;
3518 isc_dirtypage = 335544397;
3519 isc_waifortra = 335544398;
3520 isc_doubleloc = 335544399;
3521 isc_nodnotfnd = 335544400;
3522 isc_dupnodfnd = 335544401;
3523 isc_locnotmar = 335544402;
3524 isc_badpagtyp = 335544403;
3525 isc_corrupt = 335544404;
3526 isc_badpage = 335544405;
3527 isc_badindex = 335544406;
3528 isc_dbbnotzer = 335544407;
3529 isc_tranotzer = 335544408;
3530 isc_trareqmis = 335544409;
3531 isc_badhndcnt = 335544410;
3532 isc_wrotpbver = 335544411;
3533 isc_wroblrver = 335544412;
3534 isc_wrodpbver = 335544413;
3535 isc_blobnotsup = 335544414;
3536 isc_badrelation = 335544415;
3537 isc_nodetach = 335544416;
3538 isc_notremote = 335544417;
3539 isc_trainlim = 335544418;
3540 isc_notinlim = 335544419;
3541 isc_traoutsta = 335544420;
3542 isc_connect_reject = 335544421;
3543 isc_dbfile = 335544422;
3544 isc_orphan = 335544423;
3545 isc_no_lock_mgr = 335544424;
3546 isc_ctxinuse = 335544425;
3547 isc_ctxnotdef = 335544426;
3548 isc_datnotsup = 335544427;
3549 isc_badmsgnum = 335544428;
3550 isc_badparnum = 335544429;
3551 isc_virmemexh = 335544430;
3552 isc_blocking_signal = 335544431;
3553 isc_lockmanerr = 335544432;
3554 isc_journerr = 335544433;
3555 isc_keytoobig = 335544434;
3556 isc_nullsegkey = 335544435;
3557 isc_sqlerr = 335544436;
3558 isc_wrodynver = 335544437;
3559 isc_funnotdef = 335544438;
3560 isc_funmismat = 335544439;
3561 isc_bad_msg_vec = 335544440;
3562 isc_bad_detach = 335544441;
3563 isc_noargacc_read = 335544442;
3564 isc_noargacc_write = 335544443;
3565 isc_read_only = 335544444;
3566 isc_ext_err = 335544445;
3567 isc_non_updatable = 335544446;
3568 isc_no_rollback = 335544447;
3569 isc_bad_sec_info = 335544448;
3570 isc_invalid_sec_info = 335544449;
3571 isc_misc_interpreted = 335544450;
3572 isc_update_conflict = 335544451;
3573 isc_unlicensed = 335544452;
3574 isc_obj_in_use = 335544453;
3575 isc_nofilter = 335544454;
3576 isc_shadow_accessed = 335544455;
3577 isc_invalid_sdl = 335544456;
3578 isc_out_of_bounds = 335544457;
3579 isc_invalid_dimension = 335544458;
3580 isc_rec_in_limbo = 335544459;
3581 isc_shadow_missing = 335544460;
3582 isc_cant_validate = 335544461;
3583 isc_cant_start_journal = 335544462;
3584 isc_gennotdef = 335544463;
3585 isc_cant_start_logging = 335544464;
3586 isc_bad_segstr_type = 335544465;
3587 isc_foreign_key = 335544466;
3588 isc_high_minor = 335544467;
3589 isc_tra_state = 335544468;
3590 isc_trans_invalid = 335544469;
3591 isc_buf_invalid = 335544470;
3592 isc_indexnotdefined = 335544471;
3593 isc_login = 335544472;
3594 isc_invalid_bookmark = 335544473;
3595 isc_bad_lock_level = 335544474;
3596 isc_relation_lock = 335544475;
3597 isc_record_lock = 335544476;
3598 isc_max_idx = 335544477;
3599 isc_jrn_enable = 335544478;
3600 isc_old_failure = 335544479;
3601 isc_old_in_progress = 335544480;
3602 isc_old_no_space = 335544481;
3603 isc_no_wal_no_jrn = 335544482;
3604 isc_num_old_files = 335544483;
3605 isc_wal_file_open = 335544484;
3606 isc_bad_stmt_handle = 335544485;
3607 isc_wal_failure = 335544486;
3608 isc_walw_err = 335544487;
3609 isc_logh_small = 335544488;
3610 isc_logh_inv_version = 335544489;
3611 isc_logh_open_flag = 335544490;
3612 isc_logh_open_flag2 = 335544491;
3613 isc_logh_diff_dbname = 335544492;
3614 isc_logf_unexpected_eof = 335544493;
3615 isc_logr_incomplete = 335544494;
3616 isc_logr_header_small = 335544495;
3617 isc_logb_small = 335544496;
3618 isc_wal_illegal_attach = 335544497;
3619 isc_wal_invalid_wpb = 335544498;
3620 isc_wal_err_rollover = 335544499;
3621 isc_no_wal = 335544500;
3622 isc_drop_wal = 335544501;
3623 isc_stream_not_defined = 335544502;
3624 isc_wal_subsys_error = 335544503;
3625 isc_wal_subsys_corrupt = 335544504;
3626 isc_no_archive = 335544505;
3627 isc_shutinprog = 335544506;
3628 isc_range_in_use = 335544507;
3629 isc_range_not_found = 335544508;
3630 isc_charset_not_found = 335544509;
3631 isc_lock_timeout = 335544510;
3632 isc_prcnotdef = 335544511;
3633 isc_prcmismat = 335544512;
3634 isc_wal_bugcheck = 335544513;
3635 isc_wal_cant_expand = 335544514;
3636 isc_codnotdef = 335544515;
3637 isc_xcpnotdef = 335544516;
3638 isc_except = 335544517;
3639 isc_cache_restart = 335544518;
3640 isc_bad_lock_handle = 335544519;
3641 isc_jrn_present = 335544520;
3642 isc_wal_err_rollover2 = 335544521;
3643 isc_wal_err_logwrite = 335544522;
3644 isc_wal_err_jrn_comm = 335544523;
3645 isc_wal_err_expansion = 335544524;
3646 isc_wal_err_setup = 335544525;
3647 isc_wal_err_ww_sync = 335544526;
3648 isc_wal_err_ww_start = 335544527;
3649 isc_shutdown = 335544528;
3650 isc_existing_priv_mod = 335544529;
3651 isc_primary_key_ref = 335544530;
3652 isc_primary_key_notnull = 335544531;
3653 isc_ref_cnstrnt_notfound = 335544532;
3654 isc_foreign_key_notfound = 335544533;
3655 isc_ref_cnstrnt_update = 335544534;
3656 isc_check_cnstrnt_update = 335544535;
3657 isc_check_cnstrnt_del = 335544536;
3658 isc_integ_index_seg_del = 335544537;
3659 isc_integ_index_seg_mod = 335544538;
3660 isc_integ_index_del = 335544539;
3661 isc_integ_index_mod = 335544540;
3662 isc_check_trig_del = 335544541;
3663 isc_check_trig_update = 335544542;
3664 isc_cnstrnt_fld_del = 335544543;
3665 isc_cnstrnt_fld_rename = 335544544;
3666 isc_rel_cnstrnt_update = 335544545;
3667 isc_constaint_on_view = 335544546;
3668 isc_invld_cnstrnt_type = 335544547;
3669 isc_primary_key_exists = 335544548;
3670 isc_systrig_update = 335544549;
3671 isc_not_rel_owner = 335544550;
3672 isc_grant_obj_notfound = 335544551;
3673 isc_grant_fld_notfound = 335544552;
3674 isc_grant_nopriv = 335544553;
3675 isc_nonsql_security_rel = 335544554;
3676 isc_nonsql_security_fld = 335544555;
3677 isc_wal_cache_err = 335544556;
3678 isc_shutfail = 335544557;
3679 isc_check_constraint = 335544558;
3680 isc_bad_svc_handle = 335544559;
3681 isc_shutwarn = 335544560;
3682 isc_wrospbver = 335544561;
3683 isc_bad_spb_form = 335544562;
3684 isc_svcnotdef = 335544563;
3685 isc_no_jrn = 335544564;
3686 isc_transliteration_failed = 335544565;
3687 isc_start_cm_for_wal = 335544566;
3688 isc_wal_ovflow_log_required = 335544567;
3689 isc_text_subtype = 335544568;
3690 isc_dsql_error = 335544569;
3691 isc_dsql_command_err = 335544570;
3692 isc_dsql_constant_err = 335544571;
3693 isc_dsql_cursor_err = 335544572;
3694 isc_dsql_datatype_err = 335544573;
3695 isc_dsql_decl_err = 335544574;
3696 isc_dsql_cursor_update_err = 335544575;
3697 isc_dsql_cursor_open_err = 335544576;
3698 isc_dsql_cursor_close_err = 335544577;
3699 isc_dsql_field_err = 335544578;
3700 isc_dsql_internal_err = 335544579;
3701 isc_dsql_relation_err = 335544580;
3702 isc_dsql_procedure_err = 335544581;
3703 isc_dsql_request_err = 335544582;
3704 isc_dsql_sqlda_err = 335544583;
3705 isc_dsql_var_count_err = 335544584;
3706 isc_dsql_stmt_handle = 335544585;
3707 isc_dsql_function_err = 335544586;
3708 isc_dsql_blob_err = 335544587;
3709 isc_collation_not_found = 335544588;
3710 isc_collation_not_for_charset = 335544589;
3711 isc_dsql_dup_option = 335544590;
3712 isc_dsql_tran_err = 335544591;
3713 isc_dsql_invalid_array = 335544592;
3714 isc_dsql_max_arr_dim_exceeded = 335544593;
3715 isc_dsql_arr_range_error = 335544594;
3716 isc_dsql_trigger_err = 335544595;
3717 isc_dsql_subselect_err = 335544596;
3718 isc_dsql_crdb_prepare_err = 335544597;
3719 isc_specify_field_err = 335544598;
3720 isc_num_field_err = 335544599;
3721 isc_col_name_err = 335544600;
3722 isc_where_err = 335544601;
3723 isc_table_view_err = 335544602;
3724 isc_distinct_err = 335544603;
3725 isc_key_field_count_err = 335544604;
3726 isc_subquery_err = 335544605;
3727 isc_expression_eval_err = 335544606;
3728 isc_node_err = 335544607;
3729 isc_command_end_err = 335544608;
3730 isc_index_name = 335544609;
3731 isc_exception_name = 335544610;
3732 isc_field_name = 335544611;
3733 isc_token_err = 335544612;
3734 isc_union_err = 335544613;
3735 isc_dsql_construct_err = 335544614;
3736 isc_field_aggregate_err = 335544615;
3737 isc_field_ref_err = 335544616;
3738 isc_order_by_err = 335544617;
3739 isc_return_mode_err = 335544618;
3740 isc_extern_func_err = 335544619;
3741 isc_alias_conflict_err = 335544620;
3742 isc_procedure_conflict_error = 335544621;
3743 isc_relation_conflict_err = 335544622;
3744 isc_dsql_domain_err = 335544623;
3745 isc_idx_seg_err = 335544624;
3746 isc_node_name_err = 335544625;
3747 isc_table_name = 335544626;
3748 isc_proc_name = 335544627;
3749 isc_idx_create_err = 335544628;
3750 isc_wal_shadow_err = 335544629;
3751 isc_dependency = 335544630;
3752 isc_idx_key_err = 335544631;
3753 isc_dsql_file_length_err = 335544632;
3754 isc_dsql_shadow_number_err = 335544633;
3755 isc_dsql_token_unk_err = 335544634;
3756 isc_dsql_no_relation_alias = 335544635;
3757 isc_indexname = 335544636;
3758 isc_no_stream_plan = 335544637;
3759 isc_stream_twice = 335544638;
3760 isc_stream_not_found = 335544639;
3761 isc_collation_requires_text = 335544640;
3762 isc_dsql_domain_not_found = 335544641;
3763 isc_index_unused = 335544642;
3764 isc_dsql_self_join = 335544643;
3765 isc_stream_bof = 335544644;
3766 isc_stream_crack = 335544645;
3767 isc_db_or_file_exists = 335544646;
3768 isc_invalid_operator = 335544647;
3769 isc_conn_lost = 335544648;
3770 isc_bad_checksum = 335544649;
3771 isc_page_type_err = 335544650;
3772 isc_ext_readonly_err = 335544651;
3773 isc_sing_select_err = 335544652;
3774 isc_psw_attach = 335544653;
3775 isc_psw_start_trans = 335544654;
3776 isc_invalid_direction = 335544655;
3777 isc_dsql_var_conflict = 335544656;
3778 isc_dsql_no_blob_array = 335544657;
3779 isc_dsql_base_table = 335544658;
3780 isc_duplicate_base_table = 335544659;
3781 isc_view_alias = 335544660;
3782 isc_index_root_page_full = 335544661;
3783 isc_dsql_blob_type_unknown = 335544662;
3784 isc_req_max_clones_exceeded = 335544663;
3785 isc_dsql_duplicate_spec = 335544664;
3786 isc_unique_key_violation = 335544665;
3787 isc_srvr_version_too_old = 335544666;
3788 isc_drdb_completed_with_errs = 335544667;
3789 isc_dsql_procedure_use_err = 335544668;
3790 isc_dsql_count_mismatch = 335544669;
3791 isc_blob_idx_err = 335544670;
3792 isc_array_idx_err = 335544671;
3793 isc_key_field_err = 335544672;
3794 isc_no_delete = 335544673;
3795 isc_del_last_field = 335544674;
3796 isc_sort_err = 335544675;
3797 isc_sort_mem_err = 335544676;
3798 isc_version_err = 335544677;
3799 isc_inval_key_posn = 335544678;
3800 isc_no_segments_err = 335544679;
3801 isc_crrp_data_err = 335544680;
3802 isc_rec_size_err = 335544681;
3803 isc_dsql_field_ref = 335544682;
3804 isc_req_depth_exceeded = 335544683;
3805 isc_no_field_access = 335544684;
3806 isc_no_dbkey = 335544685;
3807 isc_jrn_format_err = 335544686;
3808 isc_jrn_file_full = 335544687;
3809 isc_dsql_open_cursor_request = 335544688;
3810 isc_ib_error = 335544689;
3811 isc_cache_redef = 335544690;
3812 isc_cache_too_small = 335544691;
3813 isc_log_redef = 335544692;
3814 isc_log_too_small = 335544693;
3815 isc_partition_too_small = 335544694;
3816 isc_partition_not_supp = 335544695;
3817 isc_log_length_spec = 335544696;
3818 isc_precision_err = 335544697;
3819 isc_scale_nogt = 335544698;
3820 isc_expec_short = 335544699;
3821 isc_expec_long = 335544700;
3822 isc_expec_ushort = 335544701;
3823 isc_escape_invalid = 335544702;
3824 isc_svcnoexe = 335544703;
3825 isc_net_lookup_err = 335544704;
3826 isc_service_unknown = 335544705;
3827 isc_host_unknown = 335544706;
3828 isc_grant_nopriv_on_base = 335544707;
3829 isc_dyn_fld_ambiguous = 335544708;
3830 isc_dsql_agg_ref_err = 335544709;
3831 isc_complex_view = 335544710;
3832 isc_unprepared_stmt = 335544711;
3833 isc_expec_positive = 335544712;
3834 isc_dsql_sqlda_value_err = 335544713;
3835 isc_invalid_array_id = 335544714;
3836 isc_extfile_uns_op = 335544715;
3837 isc_svc_in_use = 335544716;
3838 isc_err_stack_limit = 335544717;
3839 isc_invalid_key = 335544718;
3840 isc_net_init_error = 335544719;
3841 isc_loadlib_failure = 335544720;
3842 isc_network_error = 335544721;
3843 isc_net_connect_err = 335544722;
3844 isc_net_connect_listen_err = 335544723;
3845 isc_net_event_connect_err = 335544724;
3846 isc_net_event_listen_err = 335544725;
3847 isc_net_read_err = 335544726;
3848 isc_net_write_err = 335544727;
3849 isc_integ_index_deactivate = 335544728;
3850 isc_integ_deactivate_primary = 335544729;
3851 isc_cse_not_supported = 335544730;
3852 isc_tra_must_sweep = 335544731;
3853 isc_unsupported_network_drive = 335544732;
3854 isc_io_create_err = 335544733;
3855 isc_io_open_err = 335544734;
3856 isc_io_close_err = 335544735;
3857 isc_io_read_err = 335544736;
3858 isc_io_write_err = 335544737;
3859 isc_io_delete_err = 335544738;
3860 isc_io_access_err = 335544739;
3861 isc_udf_exception = 335544740;
3862 isc_lost_db_connection = 335544741;
3863 isc_no_write_user_priv = 335544742;
3864 isc_token_too_long = 335544743;
3865 isc_max_att_exceeded = 335544744;
3866 isc_login_same_as_role_name = 335544745;
3867 isc_reftable_requires_pk = 335544746;
3868 isc_usrname_too_long = 335544747;
3869 isc_password_too_long = 335544748;
3870 isc_usrname_required = 335544749;
3871 isc_password_required = 335544750;
3872 isc_bad_protocol = 335544751;
3873 isc_dup_usrname_found = 335544752;
3874 isc_usrname_not_found = 335544753;
3875 isc_error_adding_sec_record = 335544754;
3876 isc_error_modifying_sec_record = 335544755;
3877 isc_error_deleting_sec_record = 335544756;
3878 isc_error_updating_sec_db = 335544757;
3879 isc_sort_rec_size_err = 335544758;
3880 isc_bad_default_value = 335544759;
3881 isc_invalid_clause = 335544760;
3882 isc_too_many_handles = 335544761;
3883 isc_optimizer_blk_exc = 335544762;
3884 isc_invalid_string_constant = 335544763;
3885 isc_transitional_date = 335544764;
3886 isc_read_only_database = 335544765;
3887 isc_must_be_dialect_2_and_up = 335544766;
3888 isc_blob_filter_exception = 335544767;
3889 isc_exception_access_violation = 335544768;
3890 isc_exception_datatype_missalignment = 335544769;
3891 isc_exception_array_bounds_exceeded = 335544770;
3892 isc_exception_float_denormal_operand = 335544771;
3893 isc_exception_float_divide_by_zero = 335544772;
3894 isc_exception_float_inexact_result = 335544773;
3895 isc_exception_float_invalid_operand = 335544774;
3896 isc_exception_float_overflow = 335544775;
3897 isc_exception_float_stack_check = 335544776;
3898 isc_exception_float_underflow = 335544777;
3899 isc_exception_integer_divide_by_zero = 335544778;
3900 isc_exception_integer_overflow = 335544779;
3901 isc_exception_unknown = 335544780;
3902 isc_exception_stack_overflow = 335544781;
3903 isc_exception_sigsegv = 335544782;
3904 isc_exception_sigill = 335544783;
3905 isc_exception_sigbus = 335544784;
3906 isc_exception_sigfpe = 335544785;
3907 isc_ext_file_delete = 335544786;
3908 isc_ext_file_modify = 335544787;
3909 isc_adm_task_denied = 335544788;
3910 isc_extract_input_mismatch = 335544789;
3911 isc_insufficient_svc_privileges = 335544790;
3912 isc_file_in_use = 335544791;
3913 isc_service_att_err = 335544792;
3914 isc_ddl_not_allowed_by_db_sql_dial = 335544793;
3915 isc_cancelled = 335544794;
3916 isc_unexp_spb_form = 335544795;
3917 isc_sql_dialect_datatype_unsupport = 335544796;
3918 isc_svcnouser = 335544797;
3919 isc_depend_on_uncommitted_rel = 335544798;
3920 isc_svc_name_missing = 335544799;
3921 isc_too_many_contexts = 335544800;
3922 isc_datype_notsup = 335544801;
3923 isc_dialect_reset_warning = 335544802;
3924 isc_dialect_not_changed = 335544803;
3925 isc_database_create_failed = 335544804;
3926 isc_inv_dialect_specified = 335544805;
3927 isc_valid_db_dialects = 335544806;
3928 isc_sqlwarn = 335544807;
3929 isc_dtype_renamed = 335544808;
3930 isc_extern_func_dir_error = 335544809;
3931 isc_date_range_exceeded = 335544810;
3932 isc_inv_client_dialect_specified = 335544811;
3933 isc_valid_client_dialects = 335544812;
3934 isc_optimizer_between_err = 335544813;
3935 isc_service_not_supported = 335544814;
3936 isc_generator_name = 335544815;
3937 isc_udf_name = 335544816;
3938 isc_bad_limit_param = 335544817;
3939 isc_bad_skip_param = 335544818;
3940 isc_io_32bit_exceeded_err = 335544819;
3941 isc_invalid_savepoint = 335544820;
3942 isc_dsql_column_pos_err = 335544821;
3943 isc_dsql_agg_where_err = 335544822;
3944 isc_dsql_agg_group_err = 335544823;
3945 isc_dsql_agg_column_err = 335544824;
3946 isc_dsql_agg_having_err = 335544825;
3947 isc_dsql_agg_nested_err = 335544826;
3948 isc_exec_sql_invalid_arg = 335544827;
3949 isc_exec_sql_invalid_req = 335544828;
3950 isc_exec_sql_invalid_var = 335544829;
3951 isc_exec_sql_max_call_exceeded = 335544830;
3952 isc_conf_access_denied = 335544831;
3953 isc_wrong_backup_state = 335544832;
3954 isc_wal_backup_err = 335544833;
3955 isc_cursor_not_open = 335544834;
3956 isc_bad_shutdown_mode = 335544835;
3957 isc_concat_overflow = 335544836;
3958 isc_bad_substring_offset = 335544837;
3959 isc_foreign_key_target_doesnt_exist = 335544838;
3960 isc_foreign_key_references_present = 335544839;
3961 isc_no_update = 335544840;
3962 isc_cursor_already_open = 335544841;
3963 isc_stack_trace = 335544842;
3964 isc_ctx_var_not_found = 335544843;
3965 isc_ctx_namespace_invalid = 335544844;
3966 isc_ctx_too_big = 335544845;
3967 isc_ctx_bad_argument = 335544846;
3968 isc_identifier_too_long = 335544847;
3969 isc_except2 = 335544848;
3970 isc_malformed_string = 335544849;
3971 isc_prc_out_param_mismatch = 335544850;
3972 isc_command_end_err2 = 335544851;
3973 isc_partner_idx_incompat_type = 335544852;
3974 isc_bad_substring_length = 335544853;
3975 isc_charset_not_installed = 335544854;
3976 isc_collation_not_installed = 335544855;
3977 isc_att_shutdown = 335544856;
3978 isc_blobtoobig = 335544857;
3979 isc_must_have_phys_field = 335544858;
3980 isc_invalid_time_precision = 335544859;
3981 isc_blob_convert_error = 335544860;
3982 isc_array_convert_error = 335544861;
3983 isc_record_lock_not_supp = 335544862;
3984 isc_partner_idx_not_found = 335544863;
3985 isc_tra_num_exc = 335544864;
3986 isc_field_disappeared = 335544865;
3987 isc_met_wrong_gtt_scope = 335544866;
3988 isc_subtype_for_internal_use = 335544867;
3989 isc_illegal_prc_type = 335544868;
3990 isc_invalid_sort_datatype = 335544869;
3991 isc_collation_name = 335544870;
3992 isc_domain_name = 335544871;
3993 isc_domnotdef = 335544872;
3994 isc_array_max_dimensions = 335544873;
3995 isc_max_db_per_trans_allowed = 335544874;
3996 isc_bad_debug_format = 335544875;
3997 isc_bad_proc_BLR = 335544876;
3998 isc_key_too_big = 335544877;
3999 isc_concurrent_transaction = 335544878;
4000 isc_not_valid_for_var = 335544879;
4001 isc_not_valid_for = 335544880;
4002 isc_need_difference = 335544881;
4003 isc_long_login = 335544882;
4004 isc_fldnotdef2 = 335544883;
4005 isc_invalid_similar_pattern = 335544884;
4006 isc_bad_teb_form = 335544885;
4007 isc_tpb_multiple_txn_isolation = 335544886;
4008 isc_tpb_reserv_before_table = 335544887;
4009 isc_tpb_multiple_spec = 335544888;
4010 isc_tpb_option_without_rc = 335544889;
4011 isc_tpb_conflicting_options = 335544890;
4012 isc_tpb_reserv_missing_tlen = 335544891;
4013 isc_tpb_reserv_long_tlen = 335544892;
4014 isc_tpb_reserv_missing_tname = 335544893;
4015 isc_tpb_reserv_corrup_tlen = 335544894;
4016 isc_tpb_reserv_null_tlen = 335544895;
4017 isc_tpb_reserv_relnotfound = 335544896;
4018 isc_tpb_reserv_baserelnotfound = 335544897;
4019 isc_tpb_missing_len = 335544898;
4020 isc_tpb_missing_value = 335544899;
4021 isc_tpb_corrupt_len = 335544900;
4022 isc_tpb_null_len = 335544901;
4023 isc_tpb_overflow_len = 335544902;
4024 isc_tpb_invalid_value = 335544903;
4025 isc_tpb_reserv_stronger_wng = 335544904;
4026 isc_tpb_reserv_stronger = 335544905;
4027 isc_tpb_reserv_max_recursion = 335544906;
4028 isc_tpb_reserv_virtualtbl = 335544907;
4029 isc_tpb_reserv_systbl = 335544908;
4030 isc_tpb_reserv_temptbl = 335544909;
4031 isc_tpb_readtxn_after_writelock = 335544910;
4032 isc_tpb_writelock_after_readtxn = 335544911;
4033 isc_time_range_exceeded = 335544912;
4034 isc_datetime_range_exceeded = 335544913;
4035 isc_string_truncation = 335544914;
4036 isc_blob_truncation = 335544915;
4037 isc_numeric_out_of_range = 335544916;
4038 isc_shutdown_timeout = 335544917;
4039 isc_att_handle_busy = 335544918;
4040 isc_bad_udf_freeit = 335544919;
4041 isc_eds_provider_not_found = 335544920;
4042 isc_eds_connection = 335544921;
4043 isc_eds_preprocess = 335544922;
4044 isc_eds_stmt_expected = 335544923;
4045 isc_eds_prm_name_expected = 335544924;
4046 isc_eds_unclosed_comment = 335544925;
4047 isc_eds_statement = 335544926;
4048 isc_eds_input_prm_mismatch = 335544927;
4049 isc_eds_output_prm_mismatch = 335544928;
4050 isc_eds_input_prm_not_set = 335544929;
4051 isc_too_big_blr = 335544930;
4052 isc_montabexh = 335544931;
4053 isc_modnotfound = 335544932;
4054 isc_nothing_to_cancel = 335544933;
4055 isc_ibutil_not_loaded = 335544934;
4056 isc_circular_computed = 335544935;
4057 isc_psw_db_error = 335544936;
4058 isc_invalid_type_datetime_op = 335544937;
4059 isc_onlycan_add_timetodate = 335544938;
4060 isc_onlycan_add_datetotime = 335544939;
4061 isc_onlycansub_tstampfromtstamp = 335544940;
4062 isc_onlyoneop_mustbe_tstamp = 335544941;
4063 isc_invalid_extractpart_time = 335544942;
4064 isc_invalid_extractpart_date = 335544943;
4065 isc_invalidarg_extract = 335544944;
4066 isc_sysf_argmustbe_exact = 335544945;
4067 isc_sysf_argmustbe_exact_or_fp = 335544946;
4068 isc_sysf_argviolates_uuidtype = 335544947;
4069 isc_sysf_argviolates_uuidlen = 335544948;
4070 isc_sysf_argviolates_uuidfmt = 335544949;
4071 isc_sysf_argviolates_guidigits = 335544950;
4072 isc_sysf_invalid_addpart_time = 335544951;
4073 isc_sysf_invalid_add_datetime = 335544952;
4074 isc_sysf_invalid_addpart_dtime = 335544953;
4075 isc_sysf_invalid_add_dtime_rc = 335544954;
4076 isc_sysf_invalid_diff_dtime = 335544955;
4077 isc_sysf_invalid_timediff = 335544956;
4078 isc_sysf_invalid_tstamptimediff = 335544957;
4079 isc_sysf_invalid_datetimediff = 335544958;
4080 isc_sysf_invalid_diffpart = 335544959;
4081 isc_sysf_argmustbe_positive = 335544960;
4082 isc_sysf_basemustbe_positive = 335544961;
4083 isc_sysf_argnmustbe_nonneg = 335544962;
4084 isc_sysf_argnmustbe_positive = 335544963;
4085 isc_sysf_invalid_zeropowneg = 335544964;
4086 isc_sysf_invalid_negpowfp = 335544965;
4087 isc_sysf_invalid_scale = 335544966;
4088 isc_sysf_argmustbe_nonneg = 335544967;
4089 isc_sysf_binuuid_mustbe_str = 335544968;
4090 isc_sysf_binuuid_wrongsize = 335544969;
4091 isc_missing_required_spb = 335544970;
4092 isc_net_server_shutdown = 335544971;
4093 isc_bad_conn_str = 335544972;
4094 isc_bad_epb_form = 335544973;
4095 isc_no_threads = 335544974;
4096 isc_net_event_connect_timeout = 335544975;
4097 isc_sysf_argmustbe_nonzero = 335544976;
4098 isc_sysf_argmustbe_range_inc1_1 = 335544977;
4099 isc_sysf_argmustbe_gteq_one = 335544978;
4100 isc_sysf_argmustbe_range_exc1_1 = 335544979;
4101 isc_internal_rejected_params = 335544980;
4102 isc_sysf_fp_overflow = 335544981;
4103 isc_udf_fp_overflow = 335544982;
4104 isc_udf_fp_nan = 335544983;
4105 isc_instance_conflict = 335544984;
4106 isc_out_of_temp_space = 335544985;
4107 isc_eds_expl_tran_ctrl = 335544986;
4108 isc_no_trusted_spb = 335544987;
4109 isc_package_name = 335544988;
4110 isc_cannot_make_not_null = 335544989;
4111 isc_feature_removed = 335544990;
4112 isc_view_name = 335544991;
4113 isc_lock_dir_access = 335544992;
4114 isc_invalid_fetch_option = 335544993;
4115 isc_bad_fun_BLR = 335544994;
4116 isc_func_pack_not_implemented = 335544995;
4117 isc_proc_pack_not_implemented = 335544996;
4118 isc_eem_func_not_returned = 335544997;
4119 isc_eem_proc_not_returned = 335544998;
4120 isc_eem_trig_not_returned = 335544999;
4121 isc_eem_bad_plugin_ver = 335545000;
4122 isc_eem_engine_notfound = 335545001;
4123 isc_attachment_in_use = 335545002;
4124 isc_transaction_in_use = 335545003;
4125 isc_pman_cannot_load_plugin = 335545004;
4126 isc_pman_module_notfound = 335545005;
4127 isc_pman_entrypoint_notfound = 335545006;
4128 isc_pman_module_bad = 335545007;
4129 isc_pman_plugin_notfound = 335545008;
4130 isc_sysf_invalid_trig_namespace = 335545009;
4131 isc_unexpected_null = 335545010;
4132 isc_type_notcompat_blob = 335545011;
4133 isc_invalid_date_val = 335545012;
4134 isc_invalid_time_val = 335545013;
4135 isc_invalid_timestamp_val = 335545014;
4136 isc_invalid_index_val = 335545015;
4137 isc_formatted_exception = 335545016;
4138 isc_async_active = 335545017;
4139 isc_private_function = 335545018;
4140 isc_private_procedure = 335545019;
4141 isc_request_outdated = 335545020;
4142 isc_bad_events_handle = 335545021;
4143 isc_cannot_copy_stmt = 335545022;
4144 isc_invalid_boolean_usage = 335545023;
4145 isc_sysf_argscant_both_be_zero = 335545024;
4146 isc_spb_no_id = 335545025;
4147 isc_ee_blr_mismatch_null = 335545026;
4148 isc_ee_blr_mismatch_length = 335545027;
4149 isc_ss_out_of_bounds = 335545028;
4150 isc_missing_data_structures = 335545029;
4151 isc_protect_sys_tab = 335545030;
4152 isc_libtommath_generic = 335545031;
4153 isc_wroblrver2 = 335545032;
4154 isc_trunc_limits = 335545033;
4155 isc_info_access = 335545034;
4156 isc_svc_no_stdin = 335545035;
4157 isc_svc_start_failed = 335545036;
4158 isc_svc_no_switches = 335545037;
4159 isc_svc_bad_size = 335545038;
4160 isc_no_crypt_plugin = 335545039;
4161 isc_cp_name_too_long = 335545040;
4162 isc_cp_process_active = 335545041;
4163 isc_cp_already_crypted = 335545042;
4164 isc_decrypt_error = 335545043;
4165 isc_no_providers = 335545044;
4166 isc_null_spb = 335545045;
4167 isc_max_args_exceeded = 335545046;
4168 isc_ee_blr_mismatch_names_count = 335545047;
4169 isc_ee_blr_mismatch_name_not_found = 335545048;
4170 isc_bad_result_set = 335545049;
4171 isc_wrong_message_length = 335545050;
4172 isc_no_output_format = 335545051;
4173 isc_item_finish = 335545052;
4174 isc_miss_config = 335545053;
4175 isc_conf_line = 335545054;
4176 isc_conf_include = 335545055;
4177 isc_include_depth = 335545056;
4178 isc_include_miss = 335545057;
4179 isc_protect_ownership = 335545058;
4180 isc_badvarnum = 335545059;
4181 isc_sec_context = 335545060;
4182 isc_multi_segment = 335545061;
4183 isc_login_changed = 335545062;
4184 isc_auth_handshake_limit = 335545063;
4185 isc_wirecrypt_incompatible = 335545064;
4186 isc_miss_wirecrypt = 335545065;
4187 isc_wirecrypt_key = 335545066;
4188 isc_wirecrypt_plugin = 335545067;
4189 isc_secdb_name = 335545068;
4190 isc_auth_data = 335545069;
4191 isc_auth_datalength = 335545070;
4192 isc_info_unprepared_stmt = 335545071;
4193 isc_idx_key_value = 335545072;
4194 isc_forupdate_virtualtbl = 335545073;
4195 isc_forupdate_systbl = 335545074;
4196 isc_forupdate_temptbl = 335545075;
4197 isc_cant_modify_sysobj = 335545076;
4198 isc_server_misconfigured = 335545077;
4199 isc_alter_role = 335545078;
4200 isc_map_already_exists = 335545079;
4201 isc_map_not_exists = 335545080;
4202 isc_map_load = 335545081;
4203 isc_map_aster = 335545082;
4204 isc_map_multi = 335545083;
4205 isc_map_undefined = 335545084;
4206 isc_baddpb_damaged_mode = 335545085;
4207 isc_baddpb_buffers_range = 335545086;
4208 isc_baddpb_temp_buffers = 335545087;
4209 isc_map_nodb = 335545088;
4210 isc_map_notable = 335545089;
4211 isc_miss_trusted_role = 335545090;
4212 isc_set_invalid_role = 335545091;
4213 isc_cursor_not_positioned = 335545092;
4214 isc_dup_attribute = 335545093;
4215 isc_dyn_no_priv = 335545094;
4216 isc_dsql_cant_grant_option = 335545095;
4217 isc_read_conflict = 335545096;
4218 isc_crdb_load = 335545097;
4219 isc_crdb_nodb = 335545098;
4220 isc_crdb_notable = 335545099;
4221 isc_interface_version_too_old = 335545100;
4222 isc_fun_param_mismatch = 335545101;
4223 isc_savepoint_backout_err = 335545102;
4224 isc_domain_primary_key_notnull = 335545103;
4225 isc_invalid_attachment_charset = 335545104;
4226 isc_map_down = 335545105;
4227 isc_login_error = 335545106;
4228 isc_already_opened = 335545107;
4229 isc_bad_crypt_key = 335545108;
4230 isc_encrypt_error = 335545109;
4231 isc_gfix_db_name = 335740929;
4232 isc_gfix_invalid_sw = 335740930;
4233 isc_gfix_incmp_sw = 335740932;
4234 isc_gfix_replay_req = 335740933;
4235 isc_gfix_pgbuf_req = 335740934;
4236 isc_gfix_val_req = 335740935;
4237 isc_gfix_pval_req = 335740936;
4238 isc_gfix_trn_req = 335740937;
4239 isc_gfix_full_req = 335740940;
4240 isc_gfix_usrname_req = 335740941;
4241 isc_gfix_pass_req = 335740942;
4242 isc_gfix_subs_name = 335740943;
4243 isc_gfix_wal_req = 335740944;
4244 isc_gfix_sec_req = 335740945;
4245 isc_gfix_nval_req = 335740946;
4246 isc_gfix_type_shut = 335740947;
4247 isc_gfix_retry = 335740948;
4248 isc_gfix_retry_db = 335740951;
4249 isc_gfix_exceed_max = 335740991;
4250 isc_gfix_corrupt_pool = 335740992;
4251 isc_gfix_mem_exhausted = 335740993;
4252 isc_gfix_bad_pool = 335740994;
4253 isc_gfix_trn_not_valid = 335740995;
4254 isc_gfix_unexp_eoi = 335741012;
4255 isc_gfix_recon_fail = 335741018;
4256 isc_gfix_trn_unknown = 335741036;
4257 isc_gfix_mode_req = 335741038;
4258 isc_gfix_pzval_req = 335741042;
4259 isc_dsql_dbkey_from_non_table = 336003074;
4260 isc_dsql_transitional_numeric = 336003075;
4261 isc_dsql_dialect_warning_expr = 336003076;
4262 isc_sql_db_dialect_dtype_unsupport = 336003077;
4263 isc_sql_dialect_conflict_num = 336003079;
4264 isc_dsql_warning_number_ambiguous = 336003080;
4265 isc_dsql_warning_number_ambiguous1 = 336003081;
4266 isc_dsql_warn_precision_ambiguous = 336003082;
4267 isc_dsql_warn_precision_ambiguous1 = 336003083;
4268 isc_dsql_warn_precision_ambiguous2 = 336003084;
4269 isc_dsql_ambiguous_field_name = 336003085;
4270 isc_dsql_udf_return_pos_err = 336003086;
4271 isc_dsql_invalid_label = 336003087;
4272 isc_dsql_datatypes_not_comparable = 336003088;
4273 isc_dsql_cursor_invalid = 336003089;
4274 isc_dsql_cursor_redefined = 336003090;
4275 isc_dsql_cursor_not_found = 336003091;
4276 isc_dsql_cursor_exists = 336003092;
4277 isc_dsql_cursor_rel_ambiguous = 336003093;
4278 isc_dsql_cursor_rel_not_found = 336003094;
4279 isc_dsql_cursor_not_open = 336003095;
4280 isc_dsql_type_not_supp_ext_tab = 336003096;
4281 isc_dsql_feature_not_supported_ods = 336003097;
4282 isc_primary_key_required = 336003098;
4283 isc_upd_ins_doesnt_match_pk = 336003099;
4284 isc_upd_ins_doesnt_match_matching = 336003100;
4285 isc_upd_ins_with_complex_view = 336003101;
4286 isc_dsql_incompatible_trigger_type = 336003102;
4287 isc_dsql_db_trigger_type_cant_change = 336003103;
4288 isc_dsql_record_version_table = 336003104;
4289 isc_dsql_invalid_sqlda_version = 336003105;
4290 isc_dsql_sqlvar_index = 336003106;
4291 isc_dsql_no_sqlind = 336003107;
4292 isc_dsql_no_sqldata = 336003108;
4293 isc_dsql_no_input_sqlda = 336003109;
4294 isc_dsql_no_output_sqlda = 336003110;
4295 isc_dsql_wrong_param_num = 336003111;
4296 isc_dyn_filter_not_found = 336068645;
4297 isc_dyn_func_not_found = 336068649;
4298 isc_dyn_index_not_found = 336068656;
4299 isc_dyn_view_not_found = 336068662;
4300 isc_dyn_domain_not_found = 336068697;
4301 isc_dyn_cant_modify_auto_trig = 336068717;
4302 isc_dyn_dup_table = 336068740;
4303 isc_dyn_proc_not_found = 336068748;
4304 isc_dyn_exception_not_found = 336068752;
4305 isc_dyn_proc_param_not_found = 336068754;
4306 isc_dyn_trig_not_found = 336068755;
4307 isc_dyn_charset_not_found = 336068759;
4308 isc_dyn_collation_not_found = 336068760;
4309 isc_dyn_role_not_found = 336068763;
4310 isc_dyn_name_longer = 336068767;
4311 isc_dyn_column_does_not_exist = 336068784;
4312 isc_dyn_role_does_not_exist = 336068796;
4313 isc_dyn_no_grant_admin_opt = 336068797;
4314 isc_dyn_user_not_role_member = 336068798;
4315 isc_dyn_delete_role_failed = 336068799;
4316 isc_dyn_grant_role_to_user = 336068800;
4317 isc_dyn_inv_sql_role_name = 336068801;
4318 isc_dyn_dup_sql_role = 336068802;
4319 isc_dyn_kywd_spec_for_role = 336068803;
4320 isc_dyn_roles_not_supported = 336068804;
4321 isc_dyn_domain_name_exists = 336068812;
4322 isc_dyn_field_name_exists = 336068813;
4323 isc_dyn_dependency_exists = 336068814;
4324 isc_dyn_dtype_invalid = 336068815;
4325 isc_dyn_char_fld_too_small = 336068816;
4326 isc_dyn_invalid_dtype_conversion = 336068817;
4327 isc_dyn_dtype_conv_invalid = 336068818;
4328 isc_dyn_zero_len_id = 336068820;
4329 isc_dyn_gen_not_found = 336068822;
4330 isc_max_coll_per_charset = 336068829;
4331 isc_invalid_coll_attr = 336068830;
4332 isc_dyn_wrong_gtt_scope = 336068840;
4333 isc_dyn_coll_used_table = 336068843;
4334 isc_dyn_coll_used_domain = 336068844;
4335 isc_dyn_cannot_del_syscoll = 336068845;
4336 isc_dyn_cannot_del_def_coll = 336068846;
4337 isc_dyn_table_not_found = 336068849;
4338 isc_dyn_coll_used_procedure = 336068851;
4339 isc_dyn_scale_too_big = 336068852;
4340 isc_dyn_precision_too_small = 336068853;
4341 isc_dyn_miss_priv_warning = 336068855;
4342 isc_dyn_ods_not_supp_feature = 336068856;
4343 isc_dyn_cannot_addrem_computed = 336068857;
4344 isc_dyn_no_empty_pw = 336068858;
4345 isc_dyn_dup_index = 336068859;
4346 isc_dyn_package_not_found = 336068864;
4347 isc_dyn_schema_not_found = 336068865;
4348 isc_dyn_cannot_mod_sysproc = 336068866;
4349 isc_dyn_cannot_mod_systrig = 336068867;
4350 isc_dyn_cannot_mod_sysfunc = 336068868;
4351 isc_dyn_invalid_ddl_proc = 336068869;
4352 isc_dyn_invalid_ddl_trig = 336068870;
4353 isc_dyn_funcnotdef_package = 336068871;
4354 isc_dyn_procnotdef_package = 336068872;
4355 isc_dyn_funcsignat_package = 336068873;
4356 isc_dyn_procsignat_package = 336068874;
4357 isc_dyn_defvaldecl_package_proc = 336068875;
4358 isc_dyn_package_body_exists = 336068877;
4359 isc_dyn_invalid_ddl_func = 336068878;
4360 isc_dyn_newfc_oldsyntax = 336068879;
4361 isc_dyn_func_param_not_found = 336068886;
4362 isc_dyn_routine_param_not_found = 336068887;
4363 isc_dyn_routine_param_ambiguous = 336068888;
4364 isc_dyn_coll_used_function = 336068889;
4365 isc_dyn_domain_used_function = 336068890;
4366 isc_dyn_alter_user_no_clause = 336068891;
4367 isc_dyn_duplicate_package_item = 336068894;
4368 isc_dyn_cant_modify_sysobj = 336068895;
4369 isc_dyn_cant_use_zero_increment = 336068896;
4370 isc_dyn_cant_use_in_foreignkey = 336068897;
4371 isc_dyn_defvaldecl_package_func = 336068898;
4372 isc_gbak_unknown_switch = 336330753;
4373 isc_gbak_page_size_missing = 336330754;
4374 isc_gbak_page_size_toobig = 336330755;
4375 isc_gbak_redir_ouput_missing = 336330756;
4376 isc_gbak_switches_conflict = 336330757;
4377 isc_gbak_unknown_device = 336330758;
4378 isc_gbak_no_protection = 336330759;
4379 isc_gbak_page_size_not_allowed = 336330760;
4380 isc_gbak_multi_source_dest = 336330761;
4381 isc_gbak_filename_missing = 336330762;
4382 isc_gbak_dup_inout_names = 336330763;
4383 isc_gbak_inv_page_size = 336330764;
4384 isc_gbak_db_specified = 336330765;
4385 isc_gbak_db_exists = 336330766;
4386 isc_gbak_unk_device = 336330767;
4387 isc_gbak_blob_info_failed = 336330772;
4388 isc_gbak_unk_blob_item = 336330773;
4389 isc_gbak_get_seg_failed = 336330774;
4390 isc_gbak_close_blob_failed = 336330775;
4391 isc_gbak_open_blob_failed = 336330776;
4392 isc_gbak_put_blr_gen_id_failed = 336330777;
4393 isc_gbak_unk_type = 336330778;
4394 isc_gbak_comp_req_failed = 336330779;
4395 isc_gbak_start_req_failed = 336330780;
4396 isc_gbak_rec_failed = 336330781;
4397 isc_gbak_rel_req_failed = 336330782;
4398 isc_gbak_db_info_failed = 336330783;
4399 isc_gbak_no_db_desc = 336330784;
4400 isc_gbak_db_create_failed = 336330785;
4401 isc_gbak_decomp_len_error = 336330786;
4402 isc_gbak_tbl_missing = 336330787;
4403 isc_gbak_blob_col_missing = 336330788;
4404 isc_gbak_create_blob_failed = 336330789;
4405 isc_gbak_put_seg_failed = 336330790;
4406 isc_gbak_rec_len_exp = 336330791;
4407 isc_gbak_inv_rec_len = 336330792;
4408 isc_gbak_exp_data_type = 336330793;
4409 isc_gbak_gen_id_failed = 336330794;
4410 isc_gbak_unk_rec_type = 336330795;
4411 isc_gbak_inv_bkup_ver = 336330796;
4412 isc_gbak_missing_bkup_desc = 336330797;
4413 isc_gbak_string_trunc = 336330798;
4414 isc_gbak_cant_rest_record = 336330799;
4415 isc_gbak_send_failed = 336330800;
4416 isc_gbak_no_tbl_name = 336330801;
4417 isc_gbak_unexp_eof = 336330802;
4418 isc_gbak_db_format_too_old = 336330803;
4419 isc_gbak_inv_array_dim = 336330804;
4420 isc_gbak_xdr_len_expected = 336330807;
4421 isc_gbak_open_bkup_error = 336330817;
4422 isc_gbak_open_error = 336330818;
4423 isc_gbak_missing_block_fac = 336330934;
4424 isc_gbak_inv_block_fac = 336330935;
4425 isc_gbak_block_fac_specified = 336330936;
4426 isc_gbak_missing_username = 336330940;
4427 isc_gbak_missing_password = 336330941;
4428 isc_gbak_missing_skipped_bytes = 336330952;
4429 isc_gbak_inv_skipped_bytes = 336330953;
4430 isc_gbak_err_restore_charset = 336330965;
4431 isc_gbak_err_restore_collation = 336330967;
4432 isc_gbak_read_error = 336330972;
4433 isc_gbak_write_error = 336330973;
4434 isc_gbak_db_in_use = 336330985;
4435 isc_gbak_sysmemex = 336330990;
4436 isc_gbak_restore_role_failed = 336331002;
4437 isc_gbak_role_op_missing = 336331005;
4438 isc_gbak_page_buffers_missing = 336331010;
4439 isc_gbak_page_buffers_wrong_param = 336331011;
4440 isc_gbak_page_buffers_restore = 336331012;
4441 isc_gbak_inv_size = 336331014;
4442 isc_gbak_file_outof_sequence = 336331015;
4443 isc_gbak_join_file_missing = 336331016;
4444 isc_gbak_stdin_not_supptd = 336331017;
4445 isc_gbak_stdout_not_supptd = 336331018;
4446 isc_gbak_bkup_corrupt = 336331019;
4447 isc_gbak_unk_db_file_spec = 336331020;
4448 isc_gbak_hdr_write_failed = 336331021;
4449 isc_gbak_disk_space_ex = 336331022;
4450 isc_gbak_size_lt_min = 336331023;
4451 isc_gbak_svc_name_missing = 336331025;
4452 isc_gbak_not_ownr = 336331026;
4453 isc_gbak_mode_req = 336331031;
4454 isc_gbak_just_data = 336331033;
4455 isc_gbak_data_only = 336331034;
4456 isc_gbak_missing_interval = 336331078;
4457 isc_gbak_wrong_interval = 336331079;
4458 isc_gbak_verify_verbint = 336331081;
4459 isc_gbak_option_only_restore = 336331082;
4460 isc_gbak_option_only_backup = 336331083;
4461 isc_gbak_option_conflict = 336331084;
4462 isc_gbak_param_conflict = 336331085;
4463 isc_gbak_option_repeated = 336331086;
4464 isc_gbak_max_dbkey_recursion = 336331091;
4465 isc_gbak_max_dbkey_length = 336331092;
4466 isc_gbak_invalid_metadata = 336331093;
4467 isc_gbak_invalid_data = 336331094;
4468 isc_gbak_inv_bkup_ver2 = 336331096;
4469 isc_gbak_db_format_too_old2 = 336331100;
4470 isc_dsql_too_old_ods = 336397205;
4471 isc_dsql_table_not_found = 336397206;
4472 isc_dsql_view_not_found = 336397207;
4473 isc_dsql_line_col_error = 336397208;
4474 isc_dsql_unknown_pos = 336397209;
4475 isc_dsql_no_dup_name = 336397210;
4476 isc_dsql_too_many_values = 336397211;
4477 isc_dsql_no_array_computed = 336397212;
4478 isc_dsql_implicit_domain_name = 336397213;
4479 isc_dsql_only_can_subscript_array = 336397214;
4480 isc_dsql_max_sort_items = 336397215;
4481 isc_dsql_max_group_items = 336397216;
4482 isc_dsql_conflicting_sort_field = 336397217;
4483 isc_dsql_derived_table_more_columns = 336397218;
4484 isc_dsql_derived_table_less_columns = 336397219;
4485 isc_dsql_derived_field_unnamed = 336397220;
4486 isc_dsql_derived_field_dup_name = 336397221;
4487 isc_dsql_derived_alias_select = 336397222;
4488 isc_dsql_derived_alias_field = 336397223;
4489 isc_dsql_auto_field_bad_pos = 336397224;
4490 isc_dsql_cte_wrong_reference = 336397225;
4491 isc_dsql_cte_cycle = 336397226;
4492 isc_dsql_cte_outer_join = 336397227;
4493 isc_dsql_cte_mult_references = 336397228;
4494 isc_dsql_cte_not_a_union = 336397229;
4495 isc_dsql_cte_nonrecurs_after_recurs = 336397230;
4496 isc_dsql_cte_wrong_clause = 336397231;
4497 isc_dsql_cte_union_all = 336397232;
4498 isc_dsql_cte_miss_nonrecursive = 336397233;
4499 isc_dsql_cte_nested_with = 336397234;
4500 isc_dsql_col_more_than_once_using = 336397235;
4501 isc_dsql_unsupp_feature_dialect = 336397236;
4502 isc_dsql_cte_not_used = 336397237;
4503 isc_dsql_col_more_than_once_view = 336397238;
4504 isc_dsql_unsupported_in_auto_trans = 336397239;
4505 isc_dsql_eval_unknode = 336397240;
4506 isc_dsql_agg_wrongarg = 336397241;
4507 isc_dsql_agg2_wrongarg = 336397242;
4508 isc_dsql_nodateortime_pm_string = 336397243;
4509 isc_dsql_invalid_datetime_subtract = 336397244;
4510 isc_dsql_invalid_dateortime_add = 336397245;
4511 isc_dsql_invalid_type_minus_date = 336397246;
4512 isc_dsql_nostring_addsub_dial3 = 336397247;
4513 isc_dsql_invalid_type_addsub_dial3 = 336397248;
4514 isc_dsql_invalid_type_multip_dial1 = 336397249;
4515 isc_dsql_nostring_multip_dial3 = 336397250;
4516 isc_dsql_invalid_type_multip_dial3 = 336397251;
4517 isc_dsql_mustuse_numeric_div_dial1 = 336397252;
4518 isc_dsql_nostring_div_dial3 = 336397253;
4519 isc_dsql_invalid_type_div_dial3 = 336397254;
4520 isc_dsql_nostring_neg_dial3 = 336397255;
4521 isc_dsql_invalid_type_neg = 336397256;
4522 isc_dsql_max_distinct_items = 336397257;
4523 isc_dsql_alter_charset_failed = 336397258;
4524 isc_dsql_comment_on_failed = 336397259;
4525 isc_dsql_create_func_failed = 336397260;
4526 isc_dsql_alter_func_failed = 336397261;
4527 isc_dsql_create_alter_func_failed = 336397262;
4528 isc_dsql_drop_func_failed = 336397263;
4529 isc_dsql_recreate_func_failed = 336397264;
4530 isc_dsql_create_proc_failed = 336397265;
4531 isc_dsql_alter_proc_failed = 336397266;
4532 isc_dsql_create_alter_proc_failed = 336397267;
4533 isc_dsql_drop_proc_failed = 336397268;
4534 isc_dsql_recreate_proc_failed = 336397269;
4535 isc_dsql_create_trigger_failed = 336397270;
4536 isc_dsql_alter_trigger_failed = 336397271;
4537 isc_dsql_create_alter_trigger_failed = 336397272;
4538 isc_dsql_drop_trigger_failed = 336397273;
4539 isc_dsql_recreate_trigger_failed = 336397274;
4540 isc_dsql_create_collation_failed = 336397275;
4541 isc_dsql_drop_collation_failed = 336397276;
4542 isc_dsql_create_domain_failed = 336397277;
4543 isc_dsql_alter_domain_failed = 336397278;
4544 isc_dsql_drop_domain_failed = 336397279;
4545 isc_dsql_create_except_failed = 336397280;
4546 isc_dsql_alter_except_failed = 336397281;
4547 isc_dsql_create_alter_except_failed = 336397282;
4548 isc_dsql_recreate_except_failed = 336397283;
4549 isc_dsql_drop_except_failed = 336397284;
4550 isc_dsql_create_sequence_failed = 336397285;
4551 isc_dsql_create_table_failed = 336397286;
4552 isc_dsql_alter_table_failed = 336397287;
4553 isc_dsql_drop_table_failed = 336397288;
4554 isc_dsql_recreate_table_failed = 336397289;
4555 isc_dsql_create_pack_failed = 336397290;
4556 isc_dsql_alter_pack_failed = 336397291;
4557 isc_dsql_create_alter_pack_failed = 336397292;
4558 isc_dsql_drop_pack_failed = 336397293;
4559 isc_dsql_recreate_pack_failed = 336397294;
4560 isc_dsql_create_pack_body_failed = 336397295;
4561 isc_dsql_drop_pack_body_failed = 336397296;
4562 isc_dsql_recreate_pack_body_failed = 336397297;
4563 isc_dsql_create_view_failed = 336397298;
4564 isc_dsql_alter_view_failed = 336397299;
4565 isc_dsql_create_alter_view_failed = 336397300;
4566 isc_dsql_recreate_view_failed = 336397301;
4567 isc_dsql_drop_view_failed = 336397302;
4568 isc_dsql_drop_sequence_failed = 336397303;
4569 isc_dsql_recreate_sequence_failed = 336397304;
4570 isc_dsql_drop_index_failed = 336397305;
4571 isc_dsql_drop_filter_failed = 336397306;
4572 isc_dsql_drop_shadow_failed = 336397307;
4573 isc_dsql_drop_role_failed = 336397308;
4574 isc_dsql_drop_user_failed = 336397309;
4575 isc_dsql_create_role_failed = 336397310;
4576 isc_dsql_alter_role_failed = 336397311;
4577 isc_dsql_alter_index_failed = 336397312;
4578 isc_dsql_alter_database_failed = 336397313;
4579 isc_dsql_create_shadow_failed = 336397314;
4580 isc_dsql_create_filter_failed = 336397315;
4581 isc_dsql_create_index_failed = 336397316;
4582 isc_dsql_create_user_failed = 336397317;
4583 isc_dsql_alter_user_failed = 336397318;
4584 isc_dsql_grant_failed = 336397319;
4585 isc_dsql_revoke_failed = 336397320;
4586 isc_dsql_cte_recursive_aggregate = 336397321;
4587 isc_dsql_mapping_failed = 336397322;
4588 isc_dsql_alter_sequence_failed = 336397323;
4589 isc_dsql_create_generator_failed = 336397324;
4590 isc_dsql_set_generator_failed = 336397325;
4591 isc_dsql_wlock_simple = 336397326;
4592 isc_dsql_firstskip_rows = 336397327;
4593 isc_dsql_wlock_aggregates = 336397328;
4594 isc_dsql_wlock_conflict = 336397329;
4595 isc_dsql_max_exception_arguments = 336397330;
4596 isc_dsql_string_byte_length = 336397331;
4597 isc_dsql_string_char_length = 336397332;
4598 isc_dsql_max_nesting = 336397333;
4599 isc_gsec_cant_open_db = 336723983;
4600 isc_gsec_switches_error = 336723984;
4601 isc_gsec_no_op_spec = 336723985;
4602 isc_gsec_no_usr_name = 336723986;
4603 isc_gsec_err_add = 336723987;
4604 isc_gsec_err_modify = 336723988;
4605 isc_gsec_err_find_mod = 336723989;
4606 isc_gsec_err_rec_not_found = 336723990;
4607 isc_gsec_err_delete = 336723991;
4608 isc_gsec_err_find_del = 336723992;
4609 isc_gsec_err_find_disp = 336723996;
4610 isc_gsec_inv_param = 336723997;
4611 isc_gsec_op_specified = 336723998;
4612 isc_gsec_pw_specified = 336723999;
4613 isc_gsec_uid_specified = 336724000;
4614 isc_gsec_gid_specified = 336724001;
4615 isc_gsec_proj_specified = 336724002;
4616 isc_gsec_org_specified = 336724003;
4617 isc_gsec_fname_specified = 336724004;
4618 isc_gsec_mname_specified = 336724005;
4619 isc_gsec_lname_specified = 336724006;
4620 isc_gsec_inv_switch = 336724008;
4621 isc_gsec_amb_switch = 336724009;
4622 isc_gsec_no_op_specified = 336724010;
4623 isc_gsec_params_not_allowed = 336724011;
4624 isc_gsec_incompat_switch = 336724012;
4625 isc_gsec_inv_username = 336724044;
4626 isc_gsec_inv_pw_length = 336724045;
4627 isc_gsec_db_specified = 336724046;
4628 isc_gsec_db_admin_specified = 336724047;
4629 isc_gsec_db_admin_pw_specified = 336724048;
4630 isc_gsec_sql_role_specified = 336724049;
4631 isc_gstat_unknown_switch = 336920577;
4632 isc_gstat_retry = 336920578;
4633 isc_gstat_wrong_ods = 336920579;
4634 isc_gstat_unexpected_eof = 336920580;
4635 isc_gstat_open_err = 336920605;
4636 isc_gstat_read_err = 336920606;
4637 isc_gstat_sysmemex = 336920607;
4638 isc_fbsvcmgr_bad_am = 336986113;
4639 isc_fbsvcmgr_bad_wm = 336986114;
4640 isc_fbsvcmgr_bad_rs = 336986115;
4641 isc_fbsvcmgr_info_err = 336986116;
4642 isc_fbsvcmgr_query_err = 336986117;
4643 isc_fbsvcmgr_switch_unknown = 336986118;
4644 isc_fbsvcmgr_bad_sm = 336986159;
4645 isc_fbsvcmgr_fp_open = 336986160;
4646 isc_fbsvcmgr_fp_read = 336986161;
4647 isc_fbsvcmgr_fp_empty = 336986162;
4648 isc_fbsvcmgr_bad_arg = 336986164;
4649 isc_utl_trusted_switch = 337051649;
4650 isc_nbackup_missing_param = 337117213;
4651 isc_nbackup_allowed_switches = 337117214;
4652 isc_nbackup_unknown_param = 337117215;
4653 isc_nbackup_unknown_switch = 337117216;
4654 isc_nbackup_nofetchpw_svc = 337117217;
4655 isc_nbackup_pwfile_error = 337117218;
4656 isc_nbackup_size_with_lock = 337117219;
4657 isc_nbackup_no_switch = 337117220;
4658 isc_nbackup_err_read = 337117223;
4659 isc_nbackup_err_write = 337117224;
4660 isc_nbackup_err_seek = 337117225;
4661 isc_nbackup_err_opendb = 337117226;
4662 isc_nbackup_err_fadvice = 337117227;
4663 isc_nbackup_err_createdb = 337117228;
4664 isc_nbackup_err_openbk = 337117229;
4665 isc_nbackup_err_createbk = 337117230;
4666 isc_nbackup_err_eofdb = 337117231;
4667 isc_nbackup_fixup_wrongstate = 337117232;
4668 isc_nbackup_err_db = 337117233;
4669 isc_nbackup_userpw_toolong = 337117234;
4670 isc_nbackup_lostrec_db = 337117235;
4671 isc_nbackup_lostguid_db = 337117236;
4672 isc_nbackup_err_eofhdrdb = 337117237;
4673 isc_nbackup_db_notlock = 337117238;
4674 isc_nbackup_lostguid_bk = 337117239;
4675 isc_nbackup_page_changed = 337117240;
4676 isc_nbackup_dbsize_inconsistent = 337117241;
4677 isc_nbackup_failed_lzbk = 337117242;
4678 isc_nbackup_err_eofhdrbk = 337117243;
4679 isc_nbackup_invalid_incbk = 337117244;
4680 isc_nbackup_unsupvers_incbk = 337117245;
4681 isc_nbackup_invlevel_incbk = 337117246;
4682 isc_nbackup_wrong_orderbk = 337117247;
4683 isc_nbackup_err_eofbk = 337117248;
4684 isc_nbackup_err_copy = 337117249;
4685 isc_nbackup_err_eofhdr_restdb = 337117250;
4686 isc_nbackup_lostguid_l0bk = 337117251;
4687 isc_nbackup_switchd_parameter = 337117255;
4688 isc_nbackup_user_stop = 337117257;
4689 isc_nbackup_deco_parse = 337117259;
4690 isc_trace_conflict_acts = 337182750;
4691 isc_trace_act_notfound = 337182751;
4692 isc_trace_switch_once = 337182752;
4693 isc_trace_param_val_miss = 337182753;
4694 isc_trace_param_invalid = 337182754;
4695 isc_trace_switch_unknown = 337182755;
4696 isc_trace_switch_svc_only = 337182756;
4697 isc_trace_switch_user_only = 337182757;
4698 isc_trace_switch_param_miss = 337182758;
4699 isc_trace_param_act_notcompat = 337182759;
4700 isc_trace_mandatory_switch_miss = 337182760;
4701 }
4702 implementation
4703
4704 uses IBErrorCodes;
4705
4706 procedure IReferenceCounted.addRef();
4707 begin
4708 ReferenceCountedVTable(vTable).addRef(Self);
4709 end;
4710
4711 function IReferenceCounted.release(): Integer;
4712 begin
4713 Result := ReferenceCountedVTable(vTable).release(Self);
4714 end;
4715
4716 procedure IDisposable.dispose();
4717 begin
4718 DisposableVTable(vTable).dispose(Self);
4719 end;
4720
4721 procedure IStatus.init();
4722 begin
4723 StatusVTable(vTable).init(Self);
4724 end;
4725
4726 function IStatus.getState(): Cardinal;
4727 begin
4728 Result := StatusVTable(vTable).getState(Self);
4729 end;
4730
4731 procedure IStatus.setErrors2(length: Cardinal; value: NativeIntPtr);
4732 begin
4733 StatusVTable(vTable).setErrors2(Self, length, value);
4734 end;
4735
4736 procedure IStatus.setWarnings2(length: Cardinal; value: NativeIntPtr);
4737 begin
4738 StatusVTable(vTable).setWarnings2(Self, length, value);
4739 end;
4740
4741 procedure IStatus.setErrors(value: NativeIntPtr);
4742 begin
4743 StatusVTable(vTable).setErrors(Self, value);
4744 end;
4745
4746 procedure IStatus.setWarnings(value: NativeIntPtr);
4747 begin
4748 StatusVTable(vTable).setWarnings(Self, value);
4749 end;
4750
4751 function IStatus.getErrors(): NativeIntPtr;
4752 begin
4753 Result := StatusVTable(vTable).getErrors(Self);
4754 end;
4755
4756 function IStatus.getWarnings(): NativeIntPtr;
4757 begin
4758 Result := StatusVTable(vTable).getWarnings(Self);
4759 end;
4760
4761 function IStatus.clone(): IStatus;
4762 begin
4763 Result := StatusVTable(vTable).clone(Self);
4764 end;
4765
4766 function IMaster.getStatus(): IStatus;
4767 begin
4768 Result := MasterVTable(vTable).getStatus(Self);
4769 end;
4770
4771 function IMaster.getDispatcher(): IProvider;
4772 begin
4773 Result := MasterVTable(vTable).getDispatcher(Self);
4774 end;
4775
4776 function IMaster.getPluginManager(): IPluginManager;
4777 begin
4778 Result := MasterVTable(vTable).getPluginManager(Self);
4779 end;
4780
4781 function IMaster.getTimerControl(): ITimerControl;
4782 begin
4783 Result := MasterVTable(vTable).getTimerControl(Self);
4784 end;
4785
4786 function IMaster.getDtc(): IDtc;
4787 begin
4788 Result := MasterVTable(vTable).getDtc(Self);
4789 end;
4790
4791 function IMaster.registerAttachment(provider: IProvider; attachment: IAttachment): IAttachment;
4792 begin
4793 Result := MasterVTable(vTable).registerAttachment(Self, provider, attachment);
4794 end;
4795
4796 function IMaster.registerTransaction(attachment: IAttachment; transaction: ITransaction): ITransaction;
4797 begin
4798 Result := MasterVTable(vTable).registerTransaction(Self, attachment, transaction);
4799 end;
4800
4801 function IMaster.getMetadataBuilder(status: IStatus; fieldCount: Cardinal): IMetadataBuilder;
4802 begin
4803 Result := MasterVTable(vTable).getMetadataBuilder(Self, status, fieldCount);
4804 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4805 end;
4806
4807 function IMaster.serverMode(mode: Integer): Integer;
4808 begin
4809 Result := MasterVTable(vTable).serverMode(Self, mode);
4810 end;
4811
4812 function IMaster.getUtilInterface(): IUtil;
4813 begin
4814 Result := MasterVTable(vTable).getUtilInterface(Self);
4815 end;
4816
4817 function IMaster.getConfigManager(): IConfigManager;
4818 begin
4819 Result := MasterVTable(vTable).getConfigManager(Self);
4820 end;
4821
4822 function IMaster.getProcessExiting(): Boolean;
4823 begin
4824 Result := MasterVTable(vTable).getProcessExiting(Self);
4825 end;
4826
4827 procedure IPluginBase.setOwner(r: IReferenceCounted);
4828 begin
4829 PluginBaseVTable(vTable).setOwner(Self, r);
4830 end;
4831
4832 function IPluginBase.getOwner(): IReferenceCounted;
4833 begin
4834 Result := PluginBaseVTable(vTable).getOwner(Self);
4835 end;
4836
4837 function IPluginSet.getName(): PAnsiChar;
4838 begin
4839 Result := PluginSetVTable(vTable).getName(Self);
4840 end;
4841
4842 function IPluginSet.getModuleName(): PAnsiChar;
4843 begin
4844 Result := PluginSetVTable(vTable).getModuleName(Self);
4845 end;
4846
4847 function IPluginSet.getPlugin(status: IStatus): IPluginBase;
4848 begin
4849 Result := PluginSetVTable(vTable).getPlugin(Self, status);
4850 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4851 end;
4852
4853 procedure IPluginSet.next(status: IStatus);
4854 begin
4855 PluginSetVTable(vTable).next(Self, status);
4856 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4857 end;
4858
4859 procedure IPluginSet.set_(status: IStatus; s: PAnsiChar);
4860 begin
4861 PluginSetVTable(vTable).set_(Self, status, s);
4862 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4863 end;
4864
4865 function IConfigEntry.getName(): PAnsiChar;
4866 begin
4867 Result := ConfigEntryVTable(vTable).getName(Self);
4868 end;
4869
4870 function IConfigEntry.getValue(): PAnsiChar;
4871 begin
4872 Result := ConfigEntryVTable(vTable).getValue(Self);
4873 end;
4874
4875 function IConfigEntry.getIntValue(): Int64;
4876 begin
4877 Result := ConfigEntryVTable(vTable).getIntValue(Self);
4878 end;
4879
4880 function IConfigEntry.getBoolValue(): Boolean;
4881 begin
4882 Result := ConfigEntryVTable(vTable).getBoolValue(Self);
4883 end;
4884
4885 function IConfigEntry.getSubConfig(status: IStatus): IConfig;
4886 begin
4887 Result := ConfigEntryVTable(vTable).getSubConfig(Self, status);
4888 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4889 end;
4890
4891 function IConfig.find(status: IStatus; name: PAnsiChar): IConfigEntry;
4892 begin
4893 Result := ConfigVTable(vTable).find(Self, status, name);
4894 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4895 end;
4896
4897 function IConfig.findValue(status: IStatus; name: PAnsiChar; value: PAnsiChar): IConfigEntry;
4898 begin
4899 Result := ConfigVTable(vTable).findValue(Self, status, name, value);
4900 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4901 end;
4902
4903 function IConfig.findPos(status: IStatus; name: PAnsiChar; pos: Cardinal): IConfigEntry;
4904 begin
4905 Result := ConfigVTable(vTable).findPos(Self, status, name, pos);
4906 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4907 end;
4908
4909 function IFirebirdConf.getKey(name: PAnsiChar): Cardinal;
4910 begin
4911 Result := FirebirdConfVTable(vTable).getKey(Self, name);
4912 end;
4913
4914 function IFirebirdConf.asInteger(key: Cardinal): Int64;
4915 begin
4916 Result := FirebirdConfVTable(vTable).asInteger(Self, key);
4917 end;
4918
4919 function IFirebirdConf.asString(key: Cardinal): PAnsiChar;
4920 begin
4921 Result := FirebirdConfVTable(vTable).asString(Self, key);
4922 end;
4923
4924 function IFirebirdConf.asBoolean(key: Cardinal): Boolean;
4925 begin
4926 Result := FirebirdConfVTable(vTable).asBoolean(Self, key);
4927 end;
4928
4929 function IPluginConfig.getConfigFileName(): PAnsiChar;
4930 begin
4931 Result := PluginConfigVTable(vTable).getConfigFileName(Self);
4932 end;
4933
4934 function IPluginConfig.getDefaultConfig(status: IStatus): IConfig;
4935 begin
4936 Result := PluginConfigVTable(vTable).getDefaultConfig(Self, status);
4937 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4938 end;
4939
4940 function IPluginConfig.getFirebirdConf(status: IStatus): IFirebirdConf;
4941 begin
4942 Result := PluginConfigVTable(vTable).getFirebirdConf(Self, status);
4943 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4944 end;
4945
4946 procedure IPluginConfig.setReleaseDelay(status: IStatus; microSeconds: QWord);
4947 begin
4948 PluginConfigVTable(vTable).setReleaseDelay(Self, status, microSeconds);
4949 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4950 end;
4951
4952 function IPluginFactory.createPlugin(status: IStatus; factoryParameter: IPluginConfig): IPluginBase;
4953 begin
4954 Result := PluginFactoryVTable(vTable).createPlugin(Self, status, factoryParameter);
4955 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4956 end;
4957
4958 procedure IPluginModule.doClean();
4959 begin
4960 PluginModuleVTable(vTable).doClean(Self);
4961 end;
4962
4963 procedure IPluginManager.registerPluginFactory(pluginType: Cardinal; defaultName: PAnsiChar; factory: IPluginFactory);
4964 begin
4965 PluginManagerVTable(vTable).registerPluginFactory(Self, pluginType, defaultName, factory);
4966 end;
4967
4968 procedure IPluginManager.registerModule(cleanup: IPluginModule);
4969 begin
4970 PluginManagerVTable(vTable).registerModule(Self, cleanup);
4971 end;
4972
4973 procedure IPluginManager.unregisterModule(cleanup: IPluginModule);
4974 begin
4975 PluginManagerVTable(vTable).unregisterModule(Self, cleanup);
4976 end;
4977
4978 function IPluginManager.getPlugins(status: IStatus; pluginType: Cardinal; namesList: PAnsiChar; firebirdConf: IFirebirdConf): IPluginSet;
4979 begin
4980 Result := PluginManagerVTable(vTable).getPlugins(Self, status, pluginType, namesList, firebirdConf);
4981 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4982 end;
4983
4984 function IPluginManager.getConfig(status: IStatus; filename: PAnsiChar): IConfig;
4985 begin
4986 Result := PluginManagerVTable(vTable).getConfig(Self, status, filename);
4987 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4988 end;
4989
4990 procedure IPluginManager.releasePlugin(plugin: IPluginBase);
4991 begin
4992 PluginManagerVTable(vTable).releasePlugin(Self, plugin);
4993 end;
4994
4995 procedure ICryptKey.setSymmetric(status: IStatus; type_: PAnsiChar; keyLength: Cardinal; key: Pointer);
4996 begin
4997 CryptKeyVTable(vTable).setSymmetric(Self, status, type_, keyLength, key);
4998 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
4999 end;
5000
5001 procedure ICryptKey.setAsymmetric(status: IStatus; type_: PAnsiChar; encryptKeyLength: Cardinal; encryptKey: Pointer; decryptKeyLength: Cardinal; decryptKey: Pointer);
5002 begin
5003 CryptKeyVTable(vTable).setAsymmetric(Self, status, type_, encryptKeyLength, encryptKey, decryptKeyLength, decryptKey);
5004 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5005 end;
5006
5007 function ICryptKey.getEncryptKey(length: CardinalPtr): Pointer;
5008 begin
5009 Result := CryptKeyVTable(vTable).getEncryptKey(Self, length);
5010 end;
5011
5012 function ICryptKey.getDecryptKey(length: CardinalPtr): Pointer;
5013 begin
5014 Result := CryptKeyVTable(vTable).getDecryptKey(Self, length);
5015 end;
5016
5017 function IConfigManager.getDirectory(code: Cardinal): PAnsiChar;
5018 begin
5019 Result := ConfigManagerVTable(vTable).getDirectory(Self, code);
5020 end;
5021
5022 function IConfigManager.getFirebirdConf(): IFirebirdConf;
5023 begin
5024 Result := ConfigManagerVTable(vTable).getFirebirdConf(Self);
5025 end;
5026
5027 function IConfigManager.getDatabaseConf(dbName: PAnsiChar): IFirebirdConf;
5028 begin
5029 Result := ConfigManagerVTable(vTable).getDatabaseConf(Self, dbName);
5030 end;
5031
5032 function IConfigManager.getPluginConfig(configuredPlugin: PAnsiChar): IConfig;
5033 begin
5034 Result := ConfigManagerVTable(vTable).getPluginConfig(Self, configuredPlugin);
5035 end;
5036
5037 function IConfigManager.getInstallDirectory(): PAnsiChar;
5038 begin
5039 Result := ConfigManagerVTable(vTable).getInstallDirectory(Self);
5040 end;
5041
5042 function IConfigManager.getRootDirectory(): PAnsiChar;
5043 begin
5044 Result := ConfigManagerVTable(vTable).getRootDirectory(Self);
5045 end;
5046
5047 procedure IEventCallback.eventCallbackFunction(length: Cardinal; events: BytePtr);
5048 begin
5049 EventCallbackVTable(vTable).eventCallbackFunction(Self, length, events);
5050 end;
5051
5052 procedure IBlob.getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
5053 begin
5054 BlobVTable(vTable).getInfo(Self, status, itemsLength, items, bufferLength, buffer);
5055 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5056 end;
5057
5058 function IBlob.getSegment(status: IStatus; bufferLength: Cardinal; buffer: Pointer; segmentLength: CardinalPtr): Integer;
5059 begin
5060 Result := BlobVTable(vTable).getSegment(Self, status, bufferLength, buffer, segmentLength);
5061 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5062 end;
5063
5064 procedure IBlob.putSegment(status: IStatus; length: Cardinal; buffer: Pointer);
5065 begin
5066 BlobVTable(vTable).putSegment(Self, status, length, buffer);
5067 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5068 end;
5069
5070 procedure IBlob.cancel(status: IStatus);
5071 begin
5072 BlobVTable(vTable).cancel(Self, status);
5073 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5074 end;
5075
5076 procedure IBlob.close(status: IStatus);
5077 begin
5078 BlobVTable(vTable).close(Self, status);
5079 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5080 end;
5081
5082 function IBlob.seek(status: IStatus; mode: Integer; offset: Integer): Integer;
5083 begin
5084 Result := BlobVTable(vTable).seek(Self, status, mode, offset);
5085 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5086 end;
5087
5088 procedure ITransaction.getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
5089 begin
5090 TransactionVTable(vTable).getInfo(Self, status, itemsLength, items, bufferLength, buffer);
5091 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5092 end;
5093
5094 procedure ITransaction.prepare(status: IStatus; msgLength: Cardinal; message: BytePtr);
5095 begin
5096 TransactionVTable(vTable).prepare(Self, status, msgLength, message);
5097 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5098 end;
5099
5100 procedure ITransaction.commit(status: IStatus);
5101 begin
5102 TransactionVTable(vTable).commit(Self, status);
5103 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5104 end;
5105
5106 procedure ITransaction.commitRetaining(status: IStatus);
5107 begin
5108 TransactionVTable(vTable).commitRetaining(Self, status);
5109 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5110 end;
5111
5112 procedure ITransaction.rollback(status: IStatus);
5113 begin
5114 TransactionVTable(vTable).rollback(Self, status);
5115 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5116 end;
5117
5118 procedure ITransaction.rollbackRetaining(status: IStatus);
5119 begin
5120 TransactionVTable(vTable).rollbackRetaining(Self, status);
5121 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5122 end;
5123
5124 procedure ITransaction.disconnect(status: IStatus);
5125 begin
5126 TransactionVTable(vTable).disconnect(Self, status);
5127 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5128 end;
5129
5130 function ITransaction.join(status: IStatus; transaction: ITransaction): ITransaction;
5131 begin
5132 Result := TransactionVTable(vTable).join(Self, status, transaction);
5133 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5134 end;
5135
5136 function ITransaction.validate(status: IStatus; attachment: IAttachment): ITransaction;
5137 begin
5138 Result := TransactionVTable(vTable).validate(Self, status, attachment);
5139 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5140 end;
5141
5142 function ITransaction.enterDtc(status: IStatus): ITransaction;
5143 begin
5144 Result := TransactionVTable(vTable).enterDtc(Self, status);
5145 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5146 end;
5147
5148 function IMessageMetadata.getCount(status: IStatus): Cardinal;
5149 begin
5150 Result := MessageMetadataVTable(vTable).getCount(Self, status);
5151 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5152 end;
5153
5154 function IMessageMetadata.getField(status: IStatus; index: Cardinal): PAnsiChar;
5155 begin
5156 Result := MessageMetadataVTable(vTable).getField(Self, status, index);
5157 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5158 end;
5159
5160 function IMessageMetadata.getRelation(status: IStatus; index: Cardinal): PAnsiChar;
5161 begin
5162 Result := MessageMetadataVTable(vTable).getRelation(Self, status, index);
5163 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5164 end;
5165
5166 function IMessageMetadata.getOwner(status: IStatus; index: Cardinal): PAnsiChar;
5167 begin
5168 Result := MessageMetadataVTable(vTable).getOwner(Self, status, index);
5169 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5170 end;
5171
5172 function IMessageMetadata.getAlias(status: IStatus; index: Cardinal): PAnsiChar;
5173 begin
5174 Result := MessageMetadataVTable(vTable).getAlias(Self, status, index);
5175 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5176 end;
5177
5178 function IMessageMetadata.getType(status: IStatus; index: Cardinal): Cardinal;
5179 begin
5180 Result := MessageMetadataVTable(vTable).getType(Self, status, index);
5181 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5182 end;
5183
5184 function IMessageMetadata.isNullable(status: IStatus; index: Cardinal): Boolean;
5185 begin
5186 Result := MessageMetadataVTable(vTable).isNullable(Self, status, index);
5187 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5188 end;
5189
5190 function IMessageMetadata.getSubType(status: IStatus; index: Cardinal): Integer;
5191 begin
5192 Result := MessageMetadataVTable(vTable).getSubType(Self, status, index);
5193 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5194 end;
5195
5196 function IMessageMetadata.getLength(status: IStatus; index: Cardinal): Cardinal;
5197 begin
5198 Result := MessageMetadataVTable(vTable).getLength(Self, status, index);
5199 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5200 end;
5201
5202 function IMessageMetadata.getScale(status: IStatus; index: Cardinal): Integer;
5203 begin
5204 Result := MessageMetadataVTable(vTable).getScale(Self, status, index);
5205 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5206 end;
5207
5208 function IMessageMetadata.getCharSet(status: IStatus; index: Cardinal): Cardinal;
5209 begin
5210 Result := MessageMetadataVTable(vTable).getCharSet(Self, status, index);
5211 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5212 end;
5213
5214 function IMessageMetadata.getOffset(status: IStatus; index: Cardinal): Cardinal;
5215 begin
5216 Result := MessageMetadataVTable(vTable).getOffset(Self, status, index);
5217 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5218 end;
5219
5220 function IMessageMetadata.getNullOffset(status: IStatus; index: Cardinal): Cardinal;
5221 begin
5222 Result := MessageMetadataVTable(vTable).getNullOffset(Self, status, index);
5223 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5224 end;
5225
5226 function IMessageMetadata.getBuilder(status: IStatus): IMetadataBuilder;
5227 begin
5228 Result := MessageMetadataVTable(vTable).getBuilder(Self, status);
5229 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5230 end;
5231
5232 function IMessageMetadata.getMessageLength(status: IStatus): Cardinal;
5233 begin
5234 Result := MessageMetadataVTable(vTable).getMessageLength(Self, status);
5235 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5236 end;
5237
5238 procedure IMetadataBuilder.setType(status: IStatus; index: Cardinal; type_: Cardinal);
5239 begin
5240 MetadataBuilderVTable(vTable).setType(Self, status, index, type_);
5241 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5242 end;
5243
5244 procedure IMetadataBuilder.setSubType(status: IStatus; index: Cardinal; subType: Integer);
5245 begin
5246 MetadataBuilderVTable(vTable).setSubType(Self, status, index, subType);
5247 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5248 end;
5249
5250 procedure IMetadataBuilder.setLength(status: IStatus; index: Cardinal; length: Cardinal);
5251 begin
5252 MetadataBuilderVTable(vTable).setLength(Self, status, index, length);
5253 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5254 end;
5255
5256 procedure IMetadataBuilder.setCharSet(status: IStatus; index: Cardinal; charSet: Cardinal);
5257 begin
5258 MetadataBuilderVTable(vTable).setCharSet(Self, status, index, charSet);
5259 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5260 end;
5261
5262 procedure IMetadataBuilder.setScale(status: IStatus; index: Cardinal; scale: integer);
5263 begin
5264 MetadataBuilderVTable(vTable).setScale(Self, status, index, scale);
5265 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5266 end;
5267
5268 procedure IMetadataBuilder.truncate(status: IStatus; count: Cardinal);
5269 begin
5270 MetadataBuilderVTable(vTable).truncate(Self, status, count);
5271 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5272 end;
5273
5274 procedure IMetadataBuilder.moveNameToIndex(status: IStatus; name: PAnsiChar; index: Cardinal);
5275 begin
5276 MetadataBuilderVTable(vTable).moveNameToIndex(Self, status, name, index);
5277 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5278 end;
5279
5280 procedure IMetadataBuilder.remove(status: IStatus; index: Cardinal);
5281 begin
5282 MetadataBuilderVTable(vTable).remove(Self, status, index);
5283 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5284 end;
5285
5286 function IMetadataBuilder.addField(status: IStatus): Cardinal;
5287 begin
5288 Result := MetadataBuilderVTable(vTable).addField(Self, status);
5289 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5290 end;
5291
5292 function IMetadataBuilder.getMetadata(status: IStatus): IMessageMetadata;
5293 begin
5294 Result := MetadataBuilderVTable(vTable).getMetadata(Self, status);
5295 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5296 end;
5297
5298 function IResultSet.fetchNext(status: IStatus; message: Pointer): Integer;
5299 begin
5300 Result := ResultSetVTable(vTable).fetchNext(Self, status, message);
5301 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5302 end;
5303
5304 function IResultSet.fetchPrior(status: IStatus; message: Pointer): Integer;
5305 begin
5306 Result := ResultSetVTable(vTable).fetchPrior(Self, status, message);
5307 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5308 end;
5309
5310 function IResultSet.fetchFirst(status: IStatus; message: Pointer): Integer;
5311 begin
5312 Result := ResultSetVTable(vTable).fetchFirst(Self, status, message);
5313 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5314 end;
5315
5316 function IResultSet.fetchLast(status: IStatus; message: Pointer): Integer;
5317 begin
5318 Result := ResultSetVTable(vTable).fetchLast(Self, status, message);
5319 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5320 end;
5321
5322 function IResultSet.fetchAbsolute(status: IStatus; position: Integer; message: Pointer): Integer;
5323 begin
5324 Result := ResultSetVTable(vTable).fetchAbsolute(Self, status, position, message);
5325 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5326 end;
5327
5328 function IResultSet.fetchRelative(status: IStatus; offset: Integer; message: Pointer): Integer;
5329 begin
5330 Result := ResultSetVTable(vTable).fetchRelative(Self, status, offset, message);
5331 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5332 end;
5333
5334 function IResultSet.isEof(status: IStatus): Boolean;
5335 begin
5336 Result := ResultSetVTable(vTable).isEof(Self, status);
5337 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5338 end;
5339
5340 function IResultSet.isBof(status: IStatus): Boolean;
5341 begin
5342 Result := ResultSetVTable(vTable).isBof(Self, status);
5343 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5344 end;
5345
5346 function IResultSet.getMetadata(status: IStatus): IMessageMetadata;
5347 begin
5348 Result := ResultSetVTable(vTable).getMetadata(Self, status);
5349 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5350 end;
5351
5352 procedure IResultSet.close(status: IStatus);
5353 begin
5354 ResultSetVTable(vTable).close(Self, status);
5355 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5356 end;
5357
5358 procedure IResultSet.setDelayedOutputFormat(status: IStatus; format: IMessageMetadata);
5359 begin
5360 ResultSetVTable(vTable).setDelayedOutputFormat(Self, status, format);
5361 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5362 end;
5363
5364 procedure IStatement.getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
5365 begin
5366 StatementVTable(vTable).getInfo(Self, status, itemsLength, items, bufferLength, buffer);
5367 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5368 end;
5369
5370 function IStatement.getType(status: IStatus): Cardinal;
5371 begin
5372 Result := StatementVTable(vTable).getType(Self, status);
5373 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5374 end;
5375
5376 function IStatement.getPlan(status: IStatus; detailed: Boolean): PAnsiChar;
5377 begin
5378 Result := StatementVTable(vTable).getPlan(Self, status, detailed);
5379 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5380 end;
5381
5382 function IStatement.getAffectedRecords(status: IStatus): QWord;
5383 begin
5384 Result := StatementVTable(vTable).getAffectedRecords(Self, status);
5385 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5386 end;
5387
5388 function IStatement.getInputMetadata(status: IStatus): IMessageMetadata;
5389 begin
5390 Result := StatementVTable(vTable).getInputMetadata(Self, status);
5391 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5392 end;
5393
5394 function IStatement.getOutputMetadata(status: IStatus): IMessageMetadata;
5395 begin
5396 Result := StatementVTable(vTable).getOutputMetadata(Self, status);
5397 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5398 end;
5399
5400 function IStatement.execute(status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction;
5401 begin
5402 Result := StatementVTable(vTable).execute(Self, status, transaction, inMetadata, inBuffer, outMetadata, outBuffer);
5403 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5404 end;
5405
5406 function IStatement.openCursor(status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; flags: Cardinal): IResultSet;
5407 begin
5408 Result := StatementVTable(vTable).openCursor(Self, status, transaction, inMetadata, inBuffer, outMetadata, flags);
5409 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5410 end;
5411
5412 procedure IStatement.setCursorName(status: IStatus; name: PAnsiChar);
5413 begin
5414 StatementVTable(vTable).setCursorName(Self, status, name);
5415 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5416 end;
5417
5418 procedure IStatement.free(status: IStatus);
5419 begin
5420 StatementVTable(vTable).free(Self, status);
5421 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5422 end;
5423
5424 function IStatement.getFlags(status: IStatus): Cardinal;
5425 begin
5426 Result := StatementVTable(vTable).getFlags(Self, status);
5427 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5428 end;
5429
5430 procedure IRequest.receive(status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr);
5431 begin
5432 RequestVTable(vTable).receive(Self, status, level, msgType, length, message);
5433 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5434 end;
5435
5436 procedure IRequest.send(status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr);
5437 begin
5438 RequestVTable(vTable).send(Self, status, level, msgType, length, message);
5439 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5440 end;
5441
5442 procedure IRequest.getInfo(status: IStatus; level: Integer; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
5443 begin
5444 RequestVTable(vTable).getInfo(Self, status, level, itemsLength, items, bufferLength, buffer);
5445 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5446 end;
5447
5448 procedure IRequest.start(status: IStatus; tra: ITransaction; level: Integer);
5449 begin
5450 RequestVTable(vTable).start(Self, status, tra, level);
5451 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5452 end;
5453
5454 procedure IRequest.startAndSend(status: IStatus; tra: ITransaction; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr);
5455 begin
5456 RequestVTable(vTable).startAndSend(Self, status, tra, level, msgType, length, message);
5457 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5458 end;
5459
5460 procedure IRequest.unwind(status: IStatus; level: Integer);
5461 begin
5462 RequestVTable(vTable).unwind(Self, status, level);
5463 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5464 end;
5465
5466 procedure IRequest.free(status: IStatus);
5467 begin
5468 RequestVTable(vTable).free(Self, status);
5469 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5470 end;
5471
5472 procedure IEvents.cancel(status: IStatus);
5473 begin
5474 EventsVTable(vTable).cancel(Self, status);
5475 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5476 end;
5477
5478 procedure IAttachment.getInfo(status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
5479 begin
5480 AttachmentVTable(vTable).getInfo(Self, status, itemsLength, items, bufferLength, buffer);
5481 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5482 end;
5483
5484 function IAttachment.startTransaction(status: IStatus; tpbLength: Cardinal; tpb: BytePtr): ITransaction;
5485 begin
5486 Result := AttachmentVTable(vTable).startTransaction(Self, status, tpbLength, tpb);
5487 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5488 end;
5489
5490 function IAttachment.reconnectTransaction(status: IStatus; length: Cardinal; id: BytePtr): ITransaction;
5491 begin
5492 Result := AttachmentVTable(vTable).reconnectTransaction(Self, status, length, id);
5493 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5494 end;
5495
5496 function IAttachment.compileRequest(status: IStatus; blrLength: Cardinal; blr: BytePtr): IRequest;
5497 begin
5498 Result := AttachmentVTable(vTable).compileRequest(Self, status, blrLength, blr);
5499 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5500 end;
5501
5502 procedure IAttachment.transactRequest(status: IStatus; transaction: ITransaction; blrLength: Cardinal; blr: BytePtr; inMsgLength: Cardinal; inMsg: BytePtr; outMsgLength: Cardinal; outMsg: BytePtr);
5503 begin
5504 AttachmentVTable(vTable).transactRequest(Self, status, transaction, blrLength, blr, inMsgLength, inMsg, outMsgLength, outMsg);
5505 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5506 end;
5507
5508 function IAttachment.createBlob(status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob;
5509 begin
5510 Result := AttachmentVTable(vTable).createBlob(Self, status, transaction, id, bpbLength, bpb);
5511 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5512 end;
5513
5514 function IAttachment.openBlob(status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob;
5515 begin
5516 Result := AttachmentVTable(vTable).openBlob(Self, status, transaction, id, bpbLength, bpb);
5517 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5518 end;
5519
5520 function IAttachment.getSlice(status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr): Integer;
5521 begin
5522 Result := AttachmentVTable(vTable).getSlice(Self, status, transaction, id, sdlLength, sdl, paramLength, param, sliceLength, slice);
5523 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5524 end;
5525
5526 procedure IAttachment.putSlice(status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr);
5527 begin
5528 AttachmentVTable(vTable).putSlice(Self, status, transaction, id, sdlLength, sdl, paramLength, param, sliceLength, slice);
5529 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5530 end;
5531
5532 procedure IAttachment.executeDyn(status: IStatus; transaction: ITransaction; length: Cardinal; dyn: BytePtr);
5533 begin
5534 AttachmentVTable(vTable).executeDyn(Self, status, transaction, length, dyn);
5535 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5536 end;
5537
5538 function IAttachment.prepare(status: IStatus; tra: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; flags: Cardinal): IStatement;
5539 begin
5540 Result := AttachmentVTable(vTable).prepare(Self, status, tra, stmtLength, sqlStmt, dialect, flags);
5541 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5542 end;
5543
5544 function IAttachment.execute(status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction;
5545 begin
5546 Result := AttachmentVTable(vTable).execute(Self, status, transaction, stmtLength, sqlStmt, dialect, inMetadata, inBuffer, outMetadata, outBuffer);
5547 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5548 end;
5549
5550 function IAttachment.openCursor(status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; cursorName: PAnsiChar; cursorFlags: Cardinal): IResultSet;
5551 begin
5552 Result := AttachmentVTable(vTable).openCursor(Self, status, transaction, stmtLength, sqlStmt, dialect, inMetadata, inBuffer, outMetadata, cursorName, cursorFlags);
5553 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5554 end;
5555
5556 function IAttachment.queEvents(status: IStatus; callback: IEventCallback; length: Cardinal; events: BytePtr): IEvents;
5557 begin
5558 Result := AttachmentVTable(vTable).queEvents(Self, status, callback, length, events);
5559 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5560 end;
5561
5562 procedure IAttachment.cancelOperation(status: IStatus; option: Integer);
5563 begin
5564 AttachmentVTable(vTable).cancelOperation(Self, status, option);
5565 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5566 end;
5567
5568 procedure IAttachment.ping(status: IStatus);
5569 begin
5570 AttachmentVTable(vTable).ping(Self, status);
5571 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5572 end;
5573
5574 procedure IAttachment.detach(status: IStatus);
5575 begin
5576 AttachmentVTable(vTable).detach(Self, status);
5577 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5578 end;
5579
5580 procedure IAttachment.dropDatabase(status: IStatus);
5581 begin
5582 AttachmentVTable(vTable).dropDatabase(Self, status);
5583 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5584 end;
5585
5586 procedure IService.detach(status: IStatus);
5587 begin
5588 ServiceVTable(vTable).detach(Self, status);
5589 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5590 end;
5591
5592 procedure IService.query(status: IStatus; sendLength: Cardinal; sendItems: BytePtr; receiveLength: Cardinal; receiveItems: BytePtr; bufferLength: Cardinal; buffer: BytePtr);
5593 begin
5594 ServiceVTable(vTable).query(Self, status, sendLength, sendItems, receiveLength, receiveItems, bufferLength, buffer);
5595 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5596 end;
5597
5598 procedure IService.start(status: IStatus; spbLength: Cardinal; spb: BytePtr);
5599 begin
5600 ServiceVTable(vTable).start(Self, status, spbLength, spb);
5601 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5602 end;
5603
5604 function IProvider.attachDatabase(status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment;
5605 begin
5606 Result := ProviderVTable(vTable).attachDatabase(Self, status, fileName, dpbLength, dpb);
5607 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5608 end;
5609
5610 function IProvider.createDatabase(status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment;
5611 begin
5612 Result := ProviderVTable(vTable).createDatabase(Self, status, fileName, dpbLength, dpb);
5613 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5614 end;
5615
5616 function IProvider.attachServiceManager(status: IStatus; service: PAnsiChar; spbLength: Cardinal; spb: BytePtr): IService;
5617 begin
5618 Result := ProviderVTable(vTable).attachServiceManager(Self, status, service, spbLength, spb);
5619 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5620 end;
5621
5622 procedure IProvider.shutdown(status: IStatus; timeout: Cardinal; reason: Integer);
5623 begin
5624 ProviderVTable(vTable).shutdown(Self, status, timeout, reason);
5625 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5626 end;
5627
5628 procedure IProvider.setDbCryptCallback(status: IStatus; cryptCallback: ICryptKeyCallback);
5629 begin
5630 ProviderVTable(vTable).setDbCryptCallback(Self, status, cryptCallback);
5631 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5632 end;
5633
5634 procedure IDtcStart.addAttachment(status: IStatus; att: IAttachment);
5635 begin
5636 DtcStartVTable(vTable).addAttachment(Self, status, att);
5637 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5638 end;
5639
5640 procedure IDtcStart.addWithTpb(status: IStatus; att: IAttachment; length: Cardinal; tpb: BytePtr);
5641 begin
5642 DtcStartVTable(vTable).addWithTpb(Self, status, att, length, tpb);
5643 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5644 end;
5645
5646 function IDtcStart.start(status: IStatus): ITransaction;
5647 begin
5648 Result := DtcStartVTable(vTable).start(Self, status);
5649 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5650 end;
5651
5652 function IDtc.join(status: IStatus; one: ITransaction; two: ITransaction): ITransaction;
5653 begin
5654 Result := DtcVTable(vTable).join(Self, status, one, two);
5655 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5656 end;
5657
5658 function IDtc.startBuilder(status: IStatus): IDtcStart;
5659 begin
5660 Result := DtcVTable(vTable).startBuilder(Self, status);
5661 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5662 end;
5663
5664 procedure IWriter.reset();
5665 begin
5666 WriterVTable(vTable).reset(Self);
5667 end;
5668
5669 procedure IWriter.add(status: IStatus; name: PAnsiChar);
5670 begin
5671 WriterVTable(vTable).add(Self, status, name);
5672 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5673 end;
5674
5675 procedure IWriter.setType(status: IStatus; value: PAnsiChar);
5676 begin
5677 WriterVTable(vTable).setType(Self, status, value);
5678 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5679 end;
5680
5681 procedure IWriter.setDb(status: IStatus; value: PAnsiChar);
5682 begin
5683 WriterVTable(vTable).setDb(Self, status, value);
5684 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5685 end;
5686
5687 function IServerBlock.getLogin(): PAnsiChar;
5688 begin
5689 Result := ServerBlockVTable(vTable).getLogin(Self);
5690 end;
5691
5692 function IServerBlock.getData(length: CardinalPtr): BytePtr;
5693 begin
5694 Result := ServerBlockVTable(vTable).getData(Self, length);
5695 end;
5696
5697 procedure IServerBlock.putData(status: IStatus; length: Cardinal; data: Pointer);
5698 begin
5699 ServerBlockVTable(vTable).putData(Self, status, length, data);
5700 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5701 end;
5702
5703 function IServerBlock.newKey(status: IStatus): ICryptKey;
5704 begin
5705 Result := ServerBlockVTable(vTable).newKey(Self, status);
5706 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5707 end;
5708
5709 function IClientBlock.getLogin(): PAnsiChar;
5710 begin
5711 Result := ClientBlockVTable(vTable).getLogin(Self);
5712 end;
5713
5714 function IClientBlock.getPassword(): PAnsiChar;
5715 begin
5716 Result := ClientBlockVTable(vTable).getPassword(Self);
5717 end;
5718
5719 function IClientBlock.getData(length: CardinalPtr): BytePtr;
5720 begin
5721 Result := ClientBlockVTable(vTable).getData(Self, length);
5722 end;
5723
5724 procedure IClientBlock.putData(status: IStatus; length: Cardinal; data: Pointer);
5725 begin
5726 ClientBlockVTable(vTable).putData(Self, status, length, data);
5727 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5728 end;
5729
5730 function IClientBlock.newKey(status: IStatus): ICryptKey;
5731 begin
5732 Result := ClientBlockVTable(vTable).newKey(Self, status);
5733 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5734 end;
5735
5736 function IServer.authenticate(status: IStatus; sBlock: IServerBlock; writerInterface: IWriter): Integer;
5737 begin
5738 Result := ServerVTable(vTable).authenticate(Self, status, sBlock, writerInterface);
5739 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5740 end;
5741
5742 function IClient.authenticate(status: IStatus; cBlock: IClientBlock): Integer;
5743 begin
5744 Result := ClientVTable(vTable).authenticate(Self, status, cBlock);
5745 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5746 end;
5747
5748 function IUserField.entered(): Integer;
5749 begin
5750 Result := UserFieldVTable(vTable).entered(Self);
5751 end;
5752
5753 function IUserField.specified(): Integer;
5754 begin
5755 Result := UserFieldVTable(vTable).specified(Self);
5756 end;
5757
5758 procedure IUserField.setEntered(status: IStatus; newValue: Integer);
5759 begin
5760 UserFieldVTable(vTable).setEntered(Self, status, newValue);
5761 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5762 end;
5763
5764 function ICharUserField.get(): PAnsiChar;
5765 begin
5766 Result := CharUserFieldVTable(vTable).get(Self);
5767 end;
5768
5769 procedure ICharUserField.set_(status: IStatus; newValue: PAnsiChar);
5770 begin
5771 CharUserFieldVTable(vTable).set_(Self, status, newValue);
5772 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5773 end;
5774
5775 function IIntUserField.get(): Integer;
5776 begin
5777 Result := IntUserFieldVTable(vTable).get(Self);
5778 end;
5779
5780 procedure IIntUserField.set_(status: IStatus; newValue: Integer);
5781 begin
5782 IntUserFieldVTable(vTable).set_(Self, status, newValue);
5783 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5784 end;
5785
5786 function IUser.operation(): Cardinal;
5787 begin
5788 Result := UserVTable(vTable).operation(Self);
5789 end;
5790
5791 function IUser.userName(): ICharUserField;
5792 begin
5793 Result := UserVTable(vTable).userName(Self);
5794 end;
5795
5796 function IUser.password(): ICharUserField;
5797 begin
5798 Result := UserVTable(vTable).password(Self);
5799 end;
5800
5801 function IUser.firstName(): ICharUserField;
5802 begin
5803 Result := UserVTable(vTable).firstName(Self);
5804 end;
5805
5806 function IUser.lastName(): ICharUserField;
5807 begin
5808 Result := UserVTable(vTable).lastName(Self);
5809 end;
5810
5811 function IUser.middleName(): ICharUserField;
5812 begin
5813 Result := UserVTable(vTable).middleName(Self);
5814 end;
5815
5816 function IUser.comment(): ICharUserField;
5817 begin
5818 Result := UserVTable(vTable).comment(Self);
5819 end;
5820
5821 function IUser.attributes(): ICharUserField;
5822 begin
5823 Result := UserVTable(vTable).attributes(Self);
5824 end;
5825
5826 function IUser.active(): IIntUserField;
5827 begin
5828 Result := UserVTable(vTable).active(Self);
5829 end;
5830
5831 function IUser.admin(): IIntUserField;
5832 begin
5833 Result := UserVTable(vTable).admin(Self);
5834 end;
5835
5836 procedure IUser.clear(status: IStatus);
5837 begin
5838 UserVTable(vTable).clear(Self, status);
5839 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5840 end;
5841
5842 procedure IListUsers.list(status: IStatus; user: IUser);
5843 begin
5844 ListUsersVTable(vTable).list(Self, status, user);
5845 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5846 end;
5847
5848 function ILogonInfo.name(): PAnsiChar;
5849 begin
5850 Result := LogonInfoVTable(vTable).name(Self);
5851 end;
5852
5853 function ILogonInfo.role(): PAnsiChar;
5854 begin
5855 Result := LogonInfoVTable(vTable).role(Self);
5856 end;
5857
5858 function ILogonInfo.networkProtocol(): PAnsiChar;
5859 begin
5860 Result := LogonInfoVTable(vTable).networkProtocol(Self);
5861 end;
5862
5863 function ILogonInfo.remoteAddress(): PAnsiChar;
5864 begin
5865 Result := LogonInfoVTable(vTable).remoteAddress(Self);
5866 end;
5867
5868 function ILogonInfo.authBlock(length: CardinalPtr): BytePtr;
5869 begin
5870 Result := LogonInfoVTable(vTable).authBlock(Self, length);
5871 end;
5872
5873 procedure IManagement.start(status: IStatus; logonInfo: ILogonInfo);
5874 begin
5875 ManagementVTable(vTable).start(Self, status, logonInfo);
5876 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5877 end;
5878
5879 function IManagement.execute(status: IStatus; user: IUser; callback: IListUsers): Integer;
5880 begin
5881 Result := ManagementVTable(vTable).execute(Self, status, user, callback);
5882 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5883 end;
5884
5885 procedure IManagement.commit(status: IStatus);
5886 begin
5887 ManagementVTable(vTable).commit(Self, status);
5888 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5889 end;
5890
5891 procedure IManagement.rollback(status: IStatus);
5892 begin
5893 ManagementVTable(vTable).rollback(Self, status);
5894 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5895 end;
5896
5897 function IWireCryptPlugin.getKnownTypes(status: IStatus): PAnsiChar;
5898 begin
5899 Result := WireCryptPluginVTable(vTable).getKnownTypes(Self, status);
5900 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5901 end;
5902
5903 procedure IWireCryptPlugin.setKey(status: IStatus; key: ICryptKey);
5904 begin
5905 WireCryptPluginVTable(vTable).setKey(Self, status, key);
5906 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5907 end;
5908
5909 procedure IWireCryptPlugin.encrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
5910 begin
5911 WireCryptPluginVTable(vTable).encrypt(Self, status, length, from, to_);
5912 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5913 end;
5914
5915 procedure IWireCryptPlugin.decrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
5916 begin
5917 WireCryptPluginVTable(vTable).decrypt(Self, status, length, from, to_);
5918 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5919 end;
5920
5921 function ICryptKeyCallback.callback(dataLength: Cardinal; data: Pointer; bufferLength: Cardinal; buffer: Pointer): Cardinal;
5922 begin
5923 Result := CryptKeyCallbackVTable(vTable).callback(Self, dataLength, data, bufferLength, buffer);
5924 end;
5925
5926 function IKeyHolderPlugin.keyCallback(status: IStatus; callback: ICryptKeyCallback): Integer;
5927 begin
5928 Result := KeyHolderPluginVTable(vTable).keyCallback(Self, status, callback);
5929 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5930 end;
5931
5932 function IKeyHolderPlugin.keyHandle(status: IStatus; keyName: PAnsiChar): ICryptKeyCallback;
5933 begin
5934 Result := KeyHolderPluginVTable(vTable).keyHandle(Self, status, keyName);
5935 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5936 end;
5937
5938 procedure IDbCryptPlugin.setKey(status: IStatus; length: Cardinal; sources: IKeyHolderPluginPtr; keyName: PAnsiChar);
5939 begin
5940 DbCryptPluginVTable(vTable).setKey(Self, status, length, sources, keyName);
5941 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5942 end;
5943
5944 procedure IDbCryptPlugin.encrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
5945 begin
5946 DbCryptPluginVTable(vTable).encrypt(Self, status, length, from, to_);
5947 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5948 end;
5949
5950 procedure IDbCryptPlugin.decrypt(status: IStatus; length: Cardinal; from: Pointer; to_: Pointer);
5951 begin
5952 DbCryptPluginVTable(vTable).decrypt(Self, status, length, from, to_);
5953 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5954 end;
5955
5956 function IExternalContext.getMaster(): IMaster;
5957 begin
5958 Result := ExternalContextVTable(vTable).getMaster(Self);
5959 end;
5960
5961 function IExternalContext.getEngine(status: IStatus): IExternalEngine;
5962 begin
5963 Result := ExternalContextVTable(vTable).getEngine(Self, status);
5964 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5965 end;
5966
5967 function IExternalContext.getAttachment(status: IStatus): IAttachment;
5968 begin
5969 Result := ExternalContextVTable(vTable).getAttachment(Self, status);
5970 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5971 end;
5972
5973 function IExternalContext.getTransaction(status: IStatus): ITransaction;
5974 begin
5975 Result := ExternalContextVTable(vTable).getTransaction(Self, status);
5976 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
5977 end;
5978
5979 function IExternalContext.getUserName(): PAnsiChar;
5980 begin
5981 Result := ExternalContextVTable(vTable).getUserName(Self);
5982 end;
5983
5984 function IExternalContext.getDatabaseName(): PAnsiChar;
5985 begin
5986 Result := ExternalContextVTable(vTable).getDatabaseName(Self);
5987 end;
5988
5989 function IExternalContext.getClientCharSet(): PAnsiChar;
5990 begin
5991 Result := ExternalContextVTable(vTable).getClientCharSet(Self);
5992 end;
5993
5994 function IExternalContext.obtainInfoCode(): Integer;
5995 begin
5996 Result := ExternalContextVTable(vTable).obtainInfoCode(Self);
5997 end;
5998
5999 function IExternalContext.getInfo(code: Integer): Pointer;
6000 begin
6001 Result := ExternalContextVTable(vTable).getInfo(Self, code);
6002 end;
6003
6004 function IExternalContext.setInfo(code: Integer; value: Pointer): Pointer;
6005 begin
6006 Result := ExternalContextVTable(vTable).setInfo(Self, code, value);
6007 end;
6008
6009 function IExternalResultSet.fetch(status: IStatus): Boolean;
6010 begin
6011 Result := ExternalResultSetVTable(vTable).fetch(Self, status);
6012 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6013 end;
6014
6015 procedure IExternalFunction.getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal);
6016 begin
6017 ExternalFunctionVTable(vTable).getCharSet(Self, status, context, name, nameSize);
6018 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6019 end;
6020
6021 procedure IExternalFunction.execute(status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer);
6022 begin
6023 ExternalFunctionVTable(vTable).execute(Self, status, context, inMsg, outMsg);
6024 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6025 end;
6026
6027 procedure IExternalProcedure.getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal);
6028 begin
6029 ExternalProcedureVTable(vTable).getCharSet(Self, status, context, name, nameSize);
6030 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6031 end;
6032
6033 function IExternalProcedure.open(status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer): IExternalResultSet;
6034 begin
6035 Result := ExternalProcedureVTable(vTable).open(Self, status, context, inMsg, outMsg);
6036 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6037 end;
6038
6039 procedure IExternalTrigger.getCharSet(status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal);
6040 begin
6041 ExternalTriggerVTable(vTable).getCharSet(Self, status, context, name, nameSize);
6042 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6043 end;
6044
6045 procedure IExternalTrigger.execute(status: IStatus; context: IExternalContext; action: Cardinal; oldMsg: Pointer; newMsg: Pointer);
6046 begin
6047 ExternalTriggerVTable(vTable).execute(Self, status, context, action, oldMsg, newMsg);
6048 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6049 end;
6050
6051 function IRoutineMetadata.getPackage(status: IStatus): PAnsiChar;
6052 begin
6053 Result := RoutineMetadataVTable(vTable).getPackage(Self, status);
6054 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6055 end;
6056
6057 function IRoutineMetadata.getName(status: IStatus): PAnsiChar;
6058 begin
6059 Result := RoutineMetadataVTable(vTable).getName(Self, status);
6060 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6061 end;
6062
6063 function IRoutineMetadata.getEntryPoint(status: IStatus): PAnsiChar;
6064 begin
6065 Result := RoutineMetadataVTable(vTable).getEntryPoint(Self, status);
6066 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6067 end;
6068
6069 function IRoutineMetadata.getBody(status: IStatus): PAnsiChar;
6070 begin
6071 Result := RoutineMetadataVTable(vTable).getBody(Self, status);
6072 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6073 end;
6074
6075 function IRoutineMetadata.getInputMetadata(status: IStatus): IMessageMetadata;
6076 begin
6077 Result := RoutineMetadataVTable(vTable).getInputMetadata(Self, status);
6078 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6079 end;
6080
6081 function IRoutineMetadata.getOutputMetadata(status: IStatus): IMessageMetadata;
6082 begin
6083 Result := RoutineMetadataVTable(vTable).getOutputMetadata(Self, status);
6084 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6085 end;
6086
6087 function IRoutineMetadata.getTriggerMetadata(status: IStatus): IMessageMetadata;
6088 begin
6089 Result := RoutineMetadataVTable(vTable).getTriggerMetadata(Self, status);
6090 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6091 end;
6092
6093 function IRoutineMetadata.getTriggerTable(status: IStatus): PAnsiChar;
6094 begin
6095 Result := RoutineMetadataVTable(vTable).getTriggerTable(Self, status);
6096 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6097 end;
6098
6099 function IRoutineMetadata.getTriggerType(status: IStatus): Cardinal;
6100 begin
6101 Result := RoutineMetadataVTable(vTable).getTriggerType(Self, status);
6102 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6103 end;
6104
6105 procedure IExternalEngine.open(status: IStatus; context: IExternalContext; charSet: PAnsiChar; charSetSize: Cardinal);
6106 begin
6107 ExternalEngineVTable(vTable).open(Self, status, context, charSet, charSetSize);
6108 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6109 end;
6110
6111 procedure IExternalEngine.openAttachment(status: IStatus; context: IExternalContext);
6112 begin
6113 ExternalEngineVTable(vTable).openAttachment(Self, status, context);
6114 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6115 end;
6116
6117 procedure IExternalEngine.closeAttachment(status: IStatus; context: IExternalContext);
6118 begin
6119 ExternalEngineVTable(vTable).closeAttachment(Self, status, context);
6120 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6121 end;
6122
6123 function IExternalEngine.makeFunction(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalFunction;
6124 begin
6125 Result := ExternalEngineVTable(vTable).makeFunction(Self, status, context, metadata, inBuilder, outBuilder);
6126 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6127 end;
6128
6129 function IExternalEngine.makeProcedure(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalProcedure;
6130 begin
6131 Result := ExternalEngineVTable(vTable).makeProcedure(Self, status, context, metadata, inBuilder, outBuilder);
6132 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6133 end;
6134
6135 function IExternalEngine.makeTrigger(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder): IExternalTrigger;
6136 begin
6137 Result := ExternalEngineVTable(vTable).makeTrigger(Self, status, context, metadata, fieldsBuilder);
6138 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6139 end;
6140
6141 procedure ITimer.handler();
6142 begin
6143 TimerVTable(vTable).handler(Self);
6144 end;
6145
6146 procedure ITimerControl.start(status: IStatus; timer: ITimer; microSeconds: QWord);
6147 begin
6148 TimerControlVTable(vTable).start(Self, status, timer, microSeconds);
6149 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6150 end;
6151
6152 procedure ITimerControl.stop(status: IStatus; timer: ITimer);
6153 begin
6154 TimerControlVTable(vTable).stop(Self, status, timer);
6155 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6156 end;
6157
6158 procedure IVersionCallback.callback(status: IStatus; text: PAnsiChar);
6159 begin
6160 VersionCallbackVTable(vTable).callback(Self, status, text);
6161 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6162 end;
6163
6164 procedure IUtil.getFbVersion(status: IStatus; att: IAttachment; callback: IVersionCallback);
6165 begin
6166 UtilVTable(vTable).getFbVersion(Self, status, att, callback);
6167 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6168 end;
6169
6170 procedure IUtil.loadBlob(status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean);
6171 begin
6172 UtilVTable(vTable).loadBlob(Self, status, blobId, att, tra, file_, txt);
6173 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6174 end;
6175
6176 procedure IUtil.dumpBlob(status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean);
6177 begin
6178 UtilVTable(vTable).dumpBlob(Self, status, blobId, att, tra, file_, txt);
6179 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6180 end;
6181
6182 procedure IUtil.getPerfCounters(status: IStatus; att: IAttachment; countersSet: PAnsiChar; counters: Int64Ptr);
6183 begin
6184 UtilVTable(vTable).getPerfCounters(Self, status, att, countersSet, counters);
6185 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6186 end;
6187
6188 function IUtil.executeCreateDatabase(status: IStatus; stmtLength: Cardinal; creatDBstatement: PAnsiChar; dialect: Cardinal; stmtIsCreateDb: BooleanPtr): IAttachment;
6189 begin
6190 Result := UtilVTable(vTable).executeCreateDatabase(Self, status, stmtLength, creatDBstatement, dialect, stmtIsCreateDb);
6191 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6192 end;
6193
6194 procedure IUtil.decodeDate(date: ISC_DATE; year: CardinalPtr; month: CardinalPtr; day: CardinalPtr);
6195 begin
6196 UtilVTable(vTable).decodeDate(Self, date, year, month, day);
6197 end;
6198
6199 procedure IUtil.decodeTime(time: ISC_TIME; hours: CardinalPtr; minutes: CardinalPtr; seconds: CardinalPtr; fractions: CardinalPtr);
6200 begin
6201 UtilVTable(vTable).decodeTime(Self, time, hours, minutes, seconds, fractions);
6202 end;
6203
6204 function IUtil.encodeDate(year: Cardinal; month: Cardinal; day: Cardinal): ISC_DATE;
6205 begin
6206 Result := UtilVTable(vTable).encodeDate(Self, year, month, day);
6207 end;
6208
6209 function IUtil.encodeTime(hours: Cardinal; minutes: Cardinal; seconds: Cardinal; fractions: Cardinal): ISC_TIME;
6210 begin
6211 Result := UtilVTable(vTable).encodeTime(Self, hours, minutes, seconds, fractions);
6212 end;
6213
6214 function IUtil.formatStatus(buffer: PAnsiChar; bufferSize: Cardinal; status: IStatus): Cardinal;
6215 begin
6216 Result := UtilVTable(vTable).formatStatus(Self, buffer, bufferSize, status);
6217 end;
6218
6219 function IUtil.getClientVersion(): Cardinal;
6220 begin
6221 Result := UtilVTable(vTable).getClientVersion(Self);
6222 end;
6223
6224 function IUtil.getXpbBuilder(status: IStatus; kind: Cardinal; buf: BytePtr; len: Cardinal): IXpbBuilder;
6225 begin
6226 Result := UtilVTable(vTable).getXpbBuilder(Self, status, kind, buf, len);
6227 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6228 end;
6229
6230 function IUtil.setOffsets(status: IStatus; metadata: IMessageMetadata; callback: IOffsetsCallback): Cardinal;
6231 begin
6232 Result := UtilVTable(vTable).setOffsets(Self, status, metadata, callback);
6233 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6234 end;
6235
6236 procedure IOffsetsCallback.setOffset(status: IStatus; index: Cardinal; offset: Cardinal; nullOffset: Cardinal);
6237 begin
6238 OffsetsCallbackVTable(vTable).setOffset(Self, status, index, offset, nullOffset);
6239 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6240 end;
6241
6242 procedure IXpbBuilder.clear(status: IStatus);
6243 begin
6244 XpbBuilderVTable(vTable).clear(Self, status);
6245 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6246 end;
6247
6248 procedure IXpbBuilder.removeCurrent(status: IStatus);
6249 begin
6250 XpbBuilderVTable(vTable).removeCurrent(Self, status);
6251 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6252 end;
6253
6254 procedure IXpbBuilder.insertInt(status: IStatus; tag: Byte; value: Integer);
6255 begin
6256 XpbBuilderVTable(vTable).insertInt(Self, status, tag, value);
6257 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6258 end;
6259
6260 procedure IXpbBuilder.insertBigInt(status: IStatus; tag: Byte; value: Int64);
6261 begin
6262 XpbBuilderVTable(vTable).insertBigInt(Self, status, tag, value);
6263 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6264 end;
6265
6266 procedure IXpbBuilder.insertBytes(status: IStatus; tag: Byte; bytes: Pointer; length: Cardinal);
6267 begin
6268 XpbBuilderVTable(vTable).insertBytes(Self, status, tag, bytes, length);
6269 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6270 end;
6271
6272 procedure IXpbBuilder.insertString(status: IStatus; tag: Byte; str: PAnsiChar);
6273 begin
6274 XpbBuilderVTable(vTable).insertString(Self, status, tag, str);
6275 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6276 end;
6277
6278 procedure IXpbBuilder.insertTag(status: IStatus; tag: Byte);
6279 begin
6280 XpbBuilderVTable(vTable).insertTag(Self, status, tag);
6281 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6282 end;
6283
6284 function IXpbBuilder.isEof(status: IStatus): Boolean;
6285 begin
6286 Result := XpbBuilderVTable(vTable).isEof(Self, status);
6287 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6288 end;
6289
6290 procedure IXpbBuilder.moveNext(status: IStatus);
6291 begin
6292 XpbBuilderVTable(vTable).moveNext(Self, status);
6293 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6294 end;
6295
6296 procedure IXpbBuilder.rewind(status: IStatus);
6297 begin
6298 XpbBuilderVTable(vTable).rewind(Self, status);
6299 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6300 end;
6301
6302 function IXpbBuilder.findFirst(status: IStatus; tag: Byte): Boolean;
6303 begin
6304 Result := XpbBuilderVTable(vTable).findFirst(Self, status, tag);
6305 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6306 end;
6307
6308 function IXpbBuilder.findNext(status: IStatus): Boolean;
6309 begin
6310 Result := XpbBuilderVTable(vTable).findNext(Self, status);
6311 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6312 end;
6313
6314 function IXpbBuilder.getTag(status: IStatus): Byte;
6315 begin
6316 Result := XpbBuilderVTable(vTable).getTag(Self, status);
6317 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6318 end;
6319
6320 function IXpbBuilder.getLength(status: IStatus): Cardinal;
6321 begin
6322 Result := XpbBuilderVTable(vTable).getLength(Self, status);
6323 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6324 end;
6325
6326 function IXpbBuilder.getInt(status: IStatus): Integer;
6327 begin
6328 Result := XpbBuilderVTable(vTable).getInt(Self, status);
6329 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6330 end;
6331
6332 function IXpbBuilder.getBigInt(status: IStatus): Int64;
6333 begin
6334 Result := XpbBuilderVTable(vTable).getBigInt(Self, status);
6335 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6336 end;
6337
6338 function IXpbBuilder.getString(status: IStatus): PAnsiChar;
6339 begin
6340 Result := XpbBuilderVTable(vTable).getString(Self, status);
6341 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6342 end;
6343
6344 function IXpbBuilder.getBytes(status: IStatus): BytePtr;
6345 begin
6346 Result := XpbBuilderVTable(vTable).getBytes(Self, status);
6347 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6348 end;
6349
6350 function IXpbBuilder.getBufferLength(status: IStatus): Cardinal;
6351 begin
6352 Result := XpbBuilderVTable(vTable).getBufferLength(Self, status);
6353 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6354 end;
6355
6356 function IXpbBuilder.getBuffer(status: IStatus): BytePtr;
6357 begin
6358 Result := XpbBuilderVTable(vTable).getBuffer(Self, status);
6359 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6360 end;
6361
6362 function ITraceConnection.getKind(): Cardinal;
6363 begin
6364 Result := TraceConnectionVTable(vTable).getKind(Self);
6365 end;
6366
6367 function ITraceConnection.getProcessID(): Integer;
6368 begin
6369 Result := TraceConnectionVTable(vTable).getProcessID(Self);
6370 end;
6371
6372 function ITraceConnection.getUserName(): PAnsiChar;
6373 begin
6374 Result := TraceConnectionVTable(vTable).getUserName(Self);
6375 end;
6376
6377 function ITraceConnection.getRoleName(): PAnsiChar;
6378 begin
6379 Result := TraceConnectionVTable(vTable).getRoleName(Self);
6380 end;
6381
6382 function ITraceConnection.getCharSet(): PAnsiChar;
6383 begin
6384 Result := TraceConnectionVTable(vTable).getCharSet(Self);
6385 end;
6386
6387 function ITraceConnection.getRemoteProtocol(): PAnsiChar;
6388 begin
6389 Result := TraceConnectionVTable(vTable).getRemoteProtocol(Self);
6390 end;
6391
6392 function ITraceConnection.getRemoteAddress(): PAnsiChar;
6393 begin
6394 Result := TraceConnectionVTable(vTable).getRemoteAddress(Self);
6395 end;
6396
6397 function ITraceConnection.getRemoteProcessID(): Integer;
6398 begin
6399 Result := TraceConnectionVTable(vTable).getRemoteProcessID(Self);
6400 end;
6401
6402 function ITraceConnection.getRemoteProcessName(): PAnsiChar;
6403 begin
6404 Result := TraceConnectionVTable(vTable).getRemoteProcessName(Self);
6405 end;
6406
6407 function ITraceDatabaseConnection.getConnectionID(): Int64;
6408 begin
6409 Result := TraceDatabaseConnectionVTable(vTable).getConnectionID(Self);
6410 end;
6411
6412 function ITraceDatabaseConnection.getDatabaseName(): PAnsiChar;
6413 begin
6414 Result := TraceDatabaseConnectionVTable(vTable).getDatabaseName(Self);
6415 end;
6416
6417 function ITraceTransaction.getTransactionID(): Int64;
6418 begin
6419 Result := TraceTransactionVTable(vTable).getTransactionID(Self);
6420 end;
6421
6422 function ITraceTransaction.getReadOnly(): Boolean;
6423 begin
6424 Result := TraceTransactionVTable(vTable).getReadOnly(Self);
6425 end;
6426
6427 function ITraceTransaction.getWait(): Integer;
6428 begin
6429 Result := TraceTransactionVTable(vTable).getWait(Self);
6430 end;
6431
6432 function ITraceTransaction.getIsolation(): Cardinal;
6433 begin
6434 Result := TraceTransactionVTable(vTable).getIsolation(Self);
6435 end;
6436
6437 function ITraceTransaction.getPerf(): PerformanceInfoPtr;
6438 begin
6439 Result := TraceTransactionVTable(vTable).getPerf(Self);
6440 end;
6441
6442 function ITraceParams.getCount(): Cardinal;
6443 begin
6444 Result := TraceParamsVTable(vTable).getCount(Self);
6445 end;
6446
6447 function ITraceParams.getParam(idx: Cardinal): dscPtr;
6448 begin
6449 Result := TraceParamsVTable(vTable).getParam(Self, idx);
6450 end;
6451
6452 function ITraceStatement.getStmtID(): Int64;
6453 begin
6454 Result := TraceStatementVTable(vTable).getStmtID(Self);
6455 end;
6456
6457 function ITraceStatement.getPerf(): PerformanceInfoPtr;
6458 begin
6459 Result := TraceStatementVTable(vTable).getPerf(Self);
6460 end;
6461
6462 function ITraceSQLStatement.getText(): PAnsiChar;
6463 begin
6464 Result := TraceSQLStatementVTable(vTable).getText(Self);
6465 end;
6466
6467 function ITraceSQLStatement.getPlan(): PAnsiChar;
6468 begin
6469 Result := TraceSQLStatementVTable(vTable).getPlan(Self);
6470 end;
6471
6472 function ITraceSQLStatement.getInputs(): ITraceParams;
6473 begin
6474 Result := TraceSQLStatementVTable(vTable).getInputs(Self);
6475 end;
6476
6477 function ITraceSQLStatement.getTextUTF8(): PAnsiChar;
6478 begin
6479 Result := TraceSQLStatementVTable(vTable).getTextUTF8(Self);
6480 end;
6481
6482 function ITraceSQLStatement.getExplainedPlan(): PAnsiChar;
6483 begin
6484 Result := TraceSQLStatementVTable(vTable).getExplainedPlan(Self);
6485 end;
6486
6487 function ITraceBLRStatement.getData(): BytePtr;
6488 begin
6489 Result := TraceBLRStatementVTable(vTable).getData(Self);
6490 end;
6491
6492 function ITraceBLRStatement.getDataLength(): Cardinal;
6493 begin
6494 Result := TraceBLRStatementVTable(vTable).getDataLength(Self);
6495 end;
6496
6497 function ITraceBLRStatement.getText(): PAnsiChar;
6498 begin
6499 Result := TraceBLRStatementVTable(vTable).getText(Self);
6500 end;
6501
6502 function ITraceDYNRequest.getData(): BytePtr;
6503 begin
6504 Result := TraceDYNRequestVTable(vTable).getData(Self);
6505 end;
6506
6507 function ITraceDYNRequest.getDataLength(): Cardinal;
6508 begin
6509 Result := TraceDYNRequestVTable(vTable).getDataLength(Self);
6510 end;
6511
6512 function ITraceDYNRequest.getText(): PAnsiChar;
6513 begin
6514 Result := TraceDYNRequestVTable(vTable).getText(Self);
6515 end;
6516
6517 function ITraceContextVariable.getNameSpace(): PAnsiChar;
6518 begin
6519 Result := TraceContextVariableVTable(vTable).getNameSpace(Self);
6520 end;
6521
6522 function ITraceContextVariable.getVarName(): PAnsiChar;
6523 begin
6524 Result := TraceContextVariableVTable(vTable).getVarName(Self);
6525 end;
6526
6527 function ITraceContextVariable.getVarValue(): PAnsiChar;
6528 begin
6529 Result := TraceContextVariableVTable(vTable).getVarValue(Self);
6530 end;
6531
6532 function ITraceProcedure.getProcName(): PAnsiChar;
6533 begin
6534 Result := TraceProcedureVTable(vTable).getProcName(Self);
6535 end;
6536
6537 function ITraceProcedure.getInputs(): ITraceParams;
6538 begin
6539 Result := TraceProcedureVTable(vTable).getInputs(Self);
6540 end;
6541
6542 function ITraceProcedure.getPerf(): PerformanceInfoPtr;
6543 begin
6544 Result := TraceProcedureVTable(vTable).getPerf(Self);
6545 end;
6546
6547 function ITraceFunction.getFuncName(): PAnsiChar;
6548 begin
6549 Result := TraceFunctionVTable(vTable).getFuncName(Self);
6550 end;
6551
6552 function ITraceFunction.getInputs(): ITraceParams;
6553 begin
6554 Result := TraceFunctionVTable(vTable).getInputs(Self);
6555 end;
6556
6557 function ITraceFunction.getResult(): ITraceParams;
6558 begin
6559 Result := TraceFunctionVTable(vTable).getResult(Self);
6560 end;
6561
6562 function ITraceFunction.getPerf(): PerformanceInfoPtr;
6563 begin
6564 Result := TraceFunctionVTable(vTable).getPerf(Self);
6565 end;
6566
6567 function ITraceTrigger.getTriggerName(): PAnsiChar;
6568 begin
6569 Result := TraceTriggerVTable(vTable).getTriggerName(Self);
6570 end;
6571
6572 function ITraceTrigger.getRelationName(): PAnsiChar;
6573 begin
6574 Result := TraceTriggerVTable(vTable).getRelationName(Self);
6575 end;
6576
6577 function ITraceTrigger.getAction(): Integer;
6578 begin
6579 Result := TraceTriggerVTable(vTable).getAction(Self);
6580 end;
6581
6582 function ITraceTrigger.getWhich(): Integer;
6583 begin
6584 Result := TraceTriggerVTable(vTable).getWhich(Self);
6585 end;
6586
6587 function ITraceTrigger.getPerf(): PerformanceInfoPtr;
6588 begin
6589 Result := TraceTriggerVTable(vTable).getPerf(Self);
6590 end;
6591
6592 function ITraceServiceConnection.getServiceID(): Pointer;
6593 begin
6594 Result := TraceServiceConnectionVTable(vTable).getServiceID(Self);
6595 end;
6596
6597 function ITraceServiceConnection.getServiceMgr(): PAnsiChar;
6598 begin
6599 Result := TraceServiceConnectionVTable(vTable).getServiceMgr(Self);
6600 end;
6601
6602 function ITraceServiceConnection.getServiceName(): PAnsiChar;
6603 begin
6604 Result := TraceServiceConnectionVTable(vTable).getServiceName(Self);
6605 end;
6606
6607 function ITraceStatusVector.hasError(): Boolean;
6608 begin
6609 Result := TraceStatusVectorVTable(vTable).hasError(Self);
6610 end;
6611
6612 function ITraceStatusVector.hasWarning(): Boolean;
6613 begin
6614 Result := TraceStatusVectorVTable(vTable).hasWarning(Self);
6615 end;
6616
6617 function ITraceStatusVector.getStatus(): IStatus;
6618 begin
6619 Result := TraceStatusVectorVTable(vTable).getStatus(Self);
6620 end;
6621
6622 function ITraceStatusVector.getText(): PAnsiChar;
6623 begin
6624 Result := TraceStatusVectorVTable(vTable).getText(Self);
6625 end;
6626
6627 function ITraceSweepInfo.getOIT(): Int64;
6628 begin
6629 Result := TraceSweepInfoVTable(vTable).getOIT(Self);
6630 end;
6631
6632 function ITraceSweepInfo.getOST(): Int64;
6633 begin
6634 Result := TraceSweepInfoVTable(vTable).getOST(Self);
6635 end;
6636
6637 function ITraceSweepInfo.getOAT(): Int64;
6638 begin
6639 Result := TraceSweepInfoVTable(vTable).getOAT(Self);
6640 end;
6641
6642 function ITraceSweepInfo.getNext(): Int64;
6643 begin
6644 Result := TraceSweepInfoVTable(vTable).getNext(Self);
6645 end;
6646
6647 function ITraceSweepInfo.getPerf(): PerformanceInfoPtr;
6648 begin
6649 Result := TraceSweepInfoVTable(vTable).getPerf(Self);
6650 end;
6651
6652 function ITraceLogWriter.write(buf: Pointer; size: Cardinal): Cardinal;
6653 begin
6654 Result := TraceLogWriterVTable(vTable).write(Self, buf, size);
6655 end;
6656
6657 function ITraceInitInfo.getConfigText(): PAnsiChar;
6658 begin
6659 Result := TraceInitInfoVTable(vTable).getConfigText(Self);
6660 end;
6661
6662 function ITraceInitInfo.getTraceSessionID(): Integer;
6663 begin
6664 Result := TraceInitInfoVTable(vTable).getTraceSessionID(Self);
6665 end;
6666
6667 function ITraceInitInfo.getTraceSessionName(): PAnsiChar;
6668 begin
6669 Result := TraceInitInfoVTable(vTable).getTraceSessionName(Self);
6670 end;
6671
6672 function ITraceInitInfo.getFirebirdRootDirectory(): PAnsiChar;
6673 begin
6674 Result := TraceInitInfoVTable(vTable).getFirebirdRootDirectory(Self);
6675 end;
6676
6677 function ITraceInitInfo.getDatabaseName(): PAnsiChar;
6678 begin
6679 Result := TraceInitInfoVTable(vTable).getDatabaseName(Self);
6680 end;
6681
6682 function ITraceInitInfo.getConnection(): ITraceDatabaseConnection;
6683 begin
6684 Result := TraceInitInfoVTable(vTable).getConnection(Self);
6685 end;
6686
6687 function ITraceInitInfo.getLogWriter(): ITraceLogWriter;
6688 begin
6689 Result := TraceInitInfoVTable(vTable).getLogWriter(Self);
6690 end;
6691
6692 function ITracePlugin.trace_get_error(): PAnsiChar;
6693 begin
6694 Result := TracePluginVTable(vTable).trace_get_error(Self);
6695 end;
6696
6697 function ITracePlugin.trace_attach(connection: ITraceDatabaseConnection; create_db: Boolean; att_result: Cardinal): Boolean;
6698 begin
6699 Result := TracePluginVTable(vTable).trace_attach(Self, connection, create_db, att_result);
6700 end;
6701
6702 function ITracePlugin.trace_detach(connection: ITraceDatabaseConnection; drop_db: Boolean): Boolean;
6703 begin
6704 Result := TracePluginVTable(vTable).trace_detach(Self, connection, drop_db);
6705 end;
6706
6707 function ITracePlugin.trace_transaction_start(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; tpb_length: Cardinal; tpb: BytePtr; tra_result: Cardinal): Boolean;
6708 begin
6709 Result := TracePluginVTable(vTable).trace_transaction_start(Self, connection, transaction, tpb_length, tpb, tra_result);
6710 end;
6711
6712 function ITracePlugin.trace_transaction_end(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; commit: Boolean; retain_context: Boolean; tra_result: Cardinal): Boolean;
6713 begin
6714 Result := TracePluginVTable(vTable).trace_transaction_end(Self, connection, transaction, commit, retain_context, tra_result);
6715 end;
6716
6717 function ITracePlugin.trace_proc_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; procedure_: ITraceProcedure; started: Boolean; proc_result: Cardinal): Boolean;
6718 begin
6719 Result := TracePluginVTable(vTable).trace_proc_execute(Self, connection, transaction, procedure_, started, proc_result);
6720 end;
6721
6722 function ITracePlugin.trace_trigger_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; trigger: ITraceTrigger; started: Boolean; trig_result: Cardinal): Boolean;
6723 begin
6724 Result := TracePluginVTable(vTable).trace_trigger_execute(Self, connection, transaction, trigger, started, trig_result);
6725 end;
6726
6727 function ITracePlugin.trace_set_context(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; variable: ITraceContextVariable): Boolean;
6728 begin
6729 Result := TracePluginVTable(vTable).trace_set_context(Self, connection, transaction, variable);
6730 end;
6731
6732 function ITracePlugin.trace_dsql_prepare(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; time_millis: Int64; req_result: Cardinal): Boolean;
6733 begin
6734 Result := TracePluginVTable(vTable).trace_dsql_prepare(Self, connection, transaction, statement, time_millis, req_result);
6735 end;
6736
6737 function ITracePlugin.trace_dsql_free(connection: ITraceDatabaseConnection; statement: ITraceSQLStatement; option: Cardinal): Boolean;
6738 begin
6739 Result := TracePluginVTable(vTable).trace_dsql_free(Self, connection, statement, option);
6740 end;
6741
6742 function ITracePlugin.trace_dsql_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; started: Boolean; req_result: Cardinal): Boolean;
6743 begin
6744 Result := TracePluginVTable(vTable).trace_dsql_execute(Self, connection, transaction, statement, started, req_result);
6745 end;
6746
6747 function ITracePlugin.trace_blr_compile(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; time_millis: Int64; req_result: Cardinal): Boolean;
6748 begin
6749 Result := TracePluginVTable(vTable).trace_blr_compile(Self, connection, transaction, statement, time_millis, req_result);
6750 end;
6751
6752 function ITracePlugin.trace_blr_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; req_result: Cardinal): Boolean;
6753 begin
6754 Result := TracePluginVTable(vTable).trace_blr_execute(Self, connection, transaction, statement, req_result);
6755 end;
6756
6757 function ITracePlugin.trace_dyn_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; request: ITraceDYNRequest; time_millis: Int64; req_result: Cardinal): Boolean;
6758 begin
6759 Result := TracePluginVTable(vTable).trace_dyn_execute(Self, connection, transaction, request, time_millis, req_result);
6760 end;
6761
6762 function ITracePlugin.trace_service_attach(service: ITraceServiceConnection; att_result: Cardinal): Boolean;
6763 begin
6764 Result := TracePluginVTable(vTable).trace_service_attach(Self, service, att_result);
6765 end;
6766
6767 function ITracePlugin.trace_service_start(service: ITraceServiceConnection; switches_length: Cardinal; switches: PAnsiChar; start_result: Cardinal): Boolean;
6768 begin
6769 Result := TracePluginVTable(vTable).trace_service_start(Self, service, switches_length, switches, start_result);
6770 end;
6771
6772 function ITracePlugin.trace_service_query(service: ITraceServiceConnection; send_item_length: Cardinal; send_items: BytePtr; recv_item_length: Cardinal; recv_items: BytePtr; query_result: Cardinal): Boolean;
6773 begin
6774 Result := TracePluginVTable(vTable).trace_service_query(Self, service, send_item_length, send_items, recv_item_length, recv_items, query_result);
6775 end;
6776
6777 function ITracePlugin.trace_service_detach(service: ITraceServiceConnection; detach_result: Cardinal): Boolean;
6778 begin
6779 Result := TracePluginVTable(vTable).trace_service_detach(Self, service, detach_result);
6780 end;
6781
6782 function ITracePlugin.trace_event_error(connection: ITraceConnection; status: ITraceStatusVector; function_: PAnsiChar): Boolean;
6783 begin
6784 Result := TracePluginVTable(vTable).trace_event_error(Self, connection, status, function_);
6785 end;
6786
6787 function ITracePlugin.trace_event_sweep(connection: ITraceDatabaseConnection; sweep: ITraceSweepInfo; sweep_state: Cardinal): Boolean;
6788 begin
6789 Result := TracePluginVTable(vTable).trace_event_sweep(Self, connection, sweep, sweep_state);
6790 end;
6791
6792 function ITracePlugin.trace_func_execute(connection: ITraceDatabaseConnection; transaction: ITraceTransaction; function_: ITraceFunction; started: Boolean; func_result: Cardinal): Boolean;
6793 begin
6794 Result := TracePluginVTable(vTable).trace_func_execute(Self, connection, transaction, function_, started, func_result);
6795 end;
6796
6797 function ITraceFactory.trace_needs(): QWord;
6798 begin
6799 Result := TraceFactoryVTable(vTable).trace_needs(Self);
6800 end;
6801
6802 function ITraceFactory.trace_create(status: IStatus; init_info: ITraceInitInfo): ITracePlugin;
6803 begin
6804 Result := TraceFactoryVTable(vTable).trace_create(Self, status, init_info);
6805 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6806 end;
6807
6808 procedure IUdrFunctionFactory.setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder);
6809 begin
6810 UdrFunctionFactoryVTable(vTable).setup(Self, status, context, metadata, inBuilder, outBuilder);
6811 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6812 end;
6813
6814 function IUdrFunctionFactory.newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalFunction;
6815 begin
6816 Result := UdrFunctionFactoryVTable(vTable).newItem(Self, status, context, metadata);
6817 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6818 end;
6819
6820 procedure IUdrProcedureFactory.setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder);
6821 begin
6822 UdrProcedureFactoryVTable(vTable).setup(Self, status, context, metadata, inBuilder, outBuilder);
6823 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6824 end;
6825
6826 function IUdrProcedureFactory.newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalProcedure;
6827 begin
6828 Result := UdrProcedureFactoryVTable(vTable).newItem(Self, status, context, metadata);
6829 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6830 end;
6831
6832 procedure IUdrTriggerFactory.setup(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder);
6833 begin
6834 UdrTriggerFactoryVTable(vTable).setup(Self, status, context, metadata, fieldsBuilder);
6835 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6836 end;
6837
6838 function IUdrTriggerFactory.newItem(status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalTrigger;
6839 begin
6840 Result := UdrTriggerFactoryVTable(vTable).newItem(Self, status, context, metadata);
6841 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6842 end;
6843
6844 function IUdrPlugin.getMaster(): IMaster;
6845 begin
6846 Result := UdrPluginVTable(vTable).getMaster(Self);
6847 end;
6848
6849 procedure IUdrPlugin.registerFunction(status: IStatus; name: PAnsiChar; factory: IUdrFunctionFactory);
6850 begin
6851 UdrPluginVTable(vTable).registerFunction(Self, status, name, factory);
6852 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6853 end;
6854
6855 procedure IUdrPlugin.registerProcedure(status: IStatus; name: PAnsiChar; factory: IUdrProcedureFactory);
6856 begin
6857 UdrPluginVTable(vTable).registerProcedure(Self, status, name, factory);
6858 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6859 end;
6860
6861 procedure IUdrPlugin.registerTrigger(status: IStatus; name: PAnsiChar; factory: IUdrTriggerFactory);
6862 begin
6863 UdrPluginVTable(vTable).registerTrigger(Self, status, name, factory);
6864 {$IFDEF USEFBEXCEPTION}FbException.checkException(status); {$ENDIF}
6865 end;
6866
6867 var
6868 IVersionedImpl_vTable: VersionedVTable;
6869
6870 constructor IVersionedImpl.create;
6871 begin
6872 vTable := IVersionedImpl_vTable;
6873 end;
6874
6875 procedure IReferenceCountedImpl_addRefDispatcher(this: IReferenceCounted); cdecl;
6876 begin
6877 try
6878 IReferenceCountedImpl(this).addRef();
6879 except
6880 on e: Exception do FbException.catchException(nil, e);
6881 end
6882 end;
6883
6884 function IReferenceCountedImpl_releaseDispatcher(this: IReferenceCounted): Integer; cdecl;
6885 begin
6886 try
6887 Result := IReferenceCountedImpl(this).release();
6888 except
6889 on e: Exception do FbException.catchException(nil, e);
6890 end
6891 end;
6892
6893 var
6894 IReferenceCountedImpl_vTable: ReferenceCountedVTable;
6895
6896 constructor IReferenceCountedImpl.create;
6897 begin
6898 vTable := IReferenceCountedImpl_vTable;
6899 end;
6900
6901 procedure IDisposableImpl_disposeDispatcher(this: IDisposable); cdecl;
6902 begin
6903 try
6904 IDisposableImpl(this).dispose();
6905 except
6906 on e: Exception do FbException.catchException(nil, e);
6907 end
6908 end;
6909
6910 var
6911 IDisposableImpl_vTable: DisposableVTable;
6912
6913 constructor IDisposableImpl.create;
6914 begin
6915 vTable := IDisposableImpl_vTable;
6916 end;
6917
6918 procedure IStatusImpl_disposeDispatcher(this: IStatus); cdecl;
6919 begin
6920 try
6921 IStatusImpl(this).dispose();
6922 except
6923 on e: Exception do FbException.catchException(nil, e);
6924 end
6925 end;
6926
6927 procedure IStatusImpl_initDispatcher(this: IStatus); cdecl;
6928 begin
6929 try
6930 IStatusImpl(this).init();
6931 except
6932 on e: Exception do FbException.catchException(nil, e);
6933 end
6934 end;
6935
6936 function IStatusImpl_getStateDispatcher(this: IStatus): Cardinal; cdecl;
6937 begin
6938 try
6939 Result := IStatusImpl(this).getState();
6940 except
6941 on e: Exception do FbException.catchException(nil, e);
6942 end
6943 end;
6944
6945 procedure IStatusImpl_setErrors2Dispatcher(this: IStatus; length: Cardinal; value: NativeIntPtr); cdecl;
6946 begin
6947 try
6948 IStatusImpl(this).setErrors2(length, value);
6949 except
6950 on e: Exception do FbException.catchException(nil, e);
6951 end
6952 end;
6953
6954 procedure IStatusImpl_setWarnings2Dispatcher(this: IStatus; length: Cardinal; value: NativeIntPtr); cdecl;
6955 begin
6956 try
6957 IStatusImpl(this).setWarnings2(length, value);
6958 except
6959 on e: Exception do FbException.catchException(nil, e);
6960 end
6961 end;
6962
6963 procedure IStatusImpl_setErrorsDispatcher(this: IStatus; value: NativeIntPtr); cdecl;
6964 begin
6965 try
6966 IStatusImpl(this).setErrors(value);
6967 except
6968 on e: Exception do FbException.catchException(nil, e);
6969 end
6970 end;
6971
6972 procedure IStatusImpl_setWarningsDispatcher(this: IStatus; value: NativeIntPtr); cdecl;
6973 begin
6974 try
6975 IStatusImpl(this).setWarnings(value);
6976 except
6977 on e: Exception do FbException.catchException(nil, e);
6978 end
6979 end;
6980
6981 function IStatusImpl_getErrorsDispatcher(this: IStatus): NativeIntPtr; cdecl;
6982 begin
6983 try
6984 Result := IStatusImpl(this).getErrors();
6985 except
6986 on e: Exception do FbException.catchException(nil, e);
6987 end
6988 end;
6989
6990 function IStatusImpl_getWarningsDispatcher(this: IStatus): NativeIntPtr; cdecl;
6991 begin
6992 try
6993 Result := IStatusImpl(this).getWarnings();
6994 except
6995 on e: Exception do FbException.catchException(nil, e);
6996 end
6997 end;
6998
6999 function IStatusImpl_cloneDispatcher(this: IStatus): IStatus; cdecl;
7000 begin
7001 try
7002 Result := IStatusImpl(this).clone();
7003 except
7004 on e: Exception do FbException.catchException(nil, e);
7005 end
7006 end;
7007
7008 var
7009 IStatusImpl_vTable: StatusVTable;
7010
7011 constructor IStatusImpl.create;
7012 begin
7013 vTable := IStatusImpl_vTable;
7014 end;
7015
7016 function IMasterImpl_getStatusDispatcher(this: IMaster): IStatus; cdecl;
7017 begin
7018 try
7019 Result := IMasterImpl(this).getStatus();
7020 except
7021 on e: Exception do FbException.catchException(nil, e);
7022 end
7023 end;
7024
7025 function IMasterImpl_getDispatcherDispatcher(this: IMaster): IProvider; cdecl;
7026 begin
7027 try
7028 Result := IMasterImpl(this).getDispatcher();
7029 except
7030 on e: Exception do FbException.catchException(nil, e);
7031 end
7032 end;
7033
7034 function IMasterImpl_getPluginManagerDispatcher(this: IMaster): IPluginManager; cdecl;
7035 begin
7036 try
7037 Result := IMasterImpl(this).getPluginManager();
7038 except
7039 on e: Exception do FbException.catchException(nil, e);
7040 end
7041 end;
7042
7043 function IMasterImpl_getTimerControlDispatcher(this: IMaster): ITimerControl; cdecl;
7044 begin
7045 try
7046 Result := IMasterImpl(this).getTimerControl();
7047 except
7048 on e: Exception do FbException.catchException(nil, e);
7049 end
7050 end;
7051
7052 function IMasterImpl_getDtcDispatcher(this: IMaster): IDtc; cdecl;
7053 begin
7054 try
7055 Result := IMasterImpl(this).getDtc();
7056 except
7057 on e: Exception do FbException.catchException(nil, e);
7058 end
7059 end;
7060
7061 function IMasterImpl_registerAttachmentDispatcher(this: IMaster; provider: IProvider; attachment: IAttachment): IAttachment; cdecl;
7062 begin
7063 try
7064 Result := IMasterImpl(this).registerAttachment(provider, attachment);
7065 except
7066 on e: Exception do FbException.catchException(nil, e);
7067 end
7068 end;
7069
7070 function IMasterImpl_registerTransactionDispatcher(this: IMaster; attachment: IAttachment; transaction: ITransaction): ITransaction; cdecl;
7071 begin
7072 try
7073 Result := IMasterImpl(this).registerTransaction(attachment, transaction);
7074 except
7075 on e: Exception do FbException.catchException(nil, e);
7076 end
7077 end;
7078
7079 function IMasterImpl_getMetadataBuilderDispatcher(this: IMaster; status: IStatus; fieldCount: Cardinal): IMetadataBuilder; cdecl;
7080 begin
7081 try
7082 Result := IMasterImpl(this).getMetadataBuilder(status, fieldCount);
7083 except
7084 on e: Exception do FbException.catchException(status, e);
7085 end
7086 end;
7087
7088 function IMasterImpl_serverModeDispatcher(this: IMaster; mode: Integer): Integer; cdecl;
7089 begin
7090 try
7091 Result := IMasterImpl(this).serverMode(mode);
7092 except
7093 on e: Exception do FbException.catchException(nil, e);
7094 end
7095 end;
7096
7097 function IMasterImpl_getUtilInterfaceDispatcher(this: IMaster): IUtil; cdecl;
7098 begin
7099 try
7100 Result := IMasterImpl(this).getUtilInterface();
7101 except
7102 on e: Exception do FbException.catchException(nil, e);
7103 end
7104 end;
7105
7106 function IMasterImpl_getConfigManagerDispatcher(this: IMaster): IConfigManager; cdecl;
7107 begin
7108 try
7109 Result := IMasterImpl(this).getConfigManager();
7110 except
7111 on e: Exception do FbException.catchException(nil, e);
7112 end
7113 end;
7114
7115 function IMasterImpl_getProcessExitingDispatcher(this: IMaster): Boolean; cdecl;
7116 begin
7117 try
7118 Result := IMasterImpl(this).getProcessExiting();
7119 except
7120 on e: Exception do FbException.catchException(nil, e);
7121 end
7122 end;
7123
7124 var
7125 IMasterImpl_vTable: MasterVTable;
7126
7127 constructor IMasterImpl.create;
7128 begin
7129 vTable := IMasterImpl_vTable;
7130 end;
7131
7132 procedure IPluginBaseImpl_addRefDispatcher(this: IPluginBase); cdecl;
7133 begin
7134 try
7135 IPluginBaseImpl(this).addRef();
7136 except
7137 on e: Exception do FbException.catchException(nil, e);
7138 end
7139 end;
7140
7141 function IPluginBaseImpl_releaseDispatcher(this: IPluginBase): Integer; cdecl;
7142 begin
7143 try
7144 Result := IPluginBaseImpl(this).release();
7145 except
7146 on e: Exception do FbException.catchException(nil, e);
7147 end
7148 end;
7149
7150 procedure IPluginBaseImpl_setOwnerDispatcher(this: IPluginBase; r: IReferenceCounted); cdecl;
7151 begin
7152 try
7153 IPluginBaseImpl(this).setOwner(r);
7154 except
7155 on e: Exception do FbException.catchException(nil, e);
7156 end
7157 end;
7158
7159 function IPluginBaseImpl_getOwnerDispatcher(this: IPluginBase): IReferenceCounted; cdecl;
7160 begin
7161 try
7162 Result := IPluginBaseImpl(this).getOwner();
7163 except
7164 on e: Exception do FbException.catchException(nil, e);
7165 end
7166 end;
7167
7168 var
7169 IPluginBaseImpl_vTable: PluginBaseVTable;
7170
7171 constructor IPluginBaseImpl.create;
7172 begin
7173 vTable := IPluginBaseImpl_vTable;
7174 end;
7175
7176 procedure IPluginSetImpl_addRefDispatcher(this: IPluginSet); cdecl;
7177 begin
7178 try
7179 IPluginSetImpl(this).addRef();
7180 except
7181 on e: Exception do FbException.catchException(nil, e);
7182 end
7183 end;
7184
7185 function IPluginSetImpl_releaseDispatcher(this: IPluginSet): Integer; cdecl;
7186 begin
7187 try
7188 Result := IPluginSetImpl(this).release();
7189 except
7190 on e: Exception do FbException.catchException(nil, e);
7191 end
7192 end;
7193
7194 function IPluginSetImpl_getNameDispatcher(this: IPluginSet): PAnsiChar; cdecl;
7195 begin
7196 try
7197 Result := IPluginSetImpl(this).getName();
7198 except
7199 on e: Exception do FbException.catchException(nil, e);
7200 end
7201 end;
7202
7203 function IPluginSetImpl_getModuleNameDispatcher(this: IPluginSet): PAnsiChar; cdecl;
7204 begin
7205 try
7206 Result := IPluginSetImpl(this).getModuleName();
7207 except
7208 on e: Exception do FbException.catchException(nil, e);
7209 end
7210 end;
7211
7212 function IPluginSetImpl_getPluginDispatcher(this: IPluginSet; status: IStatus): IPluginBase; cdecl;
7213 begin
7214 try
7215 Result := IPluginSetImpl(this).getPlugin(status);
7216 except
7217 on e: Exception do FbException.catchException(status, e);
7218 end
7219 end;
7220
7221 procedure IPluginSetImpl_nextDispatcher(this: IPluginSet; status: IStatus); cdecl;
7222 begin
7223 try
7224 IPluginSetImpl(this).next(status);
7225 except
7226 on e: Exception do FbException.catchException(status, e);
7227 end
7228 end;
7229
7230 procedure IPluginSetImpl_set_Dispatcher(this: IPluginSet; status: IStatus; s: PAnsiChar); cdecl;
7231 begin
7232 try
7233 IPluginSetImpl(this).set_(status, s);
7234 except
7235 on e: Exception do FbException.catchException(status, e);
7236 end
7237 end;
7238
7239 var
7240 IPluginSetImpl_vTable: PluginSetVTable;
7241
7242 constructor IPluginSetImpl.create;
7243 begin
7244 vTable := IPluginSetImpl_vTable;
7245 end;
7246
7247 procedure IConfigEntryImpl_addRefDispatcher(this: IConfigEntry); cdecl;
7248 begin
7249 try
7250 IConfigEntryImpl(this).addRef();
7251 except
7252 on e: Exception do FbException.catchException(nil, e);
7253 end
7254 end;
7255
7256 function IConfigEntryImpl_releaseDispatcher(this: IConfigEntry): Integer; cdecl;
7257 begin
7258 try
7259 Result := IConfigEntryImpl(this).release();
7260 except
7261 on e: Exception do FbException.catchException(nil, e);
7262 end
7263 end;
7264
7265 function IConfigEntryImpl_getNameDispatcher(this: IConfigEntry): PAnsiChar; cdecl;
7266 begin
7267 try
7268 Result := IConfigEntryImpl(this).getName();
7269 except
7270 on e: Exception do FbException.catchException(nil, e);
7271 end
7272 end;
7273
7274 function IConfigEntryImpl_getValueDispatcher(this: IConfigEntry): PAnsiChar; cdecl;
7275 begin
7276 try
7277 Result := IConfigEntryImpl(this).getValue();
7278 except
7279 on e: Exception do FbException.catchException(nil, e);
7280 end
7281 end;
7282
7283 function IConfigEntryImpl_getIntValueDispatcher(this: IConfigEntry): Int64; cdecl;
7284 begin
7285 try
7286 Result := IConfigEntryImpl(this).getIntValue();
7287 except
7288 on e: Exception do FbException.catchException(nil, e);
7289 end
7290 end;
7291
7292 function IConfigEntryImpl_getBoolValueDispatcher(this: IConfigEntry): Boolean; cdecl;
7293 begin
7294 try
7295 Result := IConfigEntryImpl(this).getBoolValue();
7296 except
7297 on e: Exception do FbException.catchException(nil, e);
7298 end
7299 end;
7300
7301 function IConfigEntryImpl_getSubConfigDispatcher(this: IConfigEntry; status: IStatus): IConfig; cdecl;
7302 begin
7303 try
7304 Result := IConfigEntryImpl(this).getSubConfig(status);
7305 except
7306 on e: Exception do FbException.catchException(status, e);
7307 end
7308 end;
7309
7310 var
7311 IConfigEntryImpl_vTable: ConfigEntryVTable;
7312
7313 constructor IConfigEntryImpl.create;
7314 begin
7315 vTable := IConfigEntryImpl_vTable;
7316 end;
7317
7318 procedure IConfigImpl_addRefDispatcher(this: IConfig); cdecl;
7319 begin
7320 try
7321 IConfigImpl(this).addRef();
7322 except
7323 on e: Exception do FbException.catchException(nil, e);
7324 end
7325 end;
7326
7327 function IConfigImpl_releaseDispatcher(this: IConfig): Integer; cdecl;
7328 begin
7329 try
7330 Result := IConfigImpl(this).release();
7331 except
7332 on e: Exception do FbException.catchException(nil, e);
7333 end
7334 end;
7335
7336 function IConfigImpl_findDispatcher(this: IConfig; status: IStatus; name: PAnsiChar): IConfigEntry; cdecl;
7337 begin
7338 try
7339 Result := IConfigImpl(this).find(status, name);
7340 except
7341 on e: Exception do FbException.catchException(status, e);
7342 end
7343 end;
7344
7345 function IConfigImpl_findValueDispatcher(this: IConfig; status: IStatus; name: PAnsiChar; value: PAnsiChar): IConfigEntry; cdecl;
7346 begin
7347 try
7348 Result := IConfigImpl(this).findValue(status, name, value);
7349 except
7350 on e: Exception do FbException.catchException(status, e);
7351 end
7352 end;
7353
7354 function IConfigImpl_findPosDispatcher(this: IConfig; status: IStatus; name: PAnsiChar; pos: Cardinal): IConfigEntry; cdecl;
7355 begin
7356 try
7357 Result := IConfigImpl(this).findPos(status, name, pos);
7358 except
7359 on e: Exception do FbException.catchException(status, e);
7360 end
7361 end;
7362
7363 var
7364 IConfigImpl_vTable: ConfigVTable;
7365
7366 constructor IConfigImpl.create;
7367 begin
7368 vTable := IConfigImpl_vTable;
7369 end;
7370
7371 procedure IFirebirdConfImpl_addRefDispatcher(this: IFirebirdConf); cdecl;
7372 begin
7373 try
7374 IFirebirdConfImpl(this).addRef();
7375 except
7376 on e: Exception do FbException.catchException(nil, e);
7377 end
7378 end;
7379
7380 function IFirebirdConfImpl_releaseDispatcher(this: IFirebirdConf): Integer; cdecl;
7381 begin
7382 try
7383 Result := IFirebirdConfImpl(this).release();
7384 except
7385 on e: Exception do FbException.catchException(nil, e);
7386 end
7387 end;
7388
7389 function IFirebirdConfImpl_getKeyDispatcher(this: IFirebirdConf; name: PAnsiChar): Cardinal; cdecl;
7390 begin
7391 try
7392 Result := IFirebirdConfImpl(this).getKey(name);
7393 except
7394 on e: Exception do FbException.catchException(nil, e);
7395 end
7396 end;
7397
7398 function IFirebirdConfImpl_asIntegerDispatcher(this: IFirebirdConf; key: Cardinal): Int64; cdecl;
7399 begin
7400 try
7401 Result := IFirebirdConfImpl(this).asInteger(key);
7402 except
7403 on e: Exception do FbException.catchException(nil, e);
7404 end
7405 end;
7406
7407 function IFirebirdConfImpl_asStringDispatcher(this: IFirebirdConf; key: Cardinal): PAnsiChar; cdecl;
7408 begin
7409 try
7410 Result := IFirebirdConfImpl(this).asString(key);
7411 except
7412 on e: Exception do FbException.catchException(nil, e);
7413 end
7414 end;
7415
7416 function IFirebirdConfImpl_asBooleanDispatcher(this: IFirebirdConf; key: Cardinal): Boolean; cdecl;
7417 begin
7418 try
7419 Result := IFirebirdConfImpl(this).asBoolean(key);
7420 except
7421 on e: Exception do FbException.catchException(nil, e);
7422 end
7423 end;
7424
7425 var
7426 IFirebirdConfImpl_vTable: FirebirdConfVTable;
7427
7428 constructor IFirebirdConfImpl.create;
7429 begin
7430 vTable := IFirebirdConfImpl_vTable;
7431 end;
7432
7433 procedure IPluginConfigImpl_addRefDispatcher(this: IPluginConfig); cdecl;
7434 begin
7435 try
7436 IPluginConfigImpl(this).addRef();
7437 except
7438 on e: Exception do FbException.catchException(nil, e);
7439 end
7440 end;
7441
7442 function IPluginConfigImpl_releaseDispatcher(this: IPluginConfig): Integer; cdecl;
7443 begin
7444 try
7445 Result := IPluginConfigImpl(this).release();
7446 except
7447 on e: Exception do FbException.catchException(nil, e);
7448 end
7449 end;
7450
7451 function IPluginConfigImpl_getConfigFileNameDispatcher(this: IPluginConfig): PAnsiChar; cdecl;
7452 begin
7453 try
7454 Result := IPluginConfigImpl(this).getConfigFileName();
7455 except
7456 on e: Exception do FbException.catchException(nil, e);
7457 end
7458 end;
7459
7460 function IPluginConfigImpl_getDefaultConfigDispatcher(this: IPluginConfig; status: IStatus): IConfig; cdecl;
7461 begin
7462 try
7463 Result := IPluginConfigImpl(this).getDefaultConfig(status);
7464 except
7465 on e: Exception do FbException.catchException(status, e);
7466 end
7467 end;
7468
7469 function IPluginConfigImpl_getFirebirdConfDispatcher(this: IPluginConfig; status: IStatus): IFirebirdConf; cdecl;
7470 begin
7471 try
7472 Result := IPluginConfigImpl(this).getFirebirdConf(status);
7473 except
7474 on e: Exception do FbException.catchException(status, e);
7475 end
7476 end;
7477
7478 procedure IPluginConfigImpl_setReleaseDelayDispatcher(this: IPluginConfig; status: IStatus; microSeconds: QWord); cdecl;
7479 begin
7480 try
7481 IPluginConfigImpl(this).setReleaseDelay(status, microSeconds);
7482 except
7483 on e: Exception do FbException.catchException(status, e);
7484 end
7485 end;
7486
7487 var
7488 IPluginConfigImpl_vTable: PluginConfigVTable;
7489
7490 constructor IPluginConfigImpl.create;
7491 begin
7492 vTable := IPluginConfigImpl_vTable;
7493 end;
7494
7495 function IPluginFactoryImpl_createPluginDispatcher(this: IPluginFactory; status: IStatus; factoryParameter: IPluginConfig): IPluginBase; cdecl;
7496 begin
7497 try
7498 Result := IPluginFactoryImpl(this).createPlugin(status, factoryParameter);
7499 except
7500 on e: Exception do FbException.catchException(status, e);
7501 end
7502 end;
7503
7504 var
7505 IPluginFactoryImpl_vTable: PluginFactoryVTable;
7506
7507 constructor IPluginFactoryImpl.create;
7508 begin
7509 vTable := IPluginFactoryImpl_vTable;
7510 end;
7511
7512 procedure IPluginModuleImpl_doCleanDispatcher(this: IPluginModule); cdecl;
7513 begin
7514 try
7515 IPluginModuleImpl(this).doClean();
7516 except
7517 on e: Exception do FbException.catchException(nil, e);
7518 end
7519 end;
7520
7521 var
7522 IPluginModuleImpl_vTable: PluginModuleVTable;
7523
7524 constructor IPluginModuleImpl.create;
7525 begin
7526 vTable := IPluginModuleImpl_vTable;
7527 end;
7528
7529 procedure IPluginManagerImpl_registerPluginFactoryDispatcher(this: IPluginManager; pluginType: Cardinal; defaultName: PAnsiChar; factory: IPluginFactory); cdecl;
7530 begin
7531 try
7532 IPluginManagerImpl(this).registerPluginFactory(pluginType, defaultName, factory);
7533 except
7534 on e: Exception do FbException.catchException(nil, e);
7535 end
7536 end;
7537
7538 procedure IPluginManagerImpl_registerModuleDispatcher(this: IPluginManager; cleanup: IPluginModule); cdecl;
7539 begin
7540 try
7541 IPluginManagerImpl(this).registerModule(cleanup);
7542 except
7543 on e: Exception do FbException.catchException(nil, e);
7544 end
7545 end;
7546
7547 procedure IPluginManagerImpl_unregisterModuleDispatcher(this: IPluginManager; cleanup: IPluginModule); cdecl;
7548 begin
7549 try
7550 IPluginManagerImpl(this).unregisterModule(cleanup);
7551 except
7552 on e: Exception do FbException.catchException(nil, e);
7553 end
7554 end;
7555
7556 function IPluginManagerImpl_getPluginsDispatcher(this: IPluginManager; status: IStatus; pluginType: Cardinal; namesList: PAnsiChar; firebirdConf: IFirebirdConf): IPluginSet; cdecl;
7557 begin
7558 try
7559 Result := IPluginManagerImpl(this).getPlugins(status, pluginType, namesList, firebirdConf);
7560 except
7561 on e: Exception do FbException.catchException(status, e);
7562 end
7563 end;
7564
7565 function IPluginManagerImpl_getConfigDispatcher(this: IPluginManager; status: IStatus; filename: PAnsiChar): IConfig; cdecl;
7566 begin
7567 try
7568 Result := IPluginManagerImpl(this).getConfig(status, filename);
7569 except
7570 on e: Exception do FbException.catchException(status, e);
7571 end
7572 end;
7573
7574 procedure IPluginManagerImpl_releasePluginDispatcher(this: IPluginManager; plugin: IPluginBase); cdecl;
7575 begin
7576 try
7577 IPluginManagerImpl(this).releasePlugin(plugin);
7578 except
7579 on e: Exception do FbException.catchException(nil, e);
7580 end
7581 end;
7582
7583 var
7584 IPluginManagerImpl_vTable: PluginManagerVTable;
7585
7586 constructor IPluginManagerImpl.create;
7587 begin
7588 vTable := IPluginManagerImpl_vTable;
7589 end;
7590
7591 procedure ICryptKeyImpl_setSymmetricDispatcher(this: ICryptKey; status: IStatus; type_: PAnsiChar; keyLength: Cardinal; key: Pointer); cdecl;
7592 begin
7593 try
7594 ICryptKeyImpl(this).setSymmetric(status, type_, keyLength, key);
7595 except
7596 on e: Exception do FbException.catchException(status, e);
7597 end
7598 end;
7599
7600 procedure ICryptKeyImpl_setAsymmetricDispatcher(this: ICryptKey; status: IStatus; type_: PAnsiChar; encryptKeyLength: Cardinal; encryptKey: Pointer; decryptKeyLength: Cardinal; decryptKey: Pointer); cdecl;
7601 begin
7602 try
7603 ICryptKeyImpl(this).setAsymmetric(status, type_, encryptKeyLength, encryptKey, decryptKeyLength, decryptKey);
7604 except
7605 on e: Exception do FbException.catchException(status, e);
7606 end
7607 end;
7608
7609 function ICryptKeyImpl_getEncryptKeyDispatcher(this: ICryptKey; length: CardinalPtr): Pointer; cdecl;
7610 begin
7611 try
7612 Result := ICryptKeyImpl(this).getEncryptKey(length);
7613 except
7614 on e: Exception do FbException.catchException(nil, e);
7615 end
7616 end;
7617
7618 function ICryptKeyImpl_getDecryptKeyDispatcher(this: ICryptKey; length: CardinalPtr): Pointer; cdecl;
7619 begin
7620 try
7621 Result := ICryptKeyImpl(this).getDecryptKey(length);
7622 except
7623 on e: Exception do FbException.catchException(nil, e);
7624 end
7625 end;
7626
7627 var
7628 ICryptKeyImpl_vTable: CryptKeyVTable;
7629
7630 constructor ICryptKeyImpl.create;
7631 begin
7632 vTable := ICryptKeyImpl_vTable;
7633 end;
7634
7635 function IConfigManagerImpl_getDirectoryDispatcher(this: IConfigManager; code: Cardinal): PAnsiChar; cdecl;
7636 begin
7637 try
7638 Result := IConfigManagerImpl(this).getDirectory(code);
7639 except
7640 on e: Exception do FbException.catchException(nil, e);
7641 end
7642 end;
7643
7644 function IConfigManagerImpl_getFirebirdConfDispatcher(this: IConfigManager): IFirebirdConf; cdecl;
7645 begin
7646 try
7647 Result := IConfigManagerImpl(this).getFirebirdConf();
7648 except
7649 on e: Exception do FbException.catchException(nil, e);
7650 end
7651 end;
7652
7653 function IConfigManagerImpl_getDatabaseConfDispatcher(this: IConfigManager; dbName: PAnsiChar): IFirebirdConf; cdecl;
7654 begin
7655 try
7656 Result := IConfigManagerImpl(this).getDatabaseConf(dbName);
7657 except
7658 on e: Exception do FbException.catchException(nil, e);
7659 end
7660 end;
7661
7662 function IConfigManagerImpl_getPluginConfigDispatcher(this: IConfigManager; configuredPlugin: PAnsiChar): IConfig; cdecl;
7663 begin
7664 try
7665 Result := IConfigManagerImpl(this).getPluginConfig(configuredPlugin);
7666 except
7667 on e: Exception do FbException.catchException(nil, e);
7668 end
7669 end;
7670
7671 function IConfigManagerImpl_getInstallDirectoryDispatcher(this: IConfigManager): PAnsiChar; cdecl;
7672 begin
7673 try
7674 Result := IConfigManagerImpl(this).getInstallDirectory();
7675 except
7676 on e: Exception do FbException.catchException(nil, e);
7677 end
7678 end;
7679
7680 function IConfigManagerImpl_getRootDirectoryDispatcher(this: IConfigManager): PAnsiChar; cdecl;
7681 begin
7682 try
7683 Result := IConfigManagerImpl(this).getRootDirectory();
7684 except
7685 on e: Exception do FbException.catchException(nil, e);
7686 end
7687 end;
7688
7689 var
7690 IConfigManagerImpl_vTable: ConfigManagerVTable;
7691
7692 constructor IConfigManagerImpl.create;
7693 begin
7694 vTable := IConfigManagerImpl_vTable;
7695 end;
7696
7697 procedure IEventCallbackImpl_addRefDispatcher(this: IEventCallback); cdecl;
7698 begin
7699 try
7700 IEventCallbackImpl(this).addRef();
7701 except
7702 on e: Exception do FbException.catchException(nil, e);
7703 end
7704 end;
7705
7706 function IEventCallbackImpl_releaseDispatcher(this: IEventCallback): Integer; cdecl;
7707 begin
7708 try
7709 Result := IEventCallbackImpl(this).release();
7710 except
7711 on e: Exception do FbException.catchException(nil, e);
7712 end
7713 end;
7714
7715 procedure IEventCallbackImpl_eventCallbackFunctionDispatcher(this: IEventCallback; length: Cardinal; events: BytePtr); cdecl;
7716 begin
7717 try
7718 IEventCallbackImpl(this).eventCallbackFunction(length, events);
7719 except
7720 on e: Exception do FbException.catchException(nil, e);
7721 end
7722 end;
7723
7724 var
7725 IEventCallbackImpl_vTable: EventCallbackVTable;
7726
7727 constructor IEventCallbackImpl.create;
7728 begin
7729 vTable := IEventCallbackImpl_vTable;
7730 end;
7731
7732 procedure IBlobImpl_addRefDispatcher(this: IBlob); cdecl;
7733 begin
7734 try
7735 IBlobImpl(this).addRef();
7736 except
7737 on e: Exception do FbException.catchException(nil, e);
7738 end
7739 end;
7740
7741 function IBlobImpl_releaseDispatcher(this: IBlob): Integer; cdecl;
7742 begin
7743 try
7744 Result := IBlobImpl(this).release();
7745 except
7746 on e: Exception do FbException.catchException(nil, e);
7747 end
7748 end;
7749
7750 procedure IBlobImpl_getInfoDispatcher(this: IBlob; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
7751 begin
7752 try
7753 IBlobImpl(this).getInfo(status, itemsLength, items, bufferLength, buffer);
7754 except
7755 on e: Exception do FbException.catchException(status, e);
7756 end
7757 end;
7758
7759 function IBlobImpl_getSegmentDispatcher(this: IBlob; status: IStatus; bufferLength: Cardinal; buffer: Pointer; segmentLength: CardinalPtr): Integer; cdecl;
7760 begin
7761 try
7762 Result := IBlobImpl(this).getSegment(status, bufferLength, buffer, segmentLength);
7763 except
7764 on e: Exception do FbException.catchException(status, e);
7765 end
7766 end;
7767
7768 procedure IBlobImpl_putSegmentDispatcher(this: IBlob; status: IStatus; length: Cardinal; buffer: Pointer); cdecl;
7769 begin
7770 try
7771 IBlobImpl(this).putSegment(status, length, buffer);
7772 except
7773 on e: Exception do FbException.catchException(status, e);
7774 end
7775 end;
7776
7777 procedure IBlobImpl_cancelDispatcher(this: IBlob; status: IStatus); cdecl;
7778 begin
7779 try
7780 IBlobImpl(this).cancel(status);
7781 except
7782 on e: Exception do FbException.catchException(status, e);
7783 end
7784 end;
7785
7786 procedure IBlobImpl_closeDispatcher(this: IBlob; status: IStatus); cdecl;
7787 begin
7788 try
7789 IBlobImpl(this).close(status);
7790 except
7791 on e: Exception do FbException.catchException(status, e);
7792 end
7793 end;
7794
7795 function IBlobImpl_seekDispatcher(this: IBlob; status: IStatus; mode: Integer; offset: Integer): Integer; cdecl;
7796 begin
7797 try
7798 Result := IBlobImpl(this).seek(status, mode, offset);
7799 except
7800 on e: Exception do FbException.catchException(status, e);
7801 end
7802 end;
7803
7804 var
7805 IBlobImpl_vTable: BlobVTable;
7806
7807 constructor IBlobImpl.create;
7808 begin
7809 vTable := IBlobImpl_vTable;
7810 end;
7811
7812 procedure ITransactionImpl_addRefDispatcher(this: ITransaction); cdecl;
7813 begin
7814 try
7815 ITransactionImpl(this).addRef();
7816 except
7817 on e: Exception do FbException.catchException(nil, e);
7818 end
7819 end;
7820
7821 function ITransactionImpl_releaseDispatcher(this: ITransaction): Integer; cdecl;
7822 begin
7823 try
7824 Result := ITransactionImpl(this).release();
7825 except
7826 on e: Exception do FbException.catchException(nil, e);
7827 end
7828 end;
7829
7830 procedure ITransactionImpl_getInfoDispatcher(this: ITransaction; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
7831 begin
7832 try
7833 ITransactionImpl(this).getInfo(status, itemsLength, items, bufferLength, buffer);
7834 except
7835 on e: Exception do FbException.catchException(status, e);
7836 end
7837 end;
7838
7839 procedure ITransactionImpl_prepareDispatcher(this: ITransaction; status: IStatus; msgLength: Cardinal; message: BytePtr); cdecl;
7840 begin
7841 try
7842 ITransactionImpl(this).prepare(status, msgLength, message);
7843 except
7844 on e: Exception do FbException.catchException(status, e);
7845 end
7846 end;
7847
7848 procedure ITransactionImpl_commitDispatcher(this: ITransaction; status: IStatus); cdecl;
7849 begin
7850 try
7851 ITransactionImpl(this).commit(status);
7852 except
7853 on e: Exception do FbException.catchException(status, e);
7854 end
7855 end;
7856
7857 procedure ITransactionImpl_commitRetainingDispatcher(this: ITransaction; status: IStatus); cdecl;
7858 begin
7859 try
7860 ITransactionImpl(this).commitRetaining(status);
7861 except
7862 on e: Exception do FbException.catchException(status, e);
7863 end
7864 end;
7865
7866 procedure ITransactionImpl_rollbackDispatcher(this: ITransaction; status: IStatus); cdecl;
7867 begin
7868 try
7869 ITransactionImpl(this).rollback(status);
7870 except
7871 on e: Exception do FbException.catchException(status, e);
7872 end
7873 end;
7874
7875 procedure ITransactionImpl_rollbackRetainingDispatcher(this: ITransaction; status: IStatus); cdecl;
7876 begin
7877 try
7878 ITransactionImpl(this).rollbackRetaining(status);
7879 except
7880 on e: Exception do FbException.catchException(status, e);
7881 end
7882 end;
7883
7884 procedure ITransactionImpl_disconnectDispatcher(this: ITransaction; status: IStatus); cdecl;
7885 begin
7886 try
7887 ITransactionImpl(this).disconnect(status);
7888 except
7889 on e: Exception do FbException.catchException(status, e);
7890 end
7891 end;
7892
7893 function ITransactionImpl_joinDispatcher(this: ITransaction; status: IStatus; transaction: ITransaction): ITransaction; cdecl;
7894 begin
7895 try
7896 Result := ITransactionImpl(this).join(status, transaction);
7897 except
7898 on e: Exception do FbException.catchException(status, e);
7899 end
7900 end;
7901
7902 function ITransactionImpl_validateDispatcher(this: ITransaction; status: IStatus; attachment: IAttachment): ITransaction; cdecl;
7903 begin
7904 try
7905 Result := ITransactionImpl(this).validate(status, attachment);
7906 except
7907 on e: Exception do FbException.catchException(status, e);
7908 end
7909 end;
7910
7911 function ITransactionImpl_enterDtcDispatcher(this: ITransaction; status: IStatus): ITransaction; cdecl;
7912 begin
7913 try
7914 Result := ITransactionImpl(this).enterDtc(status);
7915 except
7916 on e: Exception do FbException.catchException(status, e);
7917 end
7918 end;
7919
7920 var
7921 ITransactionImpl_vTable: TransactionVTable;
7922
7923 constructor ITransactionImpl.create;
7924 begin
7925 vTable := ITransactionImpl_vTable;
7926 end;
7927
7928 procedure IMessageMetadataImpl_addRefDispatcher(this: IMessageMetadata); cdecl;
7929 begin
7930 try
7931 IMessageMetadataImpl(this).addRef();
7932 except
7933 on e: Exception do FbException.catchException(nil, e);
7934 end
7935 end;
7936
7937 function IMessageMetadataImpl_releaseDispatcher(this: IMessageMetadata): Integer; cdecl;
7938 begin
7939 try
7940 Result := IMessageMetadataImpl(this).release();
7941 except
7942 on e: Exception do FbException.catchException(nil, e);
7943 end
7944 end;
7945
7946 function IMessageMetadataImpl_getCountDispatcher(this: IMessageMetadata; status: IStatus): Cardinal; cdecl;
7947 begin
7948 try
7949 Result := IMessageMetadataImpl(this).getCount(status);
7950 except
7951 on e: Exception do FbException.catchException(status, e);
7952 end
7953 end;
7954
7955 function IMessageMetadataImpl_getFieldDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
7956 begin
7957 try
7958 Result := IMessageMetadataImpl(this).getField(status, index);
7959 except
7960 on e: Exception do FbException.catchException(status, e);
7961 end
7962 end;
7963
7964 function IMessageMetadataImpl_getRelationDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
7965 begin
7966 try
7967 Result := IMessageMetadataImpl(this).getRelation(status, index);
7968 except
7969 on e: Exception do FbException.catchException(status, e);
7970 end
7971 end;
7972
7973 function IMessageMetadataImpl_getOwnerDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
7974 begin
7975 try
7976 Result := IMessageMetadataImpl(this).getOwner(status, index);
7977 except
7978 on e: Exception do FbException.catchException(status, e);
7979 end
7980 end;
7981
7982 function IMessageMetadataImpl_getAliasDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): PAnsiChar; cdecl;
7983 begin
7984 try
7985 Result := IMessageMetadataImpl(this).getAlias(status, index);
7986 except
7987 on e: Exception do FbException.catchException(status, e);
7988 end
7989 end;
7990
7991 function IMessageMetadataImpl_getTypeDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
7992 begin
7993 try
7994 Result := IMessageMetadataImpl(this).getType(status, index);
7995 except
7996 on e: Exception do FbException.catchException(status, e);
7997 end
7998 end;
7999
8000 function IMessageMetadataImpl_isNullableDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Boolean; cdecl;
8001 begin
8002 try
8003 Result := IMessageMetadataImpl(this).isNullable(status, index);
8004 except
8005 on e: Exception do FbException.catchException(status, e);
8006 end
8007 end;
8008
8009 function IMessageMetadataImpl_getSubTypeDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Integer; cdecl;
8010 begin
8011 try
8012 Result := IMessageMetadataImpl(this).getSubType(status, index);
8013 except
8014 on e: Exception do FbException.catchException(status, e);
8015 end
8016 end;
8017
8018 function IMessageMetadataImpl_getLengthDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
8019 begin
8020 try
8021 Result := IMessageMetadataImpl(this).getLength(status, index);
8022 except
8023 on e: Exception do FbException.catchException(status, e);
8024 end
8025 end;
8026
8027 function IMessageMetadataImpl_getScaleDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Integer; cdecl;
8028 begin
8029 try
8030 Result := IMessageMetadataImpl(this).getScale(status, index);
8031 except
8032 on e: Exception do FbException.catchException(status, e);
8033 end
8034 end;
8035
8036 function IMessageMetadataImpl_getCharSetDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
8037 begin
8038 try
8039 Result := IMessageMetadataImpl(this).getCharSet(status, index);
8040 except
8041 on e: Exception do FbException.catchException(status, e);
8042 end
8043 end;
8044
8045 function IMessageMetadataImpl_getOffsetDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
8046 begin
8047 try
8048 Result := IMessageMetadataImpl(this).getOffset(status, index);
8049 except
8050 on e: Exception do FbException.catchException(status, e);
8051 end
8052 end;
8053
8054 function IMessageMetadataImpl_getNullOffsetDispatcher(this: IMessageMetadata; status: IStatus; index: Cardinal): Cardinal; cdecl;
8055 begin
8056 try
8057 Result := IMessageMetadataImpl(this).getNullOffset(status, index);
8058 except
8059 on e: Exception do FbException.catchException(status, e);
8060 end
8061 end;
8062
8063 function IMessageMetadataImpl_getBuilderDispatcher(this: IMessageMetadata; status: IStatus): IMetadataBuilder; cdecl;
8064 begin
8065 try
8066 Result := IMessageMetadataImpl(this).getBuilder(status);
8067 except
8068 on e: Exception do FbException.catchException(status, e);
8069 end
8070 end;
8071
8072 function IMessageMetadataImpl_getMessageLengthDispatcher(this: IMessageMetadata; status: IStatus): Cardinal; cdecl;
8073 begin
8074 try
8075 Result := IMessageMetadataImpl(this).getMessageLength(status);
8076 except
8077 on e: Exception do FbException.catchException(status, e);
8078 end
8079 end;
8080
8081 var
8082 IMessageMetadataImpl_vTable: MessageMetadataVTable;
8083
8084 constructor IMessageMetadataImpl.create;
8085 begin
8086 vTable := IMessageMetadataImpl_vTable;
8087 end;
8088
8089 procedure IMetadataBuilderImpl_addRefDispatcher(this: IMetadataBuilder); cdecl;
8090 begin
8091 try
8092 IMetadataBuilderImpl(this).addRef();
8093 except
8094 on e: Exception do FbException.catchException(nil, e);
8095 end
8096 end;
8097
8098 function IMetadataBuilderImpl_releaseDispatcher(this: IMetadataBuilder): Integer; cdecl;
8099 begin
8100 try
8101 Result := IMetadataBuilderImpl(this).release();
8102 except
8103 on e: Exception do FbException.catchException(nil, e);
8104 end
8105 end;
8106
8107 procedure IMetadataBuilderImpl_setTypeDispatcher(this: IMetadataBuilder; status: IStatus; index: Cardinal; type_: Cardinal); cdecl;
8108 begin
8109 try
8110 IMetadataBuilderImpl(this).setType(status, index, type_);
8111 except
8112 on e: Exception do FbException.catchException(status, e);
8113 end
8114 end;
8115
8116 procedure IMetadataBuilderImpl_setSubTypeDispatcher(this: IMetadataBuilder; status: IStatus; index: Cardinal; subType: Integer); cdecl;
8117 begin
8118 try
8119 IMetadataBuilderImpl(this).setSubType(status, index, subType);
8120 except
8121 on e: Exception do FbException.catchException(status, e);
8122 end
8123 end;
8124
8125 procedure IMetadataBuilderImpl_setLengthDispatcher(this: IMetadataBuilder; status: IStatus; index: Cardinal; length: Cardinal); cdecl;
8126 begin
8127 try
8128 IMetadataBuilderImpl(this).setLength(status, index, length);
8129 except
8130 on e: Exception do FbException.catchException(status, e);
8131 end
8132 end;
8133
8134 procedure IMetadataBuilderImpl_setCharSetDispatcher(this: IMetadataBuilder; status: IStatus; index: Cardinal; charSet: Cardinal); cdecl;
8135 begin
8136 try
8137 IMetadataBuilderImpl(this).setCharSet(status, index, charSet);
8138 except
8139 on e: Exception do FbException.catchException(status, e);
8140 end
8141 end;
8142
8143 procedure IMetadataBuilderImpl_setScaleDispatcher(this: IMetadataBuilder; status: IStatus; index: Cardinal; scale: integer); cdecl;
8144 begin
8145 try
8146 IMetadataBuilderImpl(this).setScale(status, index, scale);
8147 except
8148 on e: Exception do FbException.catchException(status, e);
8149 end
8150 end;
8151
8152 procedure IMetadataBuilderImpl_truncateDispatcher(this: IMetadataBuilder; status: IStatus; count: Cardinal); cdecl;
8153 begin
8154 try
8155 IMetadataBuilderImpl(this).truncate(status, count);
8156 except
8157 on e: Exception do FbException.catchException(status, e);
8158 end
8159 end;
8160
8161 procedure IMetadataBuilderImpl_moveNameToIndexDispatcher(this: IMetadataBuilder; status: IStatus; name: PAnsiChar; index: Cardinal); cdecl;
8162 begin
8163 try
8164 IMetadataBuilderImpl(this).moveNameToIndex(status, name, index);
8165 except
8166 on e: Exception do FbException.catchException(status, e);
8167 end
8168 end;
8169
8170 procedure IMetadataBuilderImpl_removeDispatcher(this: IMetadataBuilder; status: IStatus; index: Cardinal); cdecl;
8171 begin
8172 try
8173 IMetadataBuilderImpl(this).remove(status, index);
8174 except
8175 on e: Exception do FbException.catchException(status, e);
8176 end
8177 end;
8178
8179 function IMetadataBuilderImpl_addFieldDispatcher(this: IMetadataBuilder; status: IStatus): Cardinal; cdecl;
8180 begin
8181 try
8182 Result := IMetadataBuilderImpl(this).addField(status);
8183 except
8184 on e: Exception do FbException.catchException(status, e);
8185 end
8186 end;
8187
8188 function IMetadataBuilderImpl_getMetadataDispatcher(this: IMetadataBuilder; status: IStatus): IMessageMetadata; cdecl;
8189 begin
8190 try
8191 Result := IMetadataBuilderImpl(this).getMetadata(status);
8192 except
8193 on e: Exception do FbException.catchException(status, e);
8194 end
8195 end;
8196
8197 var
8198 IMetadataBuilderImpl_vTable: MetadataBuilderVTable;
8199
8200 constructor IMetadataBuilderImpl.create;
8201 begin
8202 vTable := IMetadataBuilderImpl_vTable;
8203 end;
8204
8205 procedure IResultSetImpl_addRefDispatcher(this: IResultSet); cdecl;
8206 begin
8207 try
8208 IResultSetImpl(this).addRef();
8209 except
8210 on e: Exception do FbException.catchException(nil, e);
8211 end
8212 end;
8213
8214 function IResultSetImpl_releaseDispatcher(this: IResultSet): Integer; cdecl;
8215 begin
8216 try
8217 Result := IResultSetImpl(this).release();
8218 except
8219 on e: Exception do FbException.catchException(nil, e);
8220 end
8221 end;
8222
8223 function IResultSetImpl_fetchNextDispatcher(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
8224 begin
8225 try
8226 Result := IResultSetImpl(this).fetchNext(status, message);
8227 except
8228 on e: Exception do FbException.catchException(status, e);
8229 end
8230 end;
8231
8232 function IResultSetImpl_fetchPriorDispatcher(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
8233 begin
8234 try
8235 Result := IResultSetImpl(this).fetchPrior(status, message);
8236 except
8237 on e: Exception do FbException.catchException(status, e);
8238 end
8239 end;
8240
8241 function IResultSetImpl_fetchFirstDispatcher(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
8242 begin
8243 try
8244 Result := IResultSetImpl(this).fetchFirst(status, message);
8245 except
8246 on e: Exception do FbException.catchException(status, e);
8247 end
8248 end;
8249
8250 function IResultSetImpl_fetchLastDispatcher(this: IResultSet; status: IStatus; message: Pointer): Integer; cdecl;
8251 begin
8252 try
8253 Result := IResultSetImpl(this).fetchLast(status, message);
8254 except
8255 on e: Exception do FbException.catchException(status, e);
8256 end
8257 end;
8258
8259 function IResultSetImpl_fetchAbsoluteDispatcher(this: IResultSet; status: IStatus; position: Integer; message: Pointer): Integer; cdecl;
8260 begin
8261 try
8262 Result := IResultSetImpl(this).fetchAbsolute(status, position, message);
8263 except
8264 on e: Exception do FbException.catchException(status, e);
8265 end
8266 end;
8267
8268 function IResultSetImpl_fetchRelativeDispatcher(this: IResultSet; status: IStatus; offset: Integer; message: Pointer): Integer; cdecl;
8269 begin
8270 try
8271 Result := IResultSetImpl(this).fetchRelative(status, offset, message);
8272 except
8273 on e: Exception do FbException.catchException(status, e);
8274 end
8275 end;
8276
8277 function IResultSetImpl_isEofDispatcher(this: IResultSet; status: IStatus): Boolean; cdecl;
8278 begin
8279 try
8280 Result := IResultSetImpl(this).isEof(status);
8281 except
8282 on e: Exception do FbException.catchException(status, e);
8283 end
8284 end;
8285
8286 function IResultSetImpl_isBofDispatcher(this: IResultSet; status: IStatus): Boolean; cdecl;
8287 begin
8288 try
8289 Result := IResultSetImpl(this).isBof(status);
8290 except
8291 on e: Exception do FbException.catchException(status, e);
8292 end
8293 end;
8294
8295 function IResultSetImpl_getMetadataDispatcher(this: IResultSet; status: IStatus): IMessageMetadata; cdecl;
8296 begin
8297 try
8298 Result := IResultSetImpl(this).getMetadata(status);
8299 except
8300 on e: Exception do FbException.catchException(status, e);
8301 end
8302 end;
8303
8304 procedure IResultSetImpl_closeDispatcher(this: IResultSet; status: IStatus); cdecl;
8305 begin
8306 try
8307 IResultSetImpl(this).close(status);
8308 except
8309 on e: Exception do FbException.catchException(status, e);
8310 end
8311 end;
8312
8313 procedure IResultSetImpl_setDelayedOutputFormatDispatcher(this: IResultSet; status: IStatus; format: IMessageMetadata); cdecl;
8314 begin
8315 try
8316 IResultSetImpl(this).setDelayedOutputFormat(status, format);
8317 except
8318 on e: Exception do FbException.catchException(status, e);
8319 end
8320 end;
8321
8322 var
8323 IResultSetImpl_vTable: ResultSetVTable;
8324
8325 constructor IResultSetImpl.create;
8326 begin
8327 vTable := IResultSetImpl_vTable;
8328 end;
8329
8330 procedure IStatementImpl_addRefDispatcher(this: IStatement); cdecl;
8331 begin
8332 try
8333 IStatementImpl(this).addRef();
8334 except
8335 on e: Exception do FbException.catchException(nil, e);
8336 end
8337 end;
8338
8339 function IStatementImpl_releaseDispatcher(this: IStatement): Integer; cdecl;
8340 begin
8341 try
8342 Result := IStatementImpl(this).release();
8343 except
8344 on e: Exception do FbException.catchException(nil, e);
8345 end
8346 end;
8347
8348 procedure IStatementImpl_getInfoDispatcher(this: IStatement; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
8349 begin
8350 try
8351 IStatementImpl(this).getInfo(status, itemsLength, items, bufferLength, buffer);
8352 except
8353 on e: Exception do FbException.catchException(status, e);
8354 end
8355 end;
8356
8357 function IStatementImpl_getTypeDispatcher(this: IStatement; status: IStatus): Cardinal; cdecl;
8358 begin
8359 try
8360 Result := IStatementImpl(this).getType(status);
8361 except
8362 on e: Exception do FbException.catchException(status, e);
8363 end
8364 end;
8365
8366 function IStatementImpl_getPlanDispatcher(this: IStatement; status: IStatus; detailed: Boolean): PAnsiChar; cdecl;
8367 begin
8368 try
8369 Result := IStatementImpl(this).getPlan(status, detailed);
8370 except
8371 on e: Exception do FbException.catchException(status, e);
8372 end
8373 end;
8374
8375 function IStatementImpl_getAffectedRecordsDispatcher(this: IStatement; status: IStatus): QWord; cdecl;
8376 begin
8377 try
8378 Result := IStatementImpl(this).getAffectedRecords(status);
8379 except
8380 on e: Exception do FbException.catchException(status, e);
8381 end
8382 end;
8383
8384 function IStatementImpl_getInputMetadataDispatcher(this: IStatement; status: IStatus): IMessageMetadata; cdecl;
8385 begin
8386 try
8387 Result := IStatementImpl(this).getInputMetadata(status);
8388 except
8389 on e: Exception do FbException.catchException(status, e);
8390 end
8391 end;
8392
8393 function IStatementImpl_getOutputMetadataDispatcher(this: IStatement; status: IStatus): IMessageMetadata; cdecl;
8394 begin
8395 try
8396 Result := IStatementImpl(this).getOutputMetadata(status);
8397 except
8398 on e: Exception do FbException.catchException(status, e);
8399 end
8400 end;
8401
8402 function IStatementImpl_executeDispatcher(this: IStatement; status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction; cdecl;
8403 begin
8404 try
8405 Result := IStatementImpl(this).execute(status, transaction, inMetadata, inBuffer, outMetadata, outBuffer);
8406 except
8407 on e: Exception do FbException.catchException(status, e);
8408 end
8409 end;
8410
8411 function IStatementImpl_openCursorDispatcher(this: IStatement; status: IStatus; transaction: ITransaction; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; flags: Cardinal): IResultSet; cdecl;
8412 begin
8413 try
8414 Result := IStatementImpl(this).openCursor(status, transaction, inMetadata, inBuffer, outMetadata, flags);
8415 except
8416 on e: Exception do FbException.catchException(status, e);
8417 end
8418 end;
8419
8420 procedure IStatementImpl_setCursorNameDispatcher(this: IStatement; status: IStatus; name: PAnsiChar); cdecl;
8421 begin
8422 try
8423 IStatementImpl(this).setCursorName(status, name);
8424 except
8425 on e: Exception do FbException.catchException(status, e);
8426 end
8427 end;
8428
8429 procedure IStatementImpl_freeDispatcher(this: IStatement; status: IStatus); cdecl;
8430 begin
8431 try
8432 IStatementImpl(this).free(status);
8433 except
8434 on e: Exception do FbException.catchException(status, e);
8435 end
8436 end;
8437
8438 function IStatementImpl_getFlagsDispatcher(this: IStatement; status: IStatus): Cardinal; cdecl;
8439 begin
8440 try
8441 Result := IStatementImpl(this).getFlags(status);
8442 except
8443 on e: Exception do FbException.catchException(status, e);
8444 end
8445 end;
8446
8447 var
8448 IStatementImpl_vTable: StatementVTable;
8449
8450 constructor IStatementImpl.create;
8451 begin
8452 vTable := IStatementImpl_vTable;
8453 end;
8454
8455 procedure IRequestImpl_addRefDispatcher(this: IRequest); cdecl;
8456 begin
8457 try
8458 IRequestImpl(this).addRef();
8459 except
8460 on e: Exception do FbException.catchException(nil, e);
8461 end
8462 end;
8463
8464 function IRequestImpl_releaseDispatcher(this: IRequest): Integer; cdecl;
8465 begin
8466 try
8467 Result := IRequestImpl(this).release();
8468 except
8469 on e: Exception do FbException.catchException(nil, e);
8470 end
8471 end;
8472
8473 procedure IRequestImpl_receiveDispatcher(this: IRequest; status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); cdecl;
8474 begin
8475 try
8476 IRequestImpl(this).receive(status, level, msgType, length, message);
8477 except
8478 on e: Exception do FbException.catchException(status, e);
8479 end
8480 end;
8481
8482 procedure IRequestImpl_sendDispatcher(this: IRequest; status: IStatus; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); cdecl;
8483 begin
8484 try
8485 IRequestImpl(this).send(status, level, msgType, length, message);
8486 except
8487 on e: Exception do FbException.catchException(status, e);
8488 end
8489 end;
8490
8491 procedure IRequestImpl_getInfoDispatcher(this: IRequest; status: IStatus; level: Integer; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
8492 begin
8493 try
8494 IRequestImpl(this).getInfo(status, level, itemsLength, items, bufferLength, buffer);
8495 except
8496 on e: Exception do FbException.catchException(status, e);
8497 end
8498 end;
8499
8500 procedure IRequestImpl_startDispatcher(this: IRequest; status: IStatus; tra: ITransaction; level: Integer); cdecl;
8501 begin
8502 try
8503 IRequestImpl(this).start(status, tra, level);
8504 except
8505 on e: Exception do FbException.catchException(status, e);
8506 end
8507 end;
8508
8509 procedure IRequestImpl_startAndSendDispatcher(this: IRequest; status: IStatus; tra: ITransaction; level: Integer; msgType: Cardinal; length: Cardinal; message: BytePtr); cdecl;
8510 begin
8511 try
8512 IRequestImpl(this).startAndSend(status, tra, level, msgType, length, message);
8513 except
8514 on e: Exception do FbException.catchException(status, e);
8515 end
8516 end;
8517
8518 procedure IRequestImpl_unwindDispatcher(this: IRequest; status: IStatus; level: Integer); cdecl;
8519 begin
8520 try
8521 IRequestImpl(this).unwind(status, level);
8522 except
8523 on e: Exception do FbException.catchException(status, e);
8524 end
8525 end;
8526
8527 procedure IRequestImpl_freeDispatcher(this: IRequest; status: IStatus); cdecl;
8528 begin
8529 try
8530 IRequestImpl(this).free(status);
8531 except
8532 on e: Exception do FbException.catchException(status, e);
8533 end
8534 end;
8535
8536 var
8537 IRequestImpl_vTable: RequestVTable;
8538
8539 constructor IRequestImpl.create;
8540 begin
8541 vTable := IRequestImpl_vTable;
8542 end;
8543
8544 procedure IEventsImpl_addRefDispatcher(this: IEvents); cdecl;
8545 begin
8546 try
8547 IEventsImpl(this).addRef();
8548 except
8549 on e: Exception do FbException.catchException(nil, e);
8550 end
8551 end;
8552
8553 function IEventsImpl_releaseDispatcher(this: IEvents): Integer; cdecl;
8554 begin
8555 try
8556 Result := IEventsImpl(this).release();
8557 except
8558 on e: Exception do FbException.catchException(nil, e);
8559 end
8560 end;
8561
8562 procedure IEventsImpl_cancelDispatcher(this: IEvents; status: IStatus); cdecl;
8563 begin
8564 try
8565 IEventsImpl(this).cancel(status);
8566 except
8567 on e: Exception do FbException.catchException(status, e);
8568 end
8569 end;
8570
8571 var
8572 IEventsImpl_vTable: EventsVTable;
8573
8574 constructor IEventsImpl.create;
8575 begin
8576 vTable := IEventsImpl_vTable;
8577 end;
8578
8579 procedure IAttachmentImpl_addRefDispatcher(this: IAttachment); cdecl;
8580 begin
8581 try
8582 IAttachmentImpl(this).addRef();
8583 except
8584 on e: Exception do FbException.catchException(nil, e);
8585 end
8586 end;
8587
8588 function IAttachmentImpl_releaseDispatcher(this: IAttachment): Integer; cdecl;
8589 begin
8590 try
8591 Result := IAttachmentImpl(this).release();
8592 except
8593 on e: Exception do FbException.catchException(nil, e);
8594 end
8595 end;
8596
8597 procedure IAttachmentImpl_getInfoDispatcher(this: IAttachment; status: IStatus; itemsLength: Cardinal; items: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
8598 begin
8599 try
8600 IAttachmentImpl(this).getInfo(status, itemsLength, items, bufferLength, buffer);
8601 except
8602 on e: Exception do FbException.catchException(status, e);
8603 end
8604 end;
8605
8606 function IAttachmentImpl_startTransactionDispatcher(this: IAttachment; status: IStatus; tpbLength: Cardinal; tpb: BytePtr): ITransaction; cdecl;
8607 begin
8608 try
8609 Result := IAttachmentImpl(this).startTransaction(status, tpbLength, tpb);
8610 except
8611 on e: Exception do FbException.catchException(status, e);
8612 end
8613 end;
8614
8615 function IAttachmentImpl_reconnectTransactionDispatcher(this: IAttachment; status: IStatus; length: Cardinal; id: BytePtr): ITransaction; cdecl;
8616 begin
8617 try
8618 Result := IAttachmentImpl(this).reconnectTransaction(status, length, id);
8619 except
8620 on e: Exception do FbException.catchException(status, e);
8621 end
8622 end;
8623
8624 function IAttachmentImpl_compileRequestDispatcher(this: IAttachment; status: IStatus; blrLength: Cardinal; blr: BytePtr): IRequest; cdecl;
8625 begin
8626 try
8627 Result := IAttachmentImpl(this).compileRequest(status, blrLength, blr);
8628 except
8629 on e: Exception do FbException.catchException(status, e);
8630 end
8631 end;
8632
8633 procedure IAttachmentImpl_transactRequestDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; blrLength: Cardinal; blr: BytePtr; inMsgLength: Cardinal; inMsg: BytePtr; outMsgLength: Cardinal; outMsg: BytePtr); cdecl;
8634 begin
8635 try
8636 IAttachmentImpl(this).transactRequest(status, transaction, blrLength, blr, inMsgLength, inMsg, outMsgLength, outMsg);
8637 except
8638 on e: Exception do FbException.catchException(status, e);
8639 end
8640 end;
8641
8642 function IAttachmentImpl_createBlobDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob; cdecl;
8643 begin
8644 try
8645 Result := IAttachmentImpl(this).createBlob(status, transaction, id, bpbLength, bpb);
8646 except
8647 on e: Exception do FbException.catchException(status, e);
8648 end
8649 end;
8650
8651 function IAttachmentImpl_openBlobDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; bpbLength: Cardinal; bpb: BytePtr): IBlob; cdecl;
8652 begin
8653 try
8654 Result := IAttachmentImpl(this).openBlob(status, transaction, id, bpbLength, bpb);
8655 except
8656 on e: Exception do FbException.catchException(status, e);
8657 end
8658 end;
8659
8660 function IAttachmentImpl_getSliceDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr): Integer; cdecl;
8661 begin
8662 try
8663 Result := IAttachmentImpl(this).getSlice(status, transaction, id, sdlLength, sdl, paramLength, param, sliceLength, slice);
8664 except
8665 on e: Exception do FbException.catchException(status, e);
8666 end
8667 end;
8668
8669 procedure IAttachmentImpl_putSliceDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; id: PISC_QUAD; sdlLength: Cardinal; sdl: BytePtr; paramLength: Cardinal; param: BytePtr; sliceLength: Integer; slice: BytePtr); cdecl;
8670 begin
8671 try
8672 IAttachmentImpl(this).putSlice(status, transaction, id, sdlLength, sdl, paramLength, param, sliceLength, slice);
8673 except
8674 on e: Exception do FbException.catchException(status, e);
8675 end
8676 end;
8677
8678 procedure IAttachmentImpl_executeDynDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; length: Cardinal; dyn: BytePtr); cdecl;
8679 begin
8680 try
8681 IAttachmentImpl(this).executeDyn(status, transaction, length, dyn);
8682 except
8683 on e: Exception do FbException.catchException(status, e);
8684 end
8685 end;
8686
8687 function IAttachmentImpl_prepareDispatcher(this: IAttachment; status: IStatus; tra: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; flags: Cardinal): IStatement; cdecl;
8688 begin
8689 try
8690 Result := IAttachmentImpl(this).prepare(status, tra, stmtLength, sqlStmt, dialect, flags);
8691 except
8692 on e: Exception do FbException.catchException(status, e);
8693 end
8694 end;
8695
8696 function IAttachmentImpl_executeDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; outBuffer: Pointer): ITransaction; cdecl;
8697 begin
8698 try
8699 Result := IAttachmentImpl(this).execute(status, transaction, stmtLength, sqlStmt, dialect, inMetadata, inBuffer, outMetadata, outBuffer);
8700 except
8701 on e: Exception do FbException.catchException(status, e);
8702 end
8703 end;
8704
8705 function IAttachmentImpl_openCursorDispatcher(this: IAttachment; status: IStatus; transaction: ITransaction; stmtLength: Cardinal; sqlStmt: PAnsiChar; dialect: Cardinal; inMetadata: IMessageMetadata; inBuffer: Pointer; outMetadata: IMessageMetadata; cursorName: PAnsiChar; cursorFlags: Cardinal): IResultSet; cdecl;
8706 begin
8707 try
8708 Result := IAttachmentImpl(this).openCursor(status, transaction, stmtLength, sqlStmt, dialect, inMetadata, inBuffer, outMetadata, cursorName, cursorFlags);
8709 except
8710 on e: Exception do FbException.catchException(status, e);
8711 end
8712 end;
8713
8714 function IAttachmentImpl_queEventsDispatcher(this: IAttachment; status: IStatus; callback: IEventCallback; length: Cardinal; events: BytePtr): IEvents; cdecl;
8715 begin
8716 try
8717 Result := IAttachmentImpl(this).queEvents(status, callback, length, events);
8718 except
8719 on e: Exception do FbException.catchException(status, e);
8720 end
8721 end;
8722
8723 procedure IAttachmentImpl_cancelOperationDispatcher(this: IAttachment; status: IStatus; option: Integer); cdecl;
8724 begin
8725 try
8726 IAttachmentImpl(this).cancelOperation(status, option);
8727 except
8728 on e: Exception do FbException.catchException(status, e);
8729 end
8730 end;
8731
8732 procedure IAttachmentImpl_pingDispatcher(this: IAttachment; status: IStatus); cdecl;
8733 begin
8734 try
8735 IAttachmentImpl(this).ping(status);
8736 except
8737 on e: Exception do FbException.catchException(status, e);
8738 end
8739 end;
8740
8741 procedure IAttachmentImpl_detachDispatcher(this: IAttachment; status: IStatus); cdecl;
8742 begin
8743 try
8744 IAttachmentImpl(this).detach(status);
8745 except
8746 on e: Exception do FbException.catchException(status, e);
8747 end
8748 end;
8749
8750 procedure IAttachmentImpl_dropDatabaseDispatcher(this: IAttachment; status: IStatus); cdecl;
8751 begin
8752 try
8753 IAttachmentImpl(this).dropDatabase(status);
8754 except
8755 on e: Exception do FbException.catchException(status, e);
8756 end
8757 end;
8758
8759 var
8760 IAttachmentImpl_vTable: AttachmentVTable;
8761
8762 constructor IAttachmentImpl.create;
8763 begin
8764 vTable := IAttachmentImpl_vTable;
8765 end;
8766
8767 procedure IServiceImpl_addRefDispatcher(this: IService); cdecl;
8768 begin
8769 try
8770 IServiceImpl(this).addRef();
8771 except
8772 on e: Exception do FbException.catchException(nil, e);
8773 end
8774 end;
8775
8776 function IServiceImpl_releaseDispatcher(this: IService): Integer; cdecl;
8777 begin
8778 try
8779 Result := IServiceImpl(this).release();
8780 except
8781 on e: Exception do FbException.catchException(nil, e);
8782 end
8783 end;
8784
8785 procedure IServiceImpl_detachDispatcher(this: IService; status: IStatus); cdecl;
8786 begin
8787 try
8788 IServiceImpl(this).detach(status);
8789 except
8790 on e: Exception do FbException.catchException(status, e);
8791 end
8792 end;
8793
8794 procedure IServiceImpl_queryDispatcher(this: IService; status: IStatus; sendLength: Cardinal; sendItems: BytePtr; receiveLength: Cardinal; receiveItems: BytePtr; bufferLength: Cardinal; buffer: BytePtr); cdecl;
8795 begin
8796 try
8797 IServiceImpl(this).query(status, sendLength, sendItems, receiveLength, receiveItems, bufferLength, buffer);
8798 except
8799 on e: Exception do FbException.catchException(status, e);
8800 end
8801 end;
8802
8803 procedure IServiceImpl_startDispatcher(this: IService; status: IStatus; spbLength: Cardinal; spb: BytePtr); cdecl;
8804 begin
8805 try
8806 IServiceImpl(this).start(status, spbLength, spb);
8807 except
8808 on e: Exception do FbException.catchException(status, e);
8809 end
8810 end;
8811
8812 var
8813 IServiceImpl_vTable: ServiceVTable;
8814
8815 constructor IServiceImpl.create;
8816 begin
8817 vTable := IServiceImpl_vTable;
8818 end;
8819
8820 procedure IProviderImpl_addRefDispatcher(this: IProvider); cdecl;
8821 begin
8822 try
8823 IProviderImpl(this).addRef();
8824 except
8825 on e: Exception do FbException.catchException(nil, e);
8826 end
8827 end;
8828
8829 function IProviderImpl_releaseDispatcher(this: IProvider): Integer; cdecl;
8830 begin
8831 try
8832 Result := IProviderImpl(this).release();
8833 except
8834 on e: Exception do FbException.catchException(nil, e);
8835 end
8836 end;
8837
8838 procedure IProviderImpl_setOwnerDispatcher(this: IProvider; r: IReferenceCounted); cdecl;
8839 begin
8840 try
8841 IProviderImpl(this).setOwner(r);
8842 except
8843 on e: Exception do FbException.catchException(nil, e);
8844 end
8845 end;
8846
8847 function IProviderImpl_getOwnerDispatcher(this: IProvider): IReferenceCounted; cdecl;
8848 begin
8849 try
8850 Result := IProviderImpl(this).getOwner();
8851 except
8852 on e: Exception do FbException.catchException(nil, e);
8853 end
8854 end;
8855
8856 function IProviderImpl_attachDatabaseDispatcher(this: IProvider; status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment; cdecl;
8857 begin
8858 try
8859 Result := IProviderImpl(this).attachDatabase(status, fileName, dpbLength, dpb);
8860 except
8861 on e: Exception do FbException.catchException(status, e);
8862 end
8863 end;
8864
8865 function IProviderImpl_createDatabaseDispatcher(this: IProvider; status: IStatus; fileName: PAnsiChar; dpbLength: Cardinal; dpb: BytePtr): IAttachment; cdecl;
8866 begin
8867 try
8868 Result := IProviderImpl(this).createDatabase(status, fileName, dpbLength, dpb);
8869 except
8870 on e: Exception do FbException.catchException(status, e);
8871 end
8872 end;
8873
8874 function IProviderImpl_attachServiceManagerDispatcher(this: IProvider; status: IStatus; service: PAnsiChar; spbLength: Cardinal; spb: BytePtr): IService; cdecl;
8875 begin
8876 try
8877 Result := IProviderImpl(this).attachServiceManager(status, service, spbLength, spb);
8878 except
8879 on e: Exception do FbException.catchException(status, e);
8880 end
8881 end;
8882
8883 procedure IProviderImpl_shutdownDispatcher(this: IProvider; status: IStatus; timeout: Cardinal; reason: Integer); cdecl;
8884 begin
8885 try
8886 IProviderImpl(this).shutdown(status, timeout, reason);
8887 except
8888 on e: Exception do FbException.catchException(status, e);
8889 end
8890 end;
8891
8892 procedure IProviderImpl_setDbCryptCallbackDispatcher(this: IProvider; status: IStatus; cryptCallback: ICryptKeyCallback); cdecl;
8893 begin
8894 try
8895 IProviderImpl(this).setDbCryptCallback(status, cryptCallback);
8896 except
8897 on e: Exception do FbException.catchException(status, e);
8898 end
8899 end;
8900
8901 var
8902 IProviderImpl_vTable: ProviderVTable;
8903
8904 constructor IProviderImpl.create;
8905 begin
8906 vTable := IProviderImpl_vTable;
8907 end;
8908
8909 procedure IDtcStartImpl_disposeDispatcher(this: IDtcStart); cdecl;
8910 begin
8911 try
8912 IDtcStartImpl(this).dispose();
8913 except
8914 on e: Exception do FbException.catchException(nil, e);
8915 end
8916 end;
8917
8918 procedure IDtcStartImpl_addAttachmentDispatcher(this: IDtcStart; status: IStatus; att: IAttachment); cdecl;
8919 begin
8920 try
8921 IDtcStartImpl(this).addAttachment(status, att);
8922 except
8923 on e: Exception do FbException.catchException(status, e);
8924 end
8925 end;
8926
8927 procedure IDtcStartImpl_addWithTpbDispatcher(this: IDtcStart; status: IStatus; att: IAttachment; length: Cardinal; tpb: BytePtr); cdecl;
8928 begin
8929 try
8930 IDtcStartImpl(this).addWithTpb(status, att, length, tpb);
8931 except
8932 on e: Exception do FbException.catchException(status, e);
8933 end
8934 end;
8935
8936 function IDtcStartImpl_startDispatcher(this: IDtcStart; status: IStatus): ITransaction; cdecl;
8937 begin
8938 try
8939 Result := IDtcStartImpl(this).start(status);
8940 except
8941 on e: Exception do FbException.catchException(status, e);
8942 end
8943 end;
8944
8945 var
8946 IDtcStartImpl_vTable: DtcStartVTable;
8947
8948 constructor IDtcStartImpl.create;
8949 begin
8950 vTable := IDtcStartImpl_vTable;
8951 end;
8952
8953 function IDtcImpl_joinDispatcher(this: IDtc; status: IStatus; one: ITransaction; two: ITransaction): ITransaction; cdecl;
8954 begin
8955 try
8956 Result := IDtcImpl(this).join(status, one, two);
8957 except
8958 on e: Exception do FbException.catchException(status, e);
8959 end
8960 end;
8961
8962 function IDtcImpl_startBuilderDispatcher(this: IDtc; status: IStatus): IDtcStart; cdecl;
8963 begin
8964 try
8965 Result := IDtcImpl(this).startBuilder(status);
8966 except
8967 on e: Exception do FbException.catchException(status, e);
8968 end
8969 end;
8970
8971 var
8972 IDtcImpl_vTable: DtcVTable;
8973
8974 constructor IDtcImpl.create;
8975 begin
8976 vTable := IDtcImpl_vTable;
8977 end;
8978
8979 procedure IAuthImpl_addRefDispatcher(this: IAuth); cdecl;
8980 begin
8981 try
8982 IAuthImpl(this).addRef();
8983 except
8984 on e: Exception do FbException.catchException(nil, e);
8985 end
8986 end;
8987
8988 function IAuthImpl_releaseDispatcher(this: IAuth): Integer; cdecl;
8989 begin
8990 try
8991 Result := IAuthImpl(this).release();
8992 except
8993 on e: Exception do FbException.catchException(nil, e);
8994 end
8995 end;
8996
8997 procedure IAuthImpl_setOwnerDispatcher(this: IAuth; r: IReferenceCounted); cdecl;
8998 begin
8999 try
9000 IAuthImpl(this).setOwner(r);
9001 except
9002 on e: Exception do FbException.catchException(nil, e);
9003 end
9004 end;
9005
9006 function IAuthImpl_getOwnerDispatcher(this: IAuth): IReferenceCounted; cdecl;
9007 begin
9008 try
9009 Result := IAuthImpl(this).getOwner();
9010 except
9011 on e: Exception do FbException.catchException(nil, e);
9012 end
9013 end;
9014
9015 var
9016 IAuthImpl_vTable: AuthVTable;
9017
9018 constructor IAuthImpl.create;
9019 begin
9020 vTable := IAuthImpl_vTable;
9021 end;
9022
9023 procedure IWriterImpl_resetDispatcher(this: IWriter); cdecl;
9024 begin
9025 try
9026 IWriterImpl(this).reset();
9027 except
9028 on e: Exception do FbException.catchException(nil, e);
9029 end
9030 end;
9031
9032 procedure IWriterImpl_addDispatcher(this: IWriter; status: IStatus; name: PAnsiChar); cdecl;
9033 begin
9034 try
9035 IWriterImpl(this).add(status, name);
9036 except
9037 on e: Exception do FbException.catchException(status, e);
9038 end
9039 end;
9040
9041 procedure IWriterImpl_setTypeDispatcher(this: IWriter; status: IStatus; value: PAnsiChar); cdecl;
9042 begin
9043 try
9044 IWriterImpl(this).setType(status, value);
9045 except
9046 on e: Exception do FbException.catchException(status, e);
9047 end
9048 end;
9049
9050 procedure IWriterImpl_setDbDispatcher(this: IWriter; status: IStatus; value: PAnsiChar); cdecl;
9051 begin
9052 try
9053 IWriterImpl(this).setDb(status, value);
9054 except
9055 on e: Exception do FbException.catchException(status, e);
9056 end
9057 end;
9058
9059 var
9060 IWriterImpl_vTable: WriterVTable;
9061
9062 constructor IWriterImpl.create;
9063 begin
9064 vTable := IWriterImpl_vTable;
9065 end;
9066
9067 function IServerBlockImpl_getLoginDispatcher(this: IServerBlock): PAnsiChar; cdecl;
9068 begin
9069 try
9070 Result := IServerBlockImpl(this).getLogin();
9071 except
9072 on e: Exception do FbException.catchException(nil, e);
9073 end
9074 end;
9075
9076 function IServerBlockImpl_getDataDispatcher(this: IServerBlock; length: CardinalPtr): BytePtr; cdecl;
9077 begin
9078 try
9079 Result := IServerBlockImpl(this).getData(length);
9080 except
9081 on e: Exception do FbException.catchException(nil, e);
9082 end
9083 end;
9084
9085 procedure IServerBlockImpl_putDataDispatcher(this: IServerBlock; status: IStatus; length: Cardinal; data: Pointer); cdecl;
9086 begin
9087 try
9088 IServerBlockImpl(this).putData(status, length, data);
9089 except
9090 on e: Exception do FbException.catchException(status, e);
9091 end
9092 end;
9093
9094 function IServerBlockImpl_newKeyDispatcher(this: IServerBlock; status: IStatus): ICryptKey; cdecl;
9095 begin
9096 try
9097 Result := IServerBlockImpl(this).newKey(status);
9098 except
9099 on e: Exception do FbException.catchException(status, e);
9100 end
9101 end;
9102
9103 var
9104 IServerBlockImpl_vTable: ServerBlockVTable;
9105
9106 constructor IServerBlockImpl.create;
9107 begin
9108 vTable := IServerBlockImpl_vTable;
9109 end;
9110
9111 procedure IClientBlockImpl_addRefDispatcher(this: IClientBlock); cdecl;
9112 begin
9113 try
9114 IClientBlockImpl(this).addRef();
9115 except
9116 on e: Exception do FbException.catchException(nil, e);
9117 end
9118 end;
9119
9120 function IClientBlockImpl_releaseDispatcher(this: IClientBlock): Integer; cdecl;
9121 begin
9122 try
9123 Result := IClientBlockImpl(this).release();
9124 except
9125 on e: Exception do FbException.catchException(nil, e);
9126 end
9127 end;
9128
9129 function IClientBlockImpl_getLoginDispatcher(this: IClientBlock): PAnsiChar; cdecl;
9130 begin
9131 try
9132 Result := IClientBlockImpl(this).getLogin();
9133 except
9134 on e: Exception do FbException.catchException(nil, e);
9135 end
9136 end;
9137
9138 function IClientBlockImpl_getPasswordDispatcher(this: IClientBlock): PAnsiChar; cdecl;
9139 begin
9140 try
9141 Result := IClientBlockImpl(this).getPassword();
9142 except
9143 on e: Exception do FbException.catchException(nil, e);
9144 end
9145 end;
9146
9147 function IClientBlockImpl_getDataDispatcher(this: IClientBlock; length: CardinalPtr): BytePtr; cdecl;
9148 begin
9149 try
9150 Result := IClientBlockImpl(this).getData(length);
9151 except
9152 on e: Exception do FbException.catchException(nil, e);
9153 end
9154 end;
9155
9156 procedure IClientBlockImpl_putDataDispatcher(this: IClientBlock; status: IStatus; length: Cardinal; data: Pointer); cdecl;
9157 begin
9158 try
9159 IClientBlockImpl(this).putData(status, length, data);
9160 except
9161 on e: Exception do FbException.catchException(status, e);
9162 end
9163 end;
9164
9165 function IClientBlockImpl_newKeyDispatcher(this: IClientBlock; status: IStatus): ICryptKey; cdecl;
9166 begin
9167 try
9168 Result := IClientBlockImpl(this).newKey(status);
9169 except
9170 on e: Exception do FbException.catchException(status, e);
9171 end
9172 end;
9173
9174 var
9175 IClientBlockImpl_vTable: ClientBlockVTable;
9176
9177 constructor IClientBlockImpl.create;
9178 begin
9179 vTable := IClientBlockImpl_vTable;
9180 end;
9181
9182 procedure IServerImpl_addRefDispatcher(this: IServer); cdecl;
9183 begin
9184 try
9185 IServerImpl(this).addRef();
9186 except
9187 on e: Exception do FbException.catchException(nil, e);
9188 end
9189 end;
9190
9191 function IServerImpl_releaseDispatcher(this: IServer): Integer; cdecl;
9192 begin
9193 try
9194 Result := IServerImpl(this).release();
9195 except
9196 on e: Exception do FbException.catchException(nil, e);
9197 end
9198 end;
9199
9200 procedure IServerImpl_setOwnerDispatcher(this: IServer; r: IReferenceCounted); cdecl;
9201 begin
9202 try
9203 IServerImpl(this).setOwner(r);
9204 except
9205 on e: Exception do FbException.catchException(nil, e);
9206 end
9207 end;
9208
9209 function IServerImpl_getOwnerDispatcher(this: IServer): IReferenceCounted; cdecl;
9210 begin
9211 try
9212 Result := IServerImpl(this).getOwner();
9213 except
9214 on e: Exception do FbException.catchException(nil, e);
9215 end
9216 end;
9217
9218 function IServerImpl_authenticateDispatcher(this: IServer; status: IStatus; sBlock: IServerBlock; writerInterface: IWriter): Integer; cdecl;
9219 begin
9220 try
9221 Result := IServerImpl(this).authenticate(status, sBlock, writerInterface);
9222 except
9223 on e: Exception do FbException.catchException(status, e);
9224 end
9225 end;
9226
9227 var
9228 IServerImpl_vTable: ServerVTable;
9229
9230 constructor IServerImpl.create;
9231 begin
9232 vTable := IServerImpl_vTable;
9233 end;
9234
9235 procedure IClientImpl_addRefDispatcher(this: IClient); cdecl;
9236 begin
9237 try
9238 IClientImpl(this).addRef();
9239 except
9240 on e: Exception do FbException.catchException(nil, e);
9241 end
9242 end;
9243
9244 function IClientImpl_releaseDispatcher(this: IClient): Integer; cdecl;
9245 begin
9246 try
9247 Result := IClientImpl(this).release();
9248 except
9249 on e: Exception do FbException.catchException(nil, e);
9250 end
9251 end;
9252
9253 procedure IClientImpl_setOwnerDispatcher(this: IClient; r: IReferenceCounted); cdecl;
9254 begin
9255 try
9256 IClientImpl(this).setOwner(r);
9257 except
9258 on e: Exception do FbException.catchException(nil, e);
9259 end
9260 end;
9261
9262 function IClientImpl_getOwnerDispatcher(this: IClient): IReferenceCounted; cdecl;
9263 begin
9264 try
9265 Result := IClientImpl(this).getOwner();
9266 except
9267 on e: Exception do FbException.catchException(nil, e);
9268 end
9269 end;
9270
9271 function IClientImpl_authenticateDispatcher(this: IClient; status: IStatus; cBlock: IClientBlock): Integer; cdecl;
9272 begin
9273 try
9274 Result := IClientImpl(this).authenticate(status, cBlock);
9275 except
9276 on e: Exception do FbException.catchException(status, e);
9277 end
9278 end;
9279
9280 var
9281 IClientImpl_vTable: ClientVTable;
9282
9283 constructor IClientImpl.create;
9284 begin
9285 vTable := IClientImpl_vTable;
9286 end;
9287
9288 function IUserFieldImpl_enteredDispatcher(this: IUserField): Integer; cdecl;
9289 begin
9290 try
9291 Result := IUserFieldImpl(this).entered();
9292 except
9293 on e: Exception do FbException.catchException(nil, e);
9294 end
9295 end;
9296
9297 function IUserFieldImpl_specifiedDispatcher(this: IUserField): Integer; cdecl;
9298 begin
9299 try
9300 Result := IUserFieldImpl(this).specified();
9301 except
9302 on e: Exception do FbException.catchException(nil, e);
9303 end
9304 end;
9305
9306 procedure IUserFieldImpl_setEnteredDispatcher(this: IUserField; status: IStatus; newValue: Integer); cdecl;
9307 begin
9308 try
9309 IUserFieldImpl(this).setEntered(status, newValue);
9310 except
9311 on e: Exception do FbException.catchException(status, e);
9312 end
9313 end;
9314
9315 var
9316 IUserFieldImpl_vTable: UserFieldVTable;
9317
9318 constructor IUserFieldImpl.create;
9319 begin
9320 vTable := IUserFieldImpl_vTable;
9321 end;
9322
9323 function ICharUserFieldImpl_enteredDispatcher(this: ICharUserField): Integer; cdecl;
9324 begin
9325 try
9326 Result := ICharUserFieldImpl(this).entered();
9327 except
9328 on e: Exception do FbException.catchException(nil, e);
9329 end
9330 end;
9331
9332 function ICharUserFieldImpl_specifiedDispatcher(this: ICharUserField): Integer; cdecl;
9333 begin
9334 try
9335 Result := ICharUserFieldImpl(this).specified();
9336 except
9337 on e: Exception do FbException.catchException(nil, e);
9338 end
9339 end;
9340
9341 procedure ICharUserFieldImpl_setEnteredDispatcher(this: ICharUserField; status: IStatus; newValue: Integer); cdecl;
9342 begin
9343 try
9344 ICharUserFieldImpl(this).setEntered(status, newValue);
9345 except
9346 on e: Exception do FbException.catchException(status, e);
9347 end
9348 end;
9349
9350 function ICharUserFieldImpl_getDispatcher(this: ICharUserField): PAnsiChar; cdecl;
9351 begin
9352 try
9353 Result := ICharUserFieldImpl(this).get();
9354 except
9355 on e: Exception do FbException.catchException(nil, e);
9356 end
9357 end;
9358
9359 procedure ICharUserFieldImpl_set_Dispatcher(this: ICharUserField; status: IStatus; newValue: PAnsiChar); cdecl;
9360 begin
9361 try
9362 ICharUserFieldImpl(this).set_(status, newValue);
9363 except
9364 on e: Exception do FbException.catchException(status, e);
9365 end
9366 end;
9367
9368 var
9369 ICharUserFieldImpl_vTable: CharUserFieldVTable;
9370
9371 constructor ICharUserFieldImpl.create;
9372 begin
9373 vTable := ICharUserFieldImpl_vTable;
9374 end;
9375
9376 function IIntUserFieldImpl_enteredDispatcher(this: IIntUserField): Integer; cdecl;
9377 begin
9378 try
9379 Result := IIntUserFieldImpl(this).entered();
9380 except
9381 on e: Exception do FbException.catchException(nil, e);
9382 end
9383 end;
9384
9385 function IIntUserFieldImpl_specifiedDispatcher(this: IIntUserField): Integer; cdecl;
9386 begin
9387 try
9388 Result := IIntUserFieldImpl(this).specified();
9389 except
9390 on e: Exception do FbException.catchException(nil, e);
9391 end
9392 end;
9393
9394 procedure IIntUserFieldImpl_setEnteredDispatcher(this: IIntUserField; status: IStatus; newValue: Integer); cdecl;
9395 begin
9396 try
9397 IIntUserFieldImpl(this).setEntered(status, newValue);
9398 except
9399 on e: Exception do FbException.catchException(status, e);
9400 end
9401 end;
9402
9403 function IIntUserFieldImpl_getDispatcher(this: IIntUserField): Integer; cdecl;
9404 begin
9405 try
9406 Result := IIntUserFieldImpl(this).get();
9407 except
9408 on e: Exception do FbException.catchException(nil, e);
9409 end
9410 end;
9411
9412 procedure IIntUserFieldImpl_set_Dispatcher(this: IIntUserField; status: IStatus; newValue: Integer); cdecl;
9413 begin
9414 try
9415 IIntUserFieldImpl(this).set_(status, newValue);
9416 except
9417 on e: Exception do FbException.catchException(status, e);
9418 end
9419 end;
9420
9421 var
9422 IIntUserFieldImpl_vTable: IntUserFieldVTable;
9423
9424 constructor IIntUserFieldImpl.create;
9425 begin
9426 vTable := IIntUserFieldImpl_vTable;
9427 end;
9428
9429 function IUserImpl_operationDispatcher(this: IUser): Cardinal; cdecl;
9430 begin
9431 try
9432 Result := IUserImpl(this).operation();
9433 except
9434 on e: Exception do FbException.catchException(nil, e);
9435 end
9436 end;
9437
9438 function IUserImpl_userNameDispatcher(this: IUser): ICharUserField; cdecl;
9439 begin
9440 try
9441 Result := IUserImpl(this).userName();
9442 except
9443 on e: Exception do FbException.catchException(nil, e);
9444 end
9445 end;
9446
9447 function IUserImpl_passwordDispatcher(this: IUser): ICharUserField; cdecl;
9448 begin
9449 try
9450 Result := IUserImpl(this).password();
9451 except
9452 on e: Exception do FbException.catchException(nil, e);
9453 end
9454 end;
9455
9456 function IUserImpl_firstNameDispatcher(this: IUser): ICharUserField; cdecl;
9457 begin
9458 try
9459 Result := IUserImpl(this).firstName();
9460 except
9461 on e: Exception do FbException.catchException(nil, e);
9462 end
9463 end;
9464
9465 function IUserImpl_lastNameDispatcher(this: IUser): ICharUserField; cdecl;
9466 begin
9467 try
9468 Result := IUserImpl(this).lastName();
9469 except
9470 on e: Exception do FbException.catchException(nil, e);
9471 end
9472 end;
9473
9474 function IUserImpl_middleNameDispatcher(this: IUser): ICharUserField; cdecl;
9475 begin
9476 try
9477 Result := IUserImpl(this).middleName();
9478 except
9479 on e: Exception do FbException.catchException(nil, e);
9480 end
9481 end;
9482
9483 function IUserImpl_commentDispatcher(this: IUser): ICharUserField; cdecl;
9484 begin
9485 try
9486 Result := IUserImpl(this).comment();
9487 except
9488 on e: Exception do FbException.catchException(nil, e);
9489 end
9490 end;
9491
9492 function IUserImpl_attributesDispatcher(this: IUser): ICharUserField; cdecl;
9493 begin
9494 try
9495 Result := IUserImpl(this).attributes();
9496 except
9497 on e: Exception do FbException.catchException(nil, e);
9498 end
9499 end;
9500
9501 function IUserImpl_activeDispatcher(this: IUser): IIntUserField; cdecl;
9502 begin
9503 try
9504 Result := IUserImpl(this).active();
9505 except
9506 on e: Exception do FbException.catchException(nil, e);
9507 end
9508 end;
9509
9510 function IUserImpl_adminDispatcher(this: IUser): IIntUserField; cdecl;
9511 begin
9512 try
9513 Result := IUserImpl(this).admin();
9514 except
9515 on e: Exception do FbException.catchException(nil, e);
9516 end
9517 end;
9518
9519 procedure IUserImpl_clearDispatcher(this: IUser; status: IStatus); cdecl;
9520 begin
9521 try
9522 IUserImpl(this).clear(status);
9523 except
9524 on e: Exception do FbException.catchException(status, e);
9525 end
9526 end;
9527
9528 var
9529 IUserImpl_vTable: UserVTable;
9530
9531 constructor IUserImpl.create;
9532 begin
9533 vTable := IUserImpl_vTable;
9534 end;
9535
9536 procedure IListUsersImpl_listDispatcher(this: IListUsers; status: IStatus; user: IUser); cdecl;
9537 begin
9538 try
9539 IListUsersImpl(this).list(status, user);
9540 except
9541 on e: Exception do FbException.catchException(status, e);
9542 end
9543 end;
9544
9545 var
9546 IListUsersImpl_vTable: ListUsersVTable;
9547
9548 constructor IListUsersImpl.create;
9549 begin
9550 vTable := IListUsersImpl_vTable;
9551 end;
9552
9553 function ILogonInfoImpl_nameDispatcher(this: ILogonInfo): PAnsiChar; cdecl;
9554 begin
9555 try
9556 Result := ILogonInfoImpl(this).name();
9557 except
9558 on e: Exception do FbException.catchException(nil, e);
9559 end
9560 end;
9561
9562 function ILogonInfoImpl_roleDispatcher(this: ILogonInfo): PAnsiChar; cdecl;
9563 begin
9564 try
9565 Result := ILogonInfoImpl(this).role();
9566 except
9567 on e: Exception do FbException.catchException(nil, e);
9568 end
9569 end;
9570
9571 function ILogonInfoImpl_networkProtocolDispatcher(this: ILogonInfo): PAnsiChar; cdecl;
9572 begin
9573 try
9574 Result := ILogonInfoImpl(this).networkProtocol();
9575 except
9576 on e: Exception do FbException.catchException(nil, e);
9577 end
9578 end;
9579
9580 function ILogonInfoImpl_remoteAddressDispatcher(this: ILogonInfo): PAnsiChar; cdecl;
9581 begin
9582 try
9583 Result := ILogonInfoImpl(this).remoteAddress();
9584 except
9585 on e: Exception do FbException.catchException(nil, e);
9586 end
9587 end;
9588
9589 function ILogonInfoImpl_authBlockDispatcher(this: ILogonInfo; length: CardinalPtr): BytePtr; cdecl;
9590 begin
9591 try
9592 Result := ILogonInfoImpl(this).authBlock(length);
9593 except
9594 on e: Exception do FbException.catchException(nil, e);
9595 end
9596 end;
9597
9598 var
9599 ILogonInfoImpl_vTable: LogonInfoVTable;
9600
9601 constructor ILogonInfoImpl.create;
9602 begin
9603 vTable := ILogonInfoImpl_vTable;
9604 end;
9605
9606 procedure IManagementImpl_addRefDispatcher(this: IManagement); cdecl;
9607 begin
9608 try
9609 IManagementImpl(this).addRef();
9610 except
9611 on e: Exception do FbException.catchException(nil, e);
9612 end
9613 end;
9614
9615 function IManagementImpl_releaseDispatcher(this: IManagement): Integer; cdecl;
9616 begin
9617 try
9618 Result := IManagementImpl(this).release();
9619 except
9620 on e: Exception do FbException.catchException(nil, e);
9621 end
9622 end;
9623
9624 procedure IManagementImpl_setOwnerDispatcher(this: IManagement; r: IReferenceCounted); cdecl;
9625 begin
9626 try
9627 IManagementImpl(this).setOwner(r);
9628 except
9629 on e: Exception do FbException.catchException(nil, e);
9630 end
9631 end;
9632
9633 function IManagementImpl_getOwnerDispatcher(this: IManagement): IReferenceCounted; cdecl;
9634 begin
9635 try
9636 Result := IManagementImpl(this).getOwner();
9637 except
9638 on e: Exception do FbException.catchException(nil, e);
9639 end
9640 end;
9641
9642 procedure IManagementImpl_startDispatcher(this: IManagement; status: IStatus; logonInfo: ILogonInfo); cdecl;
9643 begin
9644 try
9645 IManagementImpl(this).start(status, logonInfo);
9646 except
9647 on e: Exception do FbException.catchException(status, e);
9648 end
9649 end;
9650
9651 function IManagementImpl_executeDispatcher(this: IManagement; status: IStatus; user: IUser; callback: IListUsers): Integer; cdecl;
9652 begin
9653 try
9654 Result := IManagementImpl(this).execute(status, user, callback);
9655 except
9656 on e: Exception do FbException.catchException(status, e);
9657 end
9658 end;
9659
9660 procedure IManagementImpl_commitDispatcher(this: IManagement; status: IStatus); cdecl;
9661 begin
9662 try
9663 IManagementImpl(this).commit(status);
9664 except
9665 on e: Exception do FbException.catchException(status, e);
9666 end
9667 end;
9668
9669 procedure IManagementImpl_rollbackDispatcher(this: IManagement; status: IStatus); cdecl;
9670 begin
9671 try
9672 IManagementImpl(this).rollback(status);
9673 except
9674 on e: Exception do FbException.catchException(status, e);
9675 end
9676 end;
9677
9678 var
9679 IManagementImpl_vTable: ManagementVTable;
9680
9681 constructor IManagementImpl.create;
9682 begin
9683 vTable := IManagementImpl_vTable;
9684 end;
9685
9686 procedure IWireCryptPluginImpl_addRefDispatcher(this: IWireCryptPlugin); cdecl;
9687 begin
9688 try
9689 IWireCryptPluginImpl(this).addRef();
9690 except
9691 on e: Exception do FbException.catchException(nil, e);
9692 end
9693 end;
9694
9695 function IWireCryptPluginImpl_releaseDispatcher(this: IWireCryptPlugin): Integer; cdecl;
9696 begin
9697 try
9698 Result := IWireCryptPluginImpl(this).release();
9699 except
9700 on e: Exception do FbException.catchException(nil, e);
9701 end
9702 end;
9703
9704 procedure IWireCryptPluginImpl_setOwnerDispatcher(this: IWireCryptPlugin; r: IReferenceCounted); cdecl;
9705 begin
9706 try
9707 IWireCryptPluginImpl(this).setOwner(r);
9708 except
9709 on e: Exception do FbException.catchException(nil, e);
9710 end
9711 end;
9712
9713 function IWireCryptPluginImpl_getOwnerDispatcher(this: IWireCryptPlugin): IReferenceCounted; cdecl;
9714 begin
9715 try
9716 Result := IWireCryptPluginImpl(this).getOwner();
9717 except
9718 on e: Exception do FbException.catchException(nil, e);
9719 end
9720 end;
9721
9722 function IWireCryptPluginImpl_getKnownTypesDispatcher(this: IWireCryptPlugin; status: IStatus): PAnsiChar; cdecl;
9723 begin
9724 try
9725 Result := IWireCryptPluginImpl(this).getKnownTypes(status);
9726 except
9727 on e: Exception do FbException.catchException(status, e);
9728 end
9729 end;
9730
9731 procedure IWireCryptPluginImpl_setKeyDispatcher(this: IWireCryptPlugin; status: IStatus; key: ICryptKey); cdecl;
9732 begin
9733 try
9734 IWireCryptPluginImpl(this).setKey(status, key);
9735 except
9736 on e: Exception do FbException.catchException(status, e);
9737 end
9738 end;
9739
9740 procedure IWireCryptPluginImpl_encryptDispatcher(this: IWireCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
9741 begin
9742 try
9743 IWireCryptPluginImpl(this).encrypt(status, length, from, to_);
9744 except
9745 on e: Exception do FbException.catchException(status, e);
9746 end
9747 end;
9748
9749 procedure IWireCryptPluginImpl_decryptDispatcher(this: IWireCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
9750 begin
9751 try
9752 IWireCryptPluginImpl(this).decrypt(status, length, from, to_);
9753 except
9754 on e: Exception do FbException.catchException(status, e);
9755 end
9756 end;
9757
9758 var
9759 IWireCryptPluginImpl_vTable: WireCryptPluginVTable;
9760
9761 constructor IWireCryptPluginImpl.create;
9762 begin
9763 vTable := IWireCryptPluginImpl_vTable;
9764 end;
9765
9766 function ICryptKeyCallbackImpl_callbackDispatcher(this: ICryptKeyCallback; dataLength: Cardinal; data: Pointer; bufferLength: Cardinal; buffer: Pointer): Cardinal; cdecl;
9767 begin
9768 try
9769 Result := ICryptKeyCallbackImpl(this).callback(dataLength, data, bufferLength, buffer);
9770 except
9771 on e: Exception do FbException.catchException(nil, e);
9772 end
9773 end;
9774
9775 var
9776 ICryptKeyCallbackImpl_vTable: CryptKeyCallbackVTable;
9777
9778 constructor ICryptKeyCallbackImpl.create;
9779 begin
9780 vTable := ICryptKeyCallbackImpl_vTable;
9781 end;
9782
9783 procedure IKeyHolderPluginImpl_addRefDispatcher(this: IKeyHolderPlugin); cdecl;
9784 begin
9785 try
9786 IKeyHolderPluginImpl(this).addRef();
9787 except
9788 on e: Exception do FbException.catchException(nil, e);
9789 end
9790 end;
9791
9792 function IKeyHolderPluginImpl_releaseDispatcher(this: IKeyHolderPlugin): Integer; cdecl;
9793 begin
9794 try
9795 Result := IKeyHolderPluginImpl(this).release();
9796 except
9797 on e: Exception do FbException.catchException(nil, e);
9798 end
9799 end;
9800
9801 procedure IKeyHolderPluginImpl_setOwnerDispatcher(this: IKeyHolderPlugin; r: IReferenceCounted); cdecl;
9802 begin
9803 try
9804 IKeyHolderPluginImpl(this).setOwner(r);
9805 except
9806 on e: Exception do FbException.catchException(nil, e);
9807 end
9808 end;
9809
9810 function IKeyHolderPluginImpl_getOwnerDispatcher(this: IKeyHolderPlugin): IReferenceCounted; cdecl;
9811 begin
9812 try
9813 Result := IKeyHolderPluginImpl(this).getOwner();
9814 except
9815 on e: Exception do FbException.catchException(nil, e);
9816 end
9817 end;
9818
9819 function IKeyHolderPluginImpl_keyCallbackDispatcher(this: IKeyHolderPlugin; status: IStatus; callback: ICryptKeyCallback): Integer; cdecl;
9820 begin
9821 try
9822 Result := IKeyHolderPluginImpl(this).keyCallback(status, callback);
9823 except
9824 on e: Exception do FbException.catchException(status, e);
9825 end
9826 end;
9827
9828 function IKeyHolderPluginImpl_keyHandleDispatcher(this: IKeyHolderPlugin; status: IStatus; keyName: PAnsiChar): ICryptKeyCallback; cdecl;
9829 begin
9830 try
9831 Result := IKeyHolderPluginImpl(this).keyHandle(status, keyName);
9832 except
9833 on e: Exception do FbException.catchException(status, e);
9834 end
9835 end;
9836
9837 var
9838 IKeyHolderPluginImpl_vTable: KeyHolderPluginVTable;
9839
9840 constructor IKeyHolderPluginImpl.create;
9841 begin
9842 vTable := IKeyHolderPluginImpl_vTable;
9843 end;
9844
9845 procedure IDbCryptPluginImpl_addRefDispatcher(this: IDbCryptPlugin); cdecl;
9846 begin
9847 try
9848 IDbCryptPluginImpl(this).addRef();
9849 except
9850 on e: Exception do FbException.catchException(nil, e);
9851 end
9852 end;
9853
9854 function IDbCryptPluginImpl_releaseDispatcher(this: IDbCryptPlugin): Integer; cdecl;
9855 begin
9856 try
9857 Result := IDbCryptPluginImpl(this).release();
9858 except
9859 on e: Exception do FbException.catchException(nil, e);
9860 end
9861 end;
9862
9863 procedure IDbCryptPluginImpl_setOwnerDispatcher(this: IDbCryptPlugin; r: IReferenceCounted); cdecl;
9864 begin
9865 try
9866 IDbCryptPluginImpl(this).setOwner(r);
9867 except
9868 on e: Exception do FbException.catchException(nil, e);
9869 end
9870 end;
9871
9872 function IDbCryptPluginImpl_getOwnerDispatcher(this: IDbCryptPlugin): IReferenceCounted; cdecl;
9873 begin
9874 try
9875 Result := IDbCryptPluginImpl(this).getOwner();
9876 except
9877 on e: Exception do FbException.catchException(nil, e);
9878 end
9879 end;
9880
9881 procedure IDbCryptPluginImpl_setKeyDispatcher(this: IDbCryptPlugin; status: IStatus; length: Cardinal; sources: IKeyHolderPluginPtr; keyName: PAnsiChar); cdecl;
9882 begin
9883 try
9884 IDbCryptPluginImpl(this).setKey(status, length, sources, keyName);
9885 except
9886 on e: Exception do FbException.catchException(status, e);
9887 end
9888 end;
9889
9890 procedure IDbCryptPluginImpl_encryptDispatcher(this: IDbCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
9891 begin
9892 try
9893 IDbCryptPluginImpl(this).encrypt(status, length, from, to_);
9894 except
9895 on e: Exception do FbException.catchException(status, e);
9896 end
9897 end;
9898
9899 procedure IDbCryptPluginImpl_decryptDispatcher(this: IDbCryptPlugin; status: IStatus; length: Cardinal; from: Pointer; to_: Pointer); cdecl;
9900 begin
9901 try
9902 IDbCryptPluginImpl(this).decrypt(status, length, from, to_);
9903 except
9904 on e: Exception do FbException.catchException(status, e);
9905 end
9906 end;
9907
9908 var
9909 IDbCryptPluginImpl_vTable: DbCryptPluginVTable;
9910
9911 constructor IDbCryptPluginImpl.create;
9912 begin
9913 vTable := IDbCryptPluginImpl_vTable;
9914 end;
9915
9916 function IExternalContextImpl_getMasterDispatcher(this: IExternalContext): IMaster; cdecl;
9917 begin
9918 try
9919 Result := IExternalContextImpl(this).getMaster();
9920 except
9921 on e: Exception do FbException.catchException(nil, e);
9922 end
9923 end;
9924
9925 function IExternalContextImpl_getEngineDispatcher(this: IExternalContext; status: IStatus): IExternalEngine; cdecl;
9926 begin
9927 try
9928 Result := IExternalContextImpl(this).getEngine(status);
9929 except
9930 on e: Exception do FbException.catchException(status, e);
9931 end
9932 end;
9933
9934 function IExternalContextImpl_getAttachmentDispatcher(this: IExternalContext; status: IStatus): IAttachment; cdecl;
9935 begin
9936 try
9937 Result := IExternalContextImpl(this).getAttachment(status);
9938 except
9939 on e: Exception do FbException.catchException(status, e);
9940 end
9941 end;
9942
9943 function IExternalContextImpl_getTransactionDispatcher(this: IExternalContext; status: IStatus): ITransaction; cdecl;
9944 begin
9945 try
9946 Result := IExternalContextImpl(this).getTransaction(status);
9947 except
9948 on e: Exception do FbException.catchException(status, e);
9949 end
9950 end;
9951
9952 function IExternalContextImpl_getUserNameDispatcher(this: IExternalContext): PAnsiChar; cdecl;
9953 begin
9954 try
9955 Result := IExternalContextImpl(this).getUserName();
9956 except
9957 on e: Exception do FbException.catchException(nil, e);
9958 end
9959 end;
9960
9961 function IExternalContextImpl_getDatabaseNameDispatcher(this: IExternalContext): PAnsiChar; cdecl;
9962 begin
9963 try
9964 Result := IExternalContextImpl(this).getDatabaseName();
9965 except
9966 on e: Exception do FbException.catchException(nil, e);
9967 end
9968 end;
9969
9970 function IExternalContextImpl_getClientCharSetDispatcher(this: IExternalContext): PAnsiChar; cdecl;
9971 begin
9972 try
9973 Result := IExternalContextImpl(this).getClientCharSet();
9974 except
9975 on e: Exception do FbException.catchException(nil, e);
9976 end
9977 end;
9978
9979 function IExternalContextImpl_obtainInfoCodeDispatcher(this: IExternalContext): Integer; cdecl;
9980 begin
9981 try
9982 Result := IExternalContextImpl(this).obtainInfoCode();
9983 except
9984 on e: Exception do FbException.catchException(nil, e);
9985 end
9986 end;
9987
9988 function IExternalContextImpl_getInfoDispatcher(this: IExternalContext; code: Integer): Pointer; cdecl;
9989 begin
9990 try
9991 Result := IExternalContextImpl(this).getInfo(code);
9992 except
9993 on e: Exception do FbException.catchException(nil, e);
9994 end
9995 end;
9996
9997 function IExternalContextImpl_setInfoDispatcher(this: IExternalContext; code: Integer; value: Pointer): Pointer; cdecl;
9998 begin
9999 try
10000 Result := IExternalContextImpl(this).setInfo(code, value);
10001 except
10002 on e: Exception do FbException.catchException(nil, e);
10003 end
10004 end;
10005
10006 var
10007 IExternalContextImpl_vTable: ExternalContextVTable;
10008
10009 constructor IExternalContextImpl.create;
10010 begin
10011 vTable := IExternalContextImpl_vTable;
10012 end;
10013
10014 procedure IExternalResultSetImpl_disposeDispatcher(this: IExternalResultSet); cdecl;
10015 begin
10016 try
10017 IExternalResultSetImpl(this).dispose();
10018 except
10019 on e: Exception do FbException.catchException(nil, e);
10020 end
10021 end;
10022
10023 function IExternalResultSetImpl_fetchDispatcher(this: IExternalResultSet; status: IStatus): Boolean; cdecl;
10024 begin
10025 try
10026 Result := IExternalResultSetImpl(this).fetch(status);
10027 except
10028 on e: Exception do FbException.catchException(status, e);
10029 end
10030 end;
10031
10032 var
10033 IExternalResultSetImpl_vTable: ExternalResultSetVTable;
10034
10035 constructor IExternalResultSetImpl.create;
10036 begin
10037 vTable := IExternalResultSetImpl_vTable;
10038 end;
10039
10040 procedure IExternalFunctionImpl_disposeDispatcher(this: IExternalFunction); cdecl;
10041 begin
10042 try
10043 IExternalFunctionImpl(this).dispose();
10044 except
10045 on e: Exception do FbException.catchException(nil, e);
10046 end
10047 end;
10048
10049 procedure IExternalFunctionImpl_getCharSetDispatcher(this: IExternalFunction; status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); cdecl;
10050 begin
10051 try
10052 IExternalFunctionImpl(this).getCharSet(status, context, name, nameSize);
10053 except
10054 on e: Exception do FbException.catchException(status, e);
10055 end
10056 end;
10057
10058 procedure IExternalFunctionImpl_executeDispatcher(this: IExternalFunction; status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer); cdecl;
10059 begin
10060 try
10061 IExternalFunctionImpl(this).execute(status, context, inMsg, outMsg);
10062 except
10063 on e: Exception do FbException.catchException(status, e);
10064 end
10065 end;
10066
10067 var
10068 IExternalFunctionImpl_vTable: ExternalFunctionVTable;
10069
10070 constructor IExternalFunctionImpl.create;
10071 begin
10072 vTable := IExternalFunctionImpl_vTable;
10073 end;
10074
10075 procedure IExternalProcedureImpl_disposeDispatcher(this: IExternalProcedure); cdecl;
10076 begin
10077 try
10078 IExternalProcedureImpl(this).dispose();
10079 except
10080 on e: Exception do FbException.catchException(nil, e);
10081 end
10082 end;
10083
10084 procedure IExternalProcedureImpl_getCharSetDispatcher(this: IExternalProcedure; status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); cdecl;
10085 begin
10086 try
10087 IExternalProcedureImpl(this).getCharSet(status, context, name, nameSize);
10088 except
10089 on e: Exception do FbException.catchException(status, e);
10090 end
10091 end;
10092
10093 function IExternalProcedureImpl_openDispatcher(this: IExternalProcedure; status: IStatus; context: IExternalContext; inMsg: Pointer; outMsg: Pointer): IExternalResultSet; cdecl;
10094 begin
10095 try
10096 Result := IExternalProcedureImpl(this).open(status, context, inMsg, outMsg);
10097 except
10098 on e: Exception do FbException.catchException(status, e);
10099 end
10100 end;
10101
10102 var
10103 IExternalProcedureImpl_vTable: ExternalProcedureVTable;
10104
10105 constructor IExternalProcedureImpl.create;
10106 begin
10107 vTable := IExternalProcedureImpl_vTable;
10108 end;
10109
10110 procedure IExternalTriggerImpl_disposeDispatcher(this: IExternalTrigger); cdecl;
10111 begin
10112 try
10113 IExternalTriggerImpl(this).dispose();
10114 except
10115 on e: Exception do FbException.catchException(nil, e);
10116 end
10117 end;
10118
10119 procedure IExternalTriggerImpl_getCharSetDispatcher(this: IExternalTrigger; status: IStatus; context: IExternalContext; name: PAnsiChar; nameSize: Cardinal); cdecl;
10120 begin
10121 try
10122 IExternalTriggerImpl(this).getCharSet(status, context, name, nameSize);
10123 except
10124 on e: Exception do FbException.catchException(status, e);
10125 end
10126 end;
10127
10128 procedure IExternalTriggerImpl_executeDispatcher(this: IExternalTrigger; status: IStatus; context: IExternalContext; action: Cardinal; oldMsg: Pointer; newMsg: Pointer); cdecl;
10129 begin
10130 try
10131 IExternalTriggerImpl(this).execute(status, context, action, oldMsg, newMsg);
10132 except
10133 on e: Exception do FbException.catchException(status, e);
10134 end
10135 end;
10136
10137 var
10138 IExternalTriggerImpl_vTable: ExternalTriggerVTable;
10139
10140 constructor IExternalTriggerImpl.create;
10141 begin
10142 vTable := IExternalTriggerImpl_vTable;
10143 end;
10144
10145 function IRoutineMetadataImpl_getPackageDispatcher(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
10146 begin
10147 try
10148 Result := IRoutineMetadataImpl(this).getPackage(status);
10149 except
10150 on e: Exception do FbException.catchException(status, e);
10151 end
10152 end;
10153
10154 function IRoutineMetadataImpl_getNameDispatcher(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
10155 begin
10156 try
10157 Result := IRoutineMetadataImpl(this).getName(status);
10158 except
10159 on e: Exception do FbException.catchException(status, e);
10160 end
10161 end;
10162
10163 function IRoutineMetadataImpl_getEntryPointDispatcher(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
10164 begin
10165 try
10166 Result := IRoutineMetadataImpl(this).getEntryPoint(status);
10167 except
10168 on e: Exception do FbException.catchException(status, e);
10169 end
10170 end;
10171
10172 function IRoutineMetadataImpl_getBodyDispatcher(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
10173 begin
10174 try
10175 Result := IRoutineMetadataImpl(this).getBody(status);
10176 except
10177 on e: Exception do FbException.catchException(status, e);
10178 end
10179 end;
10180
10181 function IRoutineMetadataImpl_getInputMetadataDispatcher(this: IRoutineMetadata; status: IStatus): IMessageMetadata; cdecl;
10182 begin
10183 try
10184 Result := IRoutineMetadataImpl(this).getInputMetadata(status);
10185 except
10186 on e: Exception do FbException.catchException(status, e);
10187 end
10188 end;
10189
10190 function IRoutineMetadataImpl_getOutputMetadataDispatcher(this: IRoutineMetadata; status: IStatus): IMessageMetadata; cdecl;
10191 begin
10192 try
10193 Result := IRoutineMetadataImpl(this).getOutputMetadata(status);
10194 except
10195 on e: Exception do FbException.catchException(status, e);
10196 end
10197 end;
10198
10199 function IRoutineMetadataImpl_getTriggerMetadataDispatcher(this: IRoutineMetadata; status: IStatus): IMessageMetadata; cdecl;
10200 begin
10201 try
10202 Result := IRoutineMetadataImpl(this).getTriggerMetadata(status);
10203 except
10204 on e: Exception do FbException.catchException(status, e);
10205 end
10206 end;
10207
10208 function IRoutineMetadataImpl_getTriggerTableDispatcher(this: IRoutineMetadata; status: IStatus): PAnsiChar; cdecl;
10209 begin
10210 try
10211 Result := IRoutineMetadataImpl(this).getTriggerTable(status);
10212 except
10213 on e: Exception do FbException.catchException(status, e);
10214 end
10215 end;
10216
10217 function IRoutineMetadataImpl_getTriggerTypeDispatcher(this: IRoutineMetadata; status: IStatus): Cardinal; cdecl;
10218 begin
10219 try
10220 Result := IRoutineMetadataImpl(this).getTriggerType(status);
10221 except
10222 on e: Exception do FbException.catchException(status, e);
10223 end
10224 end;
10225
10226 var
10227 IRoutineMetadataImpl_vTable: RoutineMetadataVTable;
10228
10229 constructor IRoutineMetadataImpl.create;
10230 begin
10231 vTable := IRoutineMetadataImpl_vTable;
10232 end;
10233
10234 procedure IExternalEngineImpl_addRefDispatcher(this: IExternalEngine); cdecl;
10235 begin
10236 try
10237 IExternalEngineImpl(this).addRef();
10238 except
10239 on e: Exception do FbException.catchException(nil, e);
10240 end
10241 end;
10242
10243 function IExternalEngineImpl_releaseDispatcher(this: IExternalEngine): Integer; cdecl;
10244 begin
10245 try
10246 Result := IExternalEngineImpl(this).release();
10247 except
10248 on e: Exception do FbException.catchException(nil, e);
10249 end
10250 end;
10251
10252 procedure IExternalEngineImpl_setOwnerDispatcher(this: IExternalEngine; r: IReferenceCounted); cdecl;
10253 begin
10254 try
10255 IExternalEngineImpl(this).setOwner(r);
10256 except
10257 on e: Exception do FbException.catchException(nil, e);
10258 end
10259 end;
10260
10261 function IExternalEngineImpl_getOwnerDispatcher(this: IExternalEngine): IReferenceCounted; cdecl;
10262 begin
10263 try
10264 Result := IExternalEngineImpl(this).getOwner();
10265 except
10266 on e: Exception do FbException.catchException(nil, e);
10267 end
10268 end;
10269
10270 procedure IExternalEngineImpl_openDispatcher(this: IExternalEngine; status: IStatus; context: IExternalContext; charSet: PAnsiChar; charSetSize: Cardinal); cdecl;
10271 begin
10272 try
10273 IExternalEngineImpl(this).open(status, context, charSet, charSetSize);
10274 except
10275 on e: Exception do FbException.catchException(status, e);
10276 end
10277 end;
10278
10279 procedure IExternalEngineImpl_openAttachmentDispatcher(this: IExternalEngine; status: IStatus; context: IExternalContext); cdecl;
10280 begin
10281 try
10282 IExternalEngineImpl(this).openAttachment(status, context);
10283 except
10284 on e: Exception do FbException.catchException(status, e);
10285 end
10286 end;
10287
10288 procedure IExternalEngineImpl_closeAttachmentDispatcher(this: IExternalEngine; status: IStatus; context: IExternalContext); cdecl;
10289 begin
10290 try
10291 IExternalEngineImpl(this).closeAttachment(status, context);
10292 except
10293 on e: Exception do FbException.catchException(status, e);
10294 end
10295 end;
10296
10297 function IExternalEngineImpl_makeFunctionDispatcher(this: IExternalEngine; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalFunction; cdecl;
10298 begin
10299 try
10300 Result := IExternalEngineImpl(this).makeFunction(status, context, metadata, inBuilder, outBuilder);
10301 except
10302 on e: Exception do FbException.catchException(status, e);
10303 end
10304 end;
10305
10306 function IExternalEngineImpl_makeProcedureDispatcher(this: IExternalEngine; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder): IExternalProcedure; cdecl;
10307 begin
10308 try
10309 Result := IExternalEngineImpl(this).makeProcedure(status, context, metadata, inBuilder, outBuilder);
10310 except
10311 on e: Exception do FbException.catchException(status, e);
10312 end
10313 end;
10314
10315 function IExternalEngineImpl_makeTriggerDispatcher(this: IExternalEngine; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder): IExternalTrigger; cdecl;
10316 begin
10317 try
10318 Result := IExternalEngineImpl(this).makeTrigger(status, context, metadata, fieldsBuilder);
10319 except
10320 on e: Exception do FbException.catchException(status, e);
10321 end
10322 end;
10323
10324 var
10325 IExternalEngineImpl_vTable: ExternalEngineVTable;
10326
10327 constructor IExternalEngineImpl.create;
10328 begin
10329 vTable := IExternalEngineImpl_vTable;
10330 end;
10331
10332 procedure ITimerImpl_addRefDispatcher(this: ITimer); cdecl;
10333 begin
10334 try
10335 ITimerImpl(this).addRef();
10336 except
10337 on e: Exception do FbException.catchException(nil, e);
10338 end
10339 end;
10340
10341 function ITimerImpl_releaseDispatcher(this: ITimer): Integer; cdecl;
10342 begin
10343 try
10344 Result := ITimerImpl(this).release();
10345 except
10346 on e: Exception do FbException.catchException(nil, e);
10347 end
10348 end;
10349
10350 procedure ITimerImpl_handlerDispatcher(this: ITimer); cdecl;
10351 begin
10352 try
10353 ITimerImpl(this).handler();
10354 except
10355 on e: Exception do FbException.catchException(nil, e);
10356 end
10357 end;
10358
10359 var
10360 ITimerImpl_vTable: TimerVTable;
10361
10362 constructor ITimerImpl.create;
10363 begin
10364 vTable := ITimerImpl_vTable;
10365 end;
10366
10367 procedure ITimerControlImpl_startDispatcher(this: ITimerControl; status: IStatus; timer: ITimer; microSeconds: QWord); cdecl;
10368 begin
10369 try
10370 ITimerControlImpl(this).start(status, timer, microSeconds);
10371 except
10372 on e: Exception do FbException.catchException(status, e);
10373 end
10374 end;
10375
10376 procedure ITimerControlImpl_stopDispatcher(this: ITimerControl; status: IStatus; timer: ITimer); cdecl;
10377 begin
10378 try
10379 ITimerControlImpl(this).stop(status, timer);
10380 except
10381 on e: Exception do FbException.catchException(status, e);
10382 end
10383 end;
10384
10385 var
10386 ITimerControlImpl_vTable: TimerControlVTable;
10387
10388 constructor ITimerControlImpl.create;
10389 begin
10390 vTable := ITimerControlImpl_vTable;
10391 end;
10392
10393 procedure IVersionCallbackImpl_callbackDispatcher(this: IVersionCallback; status: IStatus; text: PAnsiChar); cdecl;
10394 begin
10395 try
10396 IVersionCallbackImpl(this).callback(status, text);
10397 except
10398 on e: Exception do FbException.catchException(status, e);
10399 end
10400 end;
10401
10402 var
10403 IVersionCallbackImpl_vTable: VersionCallbackVTable;
10404
10405 constructor IVersionCallbackImpl.create;
10406 begin
10407 vTable := IVersionCallbackImpl_vTable;
10408 end;
10409
10410 procedure IUtilImpl_getFbVersionDispatcher(this: IUtil; status: IStatus; att: IAttachment; callback: IVersionCallback); cdecl;
10411 begin
10412 try
10413 IUtilImpl(this).getFbVersion(status, att, callback);
10414 except
10415 on e: Exception do FbException.catchException(status, e);
10416 end
10417 end;
10418
10419 procedure IUtilImpl_loadBlobDispatcher(this: IUtil; status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean); cdecl;
10420 begin
10421 try
10422 IUtilImpl(this).loadBlob(status, blobId, att, tra, file_, txt);
10423 except
10424 on e: Exception do FbException.catchException(status, e);
10425 end
10426 end;
10427
10428 procedure IUtilImpl_dumpBlobDispatcher(this: IUtil; status: IStatus; blobId: PISC_QUAD; att: IAttachment; tra: ITransaction; file_: PAnsiChar; txt: Boolean); cdecl;
10429 begin
10430 try
10431 IUtilImpl(this).dumpBlob(status, blobId, att, tra, file_, txt);
10432 except
10433 on e: Exception do FbException.catchException(status, e);
10434 end
10435 end;
10436
10437 procedure IUtilImpl_getPerfCountersDispatcher(this: IUtil; status: IStatus; att: IAttachment; countersSet: PAnsiChar; counters: Int64Ptr); cdecl;
10438 begin
10439 try
10440 IUtilImpl(this).getPerfCounters(status, att, countersSet, counters);
10441 except
10442 on e: Exception do FbException.catchException(status, e);
10443 end
10444 end;
10445
10446 function IUtilImpl_executeCreateDatabaseDispatcher(this: IUtil; status: IStatus; stmtLength: Cardinal; creatDBstatement: PAnsiChar; dialect: Cardinal; stmtIsCreateDb: BooleanPtr): IAttachment; cdecl;
10447 begin
10448 try
10449 Result := IUtilImpl(this).executeCreateDatabase(status, stmtLength, creatDBstatement, dialect, stmtIsCreateDb);
10450 except
10451 on e: Exception do FbException.catchException(status, e);
10452 end
10453 end;
10454
10455 procedure IUtilImpl_decodeDateDispatcher(this: IUtil; date: ISC_DATE; year: CardinalPtr; month: CardinalPtr; day: CardinalPtr); cdecl;
10456 begin
10457 try
10458 IUtilImpl(this).decodeDate(date, year, month, day);
10459 except
10460 on e: Exception do FbException.catchException(nil, e);
10461 end
10462 end;
10463
10464 procedure IUtilImpl_decodeTimeDispatcher(this: IUtil; time: ISC_TIME; hours: CardinalPtr; minutes: CardinalPtr; seconds: CardinalPtr; fractions: CardinalPtr); cdecl;
10465 begin
10466 try
10467 IUtilImpl(this).decodeTime(time, hours, minutes, seconds, fractions);
10468 except
10469 on e: Exception do FbException.catchException(nil, e);
10470 end
10471 end;
10472
10473 function IUtilImpl_encodeDateDispatcher(this: IUtil; year: Cardinal; month: Cardinal; day: Cardinal): ISC_DATE; cdecl;
10474 begin
10475 try
10476 Result := IUtilImpl(this).encodeDate(year, month, day);
10477 except
10478 on e: Exception do FbException.catchException(nil, e);
10479 end
10480 end;
10481
10482 function IUtilImpl_encodeTimeDispatcher(this: IUtil; hours: Cardinal; minutes: Cardinal; seconds: Cardinal; fractions: Cardinal): ISC_TIME; cdecl;
10483 begin
10484 try
10485 Result := IUtilImpl(this).encodeTime(hours, minutes, seconds, fractions);
10486 except
10487 on e: Exception do FbException.catchException(nil, e);
10488 end
10489 end;
10490
10491 function IUtilImpl_formatStatusDispatcher(this: IUtil; buffer: PAnsiChar; bufferSize: Cardinal; status: IStatus): Cardinal; cdecl;
10492 begin
10493 try
10494 Result := IUtilImpl(this).formatStatus(buffer, bufferSize, status);
10495 except
10496 on e: Exception do FbException.catchException(nil, e);
10497 end
10498 end;
10499
10500 function IUtilImpl_getClientVersionDispatcher(this: IUtil): Cardinal; cdecl;
10501 begin
10502 try
10503 Result := IUtilImpl(this).getClientVersion();
10504 except
10505 on e: Exception do FbException.catchException(nil, e);
10506 end
10507 end;
10508
10509 function IUtilImpl_getXpbBuilderDispatcher(this: IUtil; status: IStatus; kind: Cardinal; buf: BytePtr; len: Cardinal): IXpbBuilder; cdecl;
10510 begin
10511 try
10512 Result := IUtilImpl(this).getXpbBuilder(status, kind, buf, len);
10513 except
10514 on e: Exception do FbException.catchException(status, e);
10515 end
10516 end;
10517
10518 function IUtilImpl_setOffsetsDispatcher(this: IUtil; status: IStatus; metadata: IMessageMetadata; callback: IOffsetsCallback): Cardinal; cdecl;
10519 begin
10520 try
10521 Result := IUtilImpl(this).setOffsets(status, metadata, callback);
10522 except
10523 on e: Exception do FbException.catchException(status, e);
10524 end
10525 end;
10526
10527 var
10528 IUtilImpl_vTable: UtilVTable;
10529
10530 constructor IUtilImpl.create;
10531 begin
10532 vTable := IUtilImpl_vTable;
10533 end;
10534
10535 procedure IOffsetsCallbackImpl_setOffsetDispatcher(this: IOffsetsCallback; status: IStatus; index: Cardinal; offset: Cardinal; nullOffset: Cardinal); cdecl;
10536 begin
10537 try
10538 IOffsetsCallbackImpl(this).setOffset(status, index, offset, nullOffset);
10539 except
10540 on e: Exception do FbException.catchException(status, e);
10541 end
10542 end;
10543
10544 var
10545 IOffsetsCallbackImpl_vTable: OffsetsCallbackVTable;
10546
10547 constructor IOffsetsCallbackImpl.create;
10548 begin
10549 vTable := IOffsetsCallbackImpl_vTable;
10550 end;
10551
10552 procedure IXpbBuilderImpl_disposeDispatcher(this: IXpbBuilder); cdecl;
10553 begin
10554 try
10555 IXpbBuilderImpl(this).dispose();
10556 except
10557 on e: Exception do FbException.catchException(nil, e);
10558 end
10559 end;
10560
10561 procedure IXpbBuilderImpl_clearDispatcher(this: IXpbBuilder; status: IStatus); cdecl;
10562 begin
10563 try
10564 IXpbBuilderImpl(this).clear(status);
10565 except
10566 on e: Exception do FbException.catchException(status, e);
10567 end
10568 end;
10569
10570 procedure IXpbBuilderImpl_removeCurrentDispatcher(this: IXpbBuilder; status: IStatus); cdecl;
10571 begin
10572 try
10573 IXpbBuilderImpl(this).removeCurrent(status);
10574 except
10575 on e: Exception do FbException.catchException(status, e);
10576 end
10577 end;
10578
10579 procedure IXpbBuilderImpl_insertIntDispatcher(this: IXpbBuilder; status: IStatus; tag: Byte; value: Integer); cdecl;
10580 begin
10581 try
10582 IXpbBuilderImpl(this).insertInt(status, tag, value);
10583 except
10584 on e: Exception do FbException.catchException(status, e);
10585 end
10586 end;
10587
10588 procedure IXpbBuilderImpl_insertBigIntDispatcher(this: IXpbBuilder; status: IStatus; tag: Byte; value: Int64); cdecl;
10589 begin
10590 try
10591 IXpbBuilderImpl(this).insertBigInt(status, tag, value);
10592 except
10593 on e: Exception do FbException.catchException(status, e);
10594 end
10595 end;
10596
10597 procedure IXpbBuilderImpl_insertBytesDispatcher(this: IXpbBuilder; status: IStatus; tag: Byte; bytes: Pointer; length: Cardinal); cdecl;
10598 begin
10599 try
10600 IXpbBuilderImpl(this).insertBytes(status, tag, bytes, length);
10601 except
10602 on e: Exception do FbException.catchException(status, e);
10603 end
10604 end;
10605
10606 procedure IXpbBuilderImpl_insertStringDispatcher(this: IXpbBuilder; status: IStatus; tag: Byte; str: PAnsiChar); cdecl;
10607 begin
10608 try
10609 IXpbBuilderImpl(this).insertString(status, tag, str);
10610 except
10611 on e: Exception do FbException.catchException(status, e);
10612 end
10613 end;
10614
10615 procedure IXpbBuilderImpl_insertTagDispatcher(this: IXpbBuilder; status: IStatus; tag: Byte); cdecl;
10616 begin
10617 try
10618 IXpbBuilderImpl(this).insertTag(status, tag);
10619 except
10620 on e: Exception do FbException.catchException(status, e);
10621 end
10622 end;
10623
10624 function IXpbBuilderImpl_isEofDispatcher(this: IXpbBuilder; status: IStatus): Boolean; cdecl;
10625 begin
10626 try
10627 Result := IXpbBuilderImpl(this).isEof(status);
10628 except
10629 on e: Exception do FbException.catchException(status, e);
10630 end
10631 end;
10632
10633 procedure IXpbBuilderImpl_moveNextDispatcher(this: IXpbBuilder; status: IStatus); cdecl;
10634 begin
10635 try
10636 IXpbBuilderImpl(this).moveNext(status);
10637 except
10638 on e: Exception do FbException.catchException(status, e);
10639 end
10640 end;
10641
10642 procedure IXpbBuilderImpl_rewindDispatcher(this: IXpbBuilder; status: IStatus); cdecl;
10643 begin
10644 try
10645 IXpbBuilderImpl(this).rewind(status);
10646 except
10647 on e: Exception do FbException.catchException(status, e);
10648 end
10649 end;
10650
10651 function IXpbBuilderImpl_findFirstDispatcher(this: IXpbBuilder; status: IStatus; tag: Byte): Boolean; cdecl;
10652 begin
10653 try
10654 Result := IXpbBuilderImpl(this).findFirst(status, tag);
10655 except
10656 on e: Exception do FbException.catchException(status, e);
10657 end
10658 end;
10659
10660 function IXpbBuilderImpl_findNextDispatcher(this: IXpbBuilder; status: IStatus): Boolean; cdecl;
10661 begin
10662 try
10663 Result := IXpbBuilderImpl(this).findNext(status);
10664 except
10665 on e: Exception do FbException.catchException(status, e);
10666 end
10667 end;
10668
10669 function IXpbBuilderImpl_getTagDispatcher(this: IXpbBuilder; status: IStatus): Byte; cdecl;
10670 begin
10671 try
10672 Result := IXpbBuilderImpl(this).getTag(status);
10673 except
10674 on e: Exception do FbException.catchException(status, e);
10675 end
10676 end;
10677
10678 function IXpbBuilderImpl_getLengthDispatcher(this: IXpbBuilder; status: IStatus): Cardinal; cdecl;
10679 begin
10680 try
10681 Result := IXpbBuilderImpl(this).getLength(status);
10682 except
10683 on e: Exception do FbException.catchException(status, e);
10684 end
10685 end;
10686
10687 function IXpbBuilderImpl_getIntDispatcher(this: IXpbBuilder; status: IStatus): Integer; cdecl;
10688 begin
10689 try
10690 Result := IXpbBuilderImpl(this).getInt(status);
10691 except
10692 on e: Exception do FbException.catchException(status, e);
10693 end
10694 end;
10695
10696 function IXpbBuilderImpl_getBigIntDispatcher(this: IXpbBuilder; status: IStatus): Int64; cdecl;
10697 begin
10698 try
10699 Result := IXpbBuilderImpl(this).getBigInt(status);
10700 except
10701 on e: Exception do FbException.catchException(status, e);
10702 end
10703 end;
10704
10705 function IXpbBuilderImpl_getStringDispatcher(this: IXpbBuilder; status: IStatus): PAnsiChar; cdecl;
10706 begin
10707 try
10708 Result := IXpbBuilderImpl(this).getString(status);
10709 except
10710 on e: Exception do FbException.catchException(status, e);
10711 end
10712 end;
10713
10714 function IXpbBuilderImpl_getBytesDispatcher(this: IXpbBuilder; status: IStatus): BytePtr; cdecl;
10715 begin
10716 try
10717 Result := IXpbBuilderImpl(this).getBytes(status);
10718 except
10719 on e: Exception do FbException.catchException(status, e);
10720 end
10721 end;
10722
10723 function IXpbBuilderImpl_getBufferLengthDispatcher(this: IXpbBuilder; status: IStatus): Cardinal; cdecl;
10724 begin
10725 try
10726 Result := IXpbBuilderImpl(this).getBufferLength(status);
10727 except
10728 on e: Exception do FbException.catchException(status, e);
10729 end
10730 end;
10731
10732 function IXpbBuilderImpl_getBufferDispatcher(this: IXpbBuilder; status: IStatus): BytePtr; cdecl;
10733 begin
10734 try
10735 Result := IXpbBuilderImpl(this).getBuffer(status);
10736 except
10737 on e: Exception do FbException.catchException(status, e);
10738 end
10739 end;
10740
10741 var
10742 IXpbBuilderImpl_vTable: XpbBuilderVTable;
10743
10744 constructor IXpbBuilderImpl.create;
10745 begin
10746 vTable := IXpbBuilderImpl_vTable;
10747 end;
10748
10749 function ITraceConnectionImpl_getKindDispatcher(this: ITraceConnection): Cardinal; cdecl;
10750 begin
10751 try
10752 Result := ITraceConnectionImpl(this).getKind();
10753 except
10754 on e: Exception do FbException.catchException(nil, e);
10755 end
10756 end;
10757
10758 function ITraceConnectionImpl_getProcessIDDispatcher(this: ITraceConnection): Integer; cdecl;
10759 begin
10760 try
10761 Result := ITraceConnectionImpl(this).getProcessID();
10762 except
10763 on e: Exception do FbException.catchException(nil, e);
10764 end
10765 end;
10766
10767 function ITraceConnectionImpl_getUserNameDispatcher(this: ITraceConnection): PAnsiChar; cdecl;
10768 begin
10769 try
10770 Result := ITraceConnectionImpl(this).getUserName();
10771 except
10772 on e: Exception do FbException.catchException(nil, e);
10773 end
10774 end;
10775
10776 function ITraceConnectionImpl_getRoleNameDispatcher(this: ITraceConnection): PAnsiChar; cdecl;
10777 begin
10778 try
10779 Result := ITraceConnectionImpl(this).getRoleName();
10780 except
10781 on e: Exception do FbException.catchException(nil, e);
10782 end
10783 end;
10784
10785 function ITraceConnectionImpl_getCharSetDispatcher(this: ITraceConnection): PAnsiChar; cdecl;
10786 begin
10787 try
10788 Result := ITraceConnectionImpl(this).getCharSet();
10789 except
10790 on e: Exception do FbException.catchException(nil, e);
10791 end
10792 end;
10793
10794 function ITraceConnectionImpl_getRemoteProtocolDispatcher(this: ITraceConnection): PAnsiChar; cdecl;
10795 begin
10796 try
10797 Result := ITraceConnectionImpl(this).getRemoteProtocol();
10798 except
10799 on e: Exception do FbException.catchException(nil, e);
10800 end
10801 end;
10802
10803 function ITraceConnectionImpl_getRemoteAddressDispatcher(this: ITraceConnection): PAnsiChar; cdecl;
10804 begin
10805 try
10806 Result := ITraceConnectionImpl(this).getRemoteAddress();
10807 except
10808 on e: Exception do FbException.catchException(nil, e);
10809 end
10810 end;
10811
10812 function ITraceConnectionImpl_getRemoteProcessIDDispatcher(this: ITraceConnection): Integer; cdecl;
10813 begin
10814 try
10815 Result := ITraceConnectionImpl(this).getRemoteProcessID();
10816 except
10817 on e: Exception do FbException.catchException(nil, e);
10818 end
10819 end;
10820
10821 function ITraceConnectionImpl_getRemoteProcessNameDispatcher(this: ITraceConnection): PAnsiChar; cdecl;
10822 begin
10823 try
10824 Result := ITraceConnectionImpl(this).getRemoteProcessName();
10825 except
10826 on e: Exception do FbException.catchException(nil, e);
10827 end
10828 end;
10829
10830 var
10831 ITraceConnectionImpl_vTable: TraceConnectionVTable;
10832
10833 constructor ITraceConnectionImpl.create;
10834 begin
10835 vTable := ITraceConnectionImpl_vTable;
10836 end;
10837
10838 function ITraceDatabaseConnectionImpl_getKindDispatcher(this: ITraceDatabaseConnection): Cardinal; cdecl;
10839 begin
10840 try
10841 Result := ITraceDatabaseConnectionImpl(this).getKind();
10842 except
10843 on e: Exception do FbException.catchException(nil, e);
10844 end
10845 end;
10846
10847 function ITraceDatabaseConnectionImpl_getProcessIDDispatcher(this: ITraceDatabaseConnection): Integer; cdecl;
10848 begin
10849 try
10850 Result := ITraceDatabaseConnectionImpl(this).getProcessID();
10851 except
10852 on e: Exception do FbException.catchException(nil, e);
10853 end
10854 end;
10855
10856 function ITraceDatabaseConnectionImpl_getUserNameDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10857 begin
10858 try
10859 Result := ITraceDatabaseConnectionImpl(this).getUserName();
10860 except
10861 on e: Exception do FbException.catchException(nil, e);
10862 end
10863 end;
10864
10865 function ITraceDatabaseConnectionImpl_getRoleNameDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10866 begin
10867 try
10868 Result := ITraceDatabaseConnectionImpl(this).getRoleName();
10869 except
10870 on e: Exception do FbException.catchException(nil, e);
10871 end
10872 end;
10873
10874 function ITraceDatabaseConnectionImpl_getCharSetDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10875 begin
10876 try
10877 Result := ITraceDatabaseConnectionImpl(this).getCharSet();
10878 except
10879 on e: Exception do FbException.catchException(nil, e);
10880 end
10881 end;
10882
10883 function ITraceDatabaseConnectionImpl_getRemoteProtocolDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10884 begin
10885 try
10886 Result := ITraceDatabaseConnectionImpl(this).getRemoteProtocol();
10887 except
10888 on e: Exception do FbException.catchException(nil, e);
10889 end
10890 end;
10891
10892 function ITraceDatabaseConnectionImpl_getRemoteAddressDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10893 begin
10894 try
10895 Result := ITraceDatabaseConnectionImpl(this).getRemoteAddress();
10896 except
10897 on e: Exception do FbException.catchException(nil, e);
10898 end
10899 end;
10900
10901 function ITraceDatabaseConnectionImpl_getRemoteProcessIDDispatcher(this: ITraceDatabaseConnection): Integer; cdecl;
10902 begin
10903 try
10904 Result := ITraceDatabaseConnectionImpl(this).getRemoteProcessID();
10905 except
10906 on e: Exception do FbException.catchException(nil, e);
10907 end
10908 end;
10909
10910 function ITraceDatabaseConnectionImpl_getRemoteProcessNameDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10911 begin
10912 try
10913 Result := ITraceDatabaseConnectionImpl(this).getRemoteProcessName();
10914 except
10915 on e: Exception do FbException.catchException(nil, e);
10916 end
10917 end;
10918
10919 function ITraceDatabaseConnectionImpl_getConnectionIDDispatcher(this: ITraceDatabaseConnection): Int64; cdecl;
10920 begin
10921 try
10922 Result := ITraceDatabaseConnectionImpl(this).getConnectionID();
10923 except
10924 on e: Exception do FbException.catchException(nil, e);
10925 end
10926 end;
10927
10928 function ITraceDatabaseConnectionImpl_getDatabaseNameDispatcher(this: ITraceDatabaseConnection): PAnsiChar; cdecl;
10929 begin
10930 try
10931 Result := ITraceDatabaseConnectionImpl(this).getDatabaseName();
10932 except
10933 on e: Exception do FbException.catchException(nil, e);
10934 end
10935 end;
10936
10937 var
10938 ITraceDatabaseConnectionImpl_vTable: TraceDatabaseConnectionVTable;
10939
10940 constructor ITraceDatabaseConnectionImpl.create;
10941 begin
10942 vTable := ITraceDatabaseConnectionImpl_vTable;
10943 end;
10944
10945 function ITraceTransactionImpl_getTransactionIDDispatcher(this: ITraceTransaction): Int64; cdecl;
10946 begin
10947 try
10948 Result := ITraceTransactionImpl(this).getTransactionID();
10949 except
10950 on e: Exception do FbException.catchException(nil, e);
10951 end
10952 end;
10953
10954 function ITraceTransactionImpl_getReadOnlyDispatcher(this: ITraceTransaction): Boolean; cdecl;
10955 begin
10956 try
10957 Result := ITraceTransactionImpl(this).getReadOnly();
10958 except
10959 on e: Exception do FbException.catchException(nil, e);
10960 end
10961 end;
10962
10963 function ITraceTransactionImpl_getWaitDispatcher(this: ITraceTransaction): Integer; cdecl;
10964 begin
10965 try
10966 Result := ITraceTransactionImpl(this).getWait();
10967 except
10968 on e: Exception do FbException.catchException(nil, e);
10969 end
10970 end;
10971
10972 function ITraceTransactionImpl_getIsolationDispatcher(this: ITraceTransaction): Cardinal; cdecl;
10973 begin
10974 try
10975 Result := ITraceTransactionImpl(this).getIsolation();
10976 except
10977 on e: Exception do FbException.catchException(nil, e);
10978 end
10979 end;
10980
10981 function ITraceTransactionImpl_getPerfDispatcher(this: ITraceTransaction): PerformanceInfoPtr; cdecl;
10982 begin
10983 try
10984 Result := ITraceTransactionImpl(this).getPerf();
10985 except
10986 on e: Exception do FbException.catchException(nil, e);
10987 end
10988 end;
10989
10990 var
10991 ITraceTransactionImpl_vTable: TraceTransactionVTable;
10992
10993 constructor ITraceTransactionImpl.create;
10994 begin
10995 vTable := ITraceTransactionImpl_vTable;
10996 end;
10997
10998 function ITraceParamsImpl_getCountDispatcher(this: ITraceParams): Cardinal; cdecl;
10999 begin
11000 try
11001 Result := ITraceParamsImpl(this).getCount();
11002 except
11003 on e: Exception do FbException.catchException(nil, e);
11004 end
11005 end;
11006
11007 function ITraceParamsImpl_getParamDispatcher(this: ITraceParams; idx: Cardinal): dscPtr; cdecl;
11008 begin
11009 try
11010 Result := ITraceParamsImpl(this).getParam(idx);
11011 except
11012 on e: Exception do FbException.catchException(nil, e);
11013 end
11014 end;
11015
11016 var
11017 ITraceParamsImpl_vTable: TraceParamsVTable;
11018
11019 constructor ITraceParamsImpl.create;
11020 begin
11021 vTable := ITraceParamsImpl_vTable;
11022 end;
11023
11024 function ITraceStatementImpl_getStmtIDDispatcher(this: ITraceStatement): Int64; cdecl;
11025 begin
11026 try
11027 Result := ITraceStatementImpl(this).getStmtID();
11028 except
11029 on e: Exception do FbException.catchException(nil, e);
11030 end
11031 end;
11032
11033 function ITraceStatementImpl_getPerfDispatcher(this: ITraceStatement): PerformanceInfoPtr; cdecl;
11034 begin
11035 try
11036 Result := ITraceStatementImpl(this).getPerf();
11037 except
11038 on e: Exception do FbException.catchException(nil, e);
11039 end
11040 end;
11041
11042 var
11043 ITraceStatementImpl_vTable: TraceStatementVTable;
11044
11045 constructor ITraceStatementImpl.create;
11046 begin
11047 vTable := ITraceStatementImpl_vTable;
11048 end;
11049
11050 function ITraceSQLStatementImpl_getStmtIDDispatcher(this: ITraceSQLStatement): Int64; cdecl;
11051 begin
11052 try
11053 Result := ITraceSQLStatementImpl(this).getStmtID();
11054 except
11055 on e: Exception do FbException.catchException(nil, e);
11056 end
11057 end;
11058
11059 function ITraceSQLStatementImpl_getPerfDispatcher(this: ITraceSQLStatement): PerformanceInfoPtr; cdecl;
11060 begin
11061 try
11062 Result := ITraceSQLStatementImpl(this).getPerf();
11063 except
11064 on e: Exception do FbException.catchException(nil, e);
11065 end
11066 end;
11067
11068 function ITraceSQLStatementImpl_getTextDispatcher(this: ITraceSQLStatement): PAnsiChar; cdecl;
11069 begin
11070 try
11071 Result := ITraceSQLStatementImpl(this).getText();
11072 except
11073 on e: Exception do FbException.catchException(nil, e);
11074 end
11075 end;
11076
11077 function ITraceSQLStatementImpl_getPlanDispatcher(this: ITraceSQLStatement): PAnsiChar; cdecl;
11078 begin
11079 try
11080 Result := ITraceSQLStatementImpl(this).getPlan();
11081 except
11082 on e: Exception do FbException.catchException(nil, e);
11083 end
11084 end;
11085
11086 function ITraceSQLStatementImpl_getInputsDispatcher(this: ITraceSQLStatement): ITraceParams; cdecl;
11087 begin
11088 try
11089 Result := ITraceSQLStatementImpl(this).getInputs();
11090 except
11091 on e: Exception do FbException.catchException(nil, e);
11092 end
11093 end;
11094
11095 function ITraceSQLStatementImpl_getTextUTF8Dispatcher(this: ITraceSQLStatement): PAnsiChar; cdecl;
11096 begin
11097 try
11098 Result := ITraceSQLStatementImpl(this).getTextUTF8();
11099 except
11100 on e: Exception do FbException.catchException(nil, e);
11101 end
11102 end;
11103
11104 function ITraceSQLStatementImpl_getExplainedPlanDispatcher(this: ITraceSQLStatement): PAnsiChar; cdecl;
11105 begin
11106 try
11107 Result := ITraceSQLStatementImpl(this).getExplainedPlan();
11108 except
11109 on e: Exception do FbException.catchException(nil, e);
11110 end
11111 end;
11112
11113 var
11114 ITraceSQLStatementImpl_vTable: TraceSQLStatementVTable;
11115
11116 constructor ITraceSQLStatementImpl.create;
11117 begin
11118 vTable := ITraceSQLStatementImpl_vTable;
11119 end;
11120
11121 function ITraceBLRStatementImpl_getStmtIDDispatcher(this: ITraceBLRStatement): Int64; cdecl;
11122 begin
11123 try
11124 Result := ITraceBLRStatementImpl(this).getStmtID();
11125 except
11126 on e: Exception do FbException.catchException(nil, e);
11127 end
11128 end;
11129
11130 function ITraceBLRStatementImpl_getPerfDispatcher(this: ITraceBLRStatement): PerformanceInfoPtr; cdecl;
11131 begin
11132 try
11133 Result := ITraceBLRStatementImpl(this).getPerf();
11134 except
11135 on e: Exception do FbException.catchException(nil, e);
11136 end
11137 end;
11138
11139 function ITraceBLRStatementImpl_getDataDispatcher(this: ITraceBLRStatement): BytePtr; cdecl;
11140 begin
11141 try
11142 Result := ITraceBLRStatementImpl(this).getData();
11143 except
11144 on e: Exception do FbException.catchException(nil, e);
11145 end
11146 end;
11147
11148 function ITraceBLRStatementImpl_getDataLengthDispatcher(this: ITraceBLRStatement): Cardinal; cdecl;
11149 begin
11150 try
11151 Result := ITraceBLRStatementImpl(this).getDataLength();
11152 except
11153 on e: Exception do FbException.catchException(nil, e);
11154 end
11155 end;
11156
11157 function ITraceBLRStatementImpl_getTextDispatcher(this: ITraceBLRStatement): PAnsiChar; cdecl;
11158 begin
11159 try
11160 Result := ITraceBLRStatementImpl(this).getText();
11161 except
11162 on e: Exception do FbException.catchException(nil, e);
11163 end
11164 end;
11165
11166 var
11167 ITraceBLRStatementImpl_vTable: TraceBLRStatementVTable;
11168
11169 constructor ITraceBLRStatementImpl.create;
11170 begin
11171 vTable := ITraceBLRStatementImpl_vTable;
11172 end;
11173
11174 function ITraceDYNRequestImpl_getDataDispatcher(this: ITraceDYNRequest): BytePtr; cdecl;
11175 begin
11176 try
11177 Result := ITraceDYNRequestImpl(this).getData();
11178 except
11179 on e: Exception do FbException.catchException(nil, e);
11180 end
11181 end;
11182
11183 function ITraceDYNRequestImpl_getDataLengthDispatcher(this: ITraceDYNRequest): Cardinal; cdecl;
11184 begin
11185 try
11186 Result := ITraceDYNRequestImpl(this).getDataLength();
11187 except
11188 on e: Exception do FbException.catchException(nil, e);
11189 end
11190 end;
11191
11192 function ITraceDYNRequestImpl_getTextDispatcher(this: ITraceDYNRequest): PAnsiChar; cdecl;
11193 begin
11194 try
11195 Result := ITraceDYNRequestImpl(this).getText();
11196 except
11197 on e: Exception do FbException.catchException(nil, e);
11198 end
11199 end;
11200
11201 var
11202 ITraceDYNRequestImpl_vTable: TraceDYNRequestVTable;
11203
11204 constructor ITraceDYNRequestImpl.create;
11205 begin
11206 vTable := ITraceDYNRequestImpl_vTable;
11207 end;
11208
11209 function ITraceContextVariableImpl_getNameSpaceDispatcher(this: ITraceContextVariable): PAnsiChar; cdecl;
11210 begin
11211 try
11212 Result := ITraceContextVariableImpl(this).getNameSpace();
11213 except
11214 on e: Exception do FbException.catchException(nil, e);
11215 end
11216 end;
11217
11218 function ITraceContextVariableImpl_getVarNameDispatcher(this: ITraceContextVariable): PAnsiChar; cdecl;
11219 begin
11220 try
11221 Result := ITraceContextVariableImpl(this).getVarName();
11222 except
11223 on e: Exception do FbException.catchException(nil, e);
11224 end
11225 end;
11226
11227 function ITraceContextVariableImpl_getVarValueDispatcher(this: ITraceContextVariable): PAnsiChar; cdecl;
11228 begin
11229 try
11230 Result := ITraceContextVariableImpl(this).getVarValue();
11231 except
11232 on e: Exception do FbException.catchException(nil, e);
11233 end
11234 end;
11235
11236 var
11237 ITraceContextVariableImpl_vTable: TraceContextVariableVTable;
11238
11239 constructor ITraceContextVariableImpl.create;
11240 begin
11241 vTable := ITraceContextVariableImpl_vTable;
11242 end;
11243
11244 function ITraceProcedureImpl_getProcNameDispatcher(this: ITraceProcedure): PAnsiChar; cdecl;
11245 begin
11246 try
11247 Result := ITraceProcedureImpl(this).getProcName();
11248 except
11249 on e: Exception do FbException.catchException(nil, e);
11250 end
11251 end;
11252
11253 function ITraceProcedureImpl_getInputsDispatcher(this: ITraceProcedure): ITraceParams; cdecl;
11254 begin
11255 try
11256 Result := ITraceProcedureImpl(this).getInputs();
11257 except
11258 on e: Exception do FbException.catchException(nil, e);
11259 end
11260 end;
11261
11262 function ITraceProcedureImpl_getPerfDispatcher(this: ITraceProcedure): PerformanceInfoPtr; cdecl;
11263 begin
11264 try
11265 Result := ITraceProcedureImpl(this).getPerf();
11266 except
11267 on e: Exception do FbException.catchException(nil, e);
11268 end
11269 end;
11270
11271 var
11272 ITraceProcedureImpl_vTable: TraceProcedureVTable;
11273
11274 constructor ITraceProcedureImpl.create;
11275 begin
11276 vTable := ITraceProcedureImpl_vTable;
11277 end;
11278
11279 function ITraceFunctionImpl_getFuncNameDispatcher(this: ITraceFunction): PAnsiChar; cdecl;
11280 begin
11281 try
11282 Result := ITraceFunctionImpl(this).getFuncName();
11283 except
11284 on e: Exception do FbException.catchException(nil, e);
11285 end
11286 end;
11287
11288 function ITraceFunctionImpl_getInputsDispatcher(this: ITraceFunction): ITraceParams; cdecl;
11289 begin
11290 try
11291 Result := ITraceFunctionImpl(this).getInputs();
11292 except
11293 on e: Exception do FbException.catchException(nil, e);
11294 end
11295 end;
11296
11297 function ITraceFunctionImpl_getResultDispatcher(this: ITraceFunction): ITraceParams; cdecl;
11298 begin
11299 try
11300 Result := ITraceFunctionImpl(this).getResult();
11301 except
11302 on e: Exception do FbException.catchException(nil, e);
11303 end
11304 end;
11305
11306 function ITraceFunctionImpl_getPerfDispatcher(this: ITraceFunction): PerformanceInfoPtr; cdecl;
11307 begin
11308 try
11309 Result := ITraceFunctionImpl(this).getPerf();
11310 except
11311 on e: Exception do FbException.catchException(nil, e);
11312 end
11313 end;
11314
11315 var
11316 ITraceFunctionImpl_vTable: TraceFunctionVTable;
11317
11318 constructor ITraceFunctionImpl.create;
11319 begin
11320 vTable := ITraceFunctionImpl_vTable;
11321 end;
11322
11323 function ITraceTriggerImpl_getTriggerNameDispatcher(this: ITraceTrigger): PAnsiChar; cdecl;
11324 begin
11325 try
11326 Result := ITraceTriggerImpl(this).getTriggerName();
11327 except
11328 on e: Exception do FbException.catchException(nil, e);
11329 end
11330 end;
11331
11332 function ITraceTriggerImpl_getRelationNameDispatcher(this: ITraceTrigger): PAnsiChar; cdecl;
11333 begin
11334 try
11335 Result := ITraceTriggerImpl(this).getRelationName();
11336 except
11337 on e: Exception do FbException.catchException(nil, e);
11338 end
11339 end;
11340
11341 function ITraceTriggerImpl_getActionDispatcher(this: ITraceTrigger): Integer; cdecl;
11342 begin
11343 try
11344 Result := ITraceTriggerImpl(this).getAction();
11345 except
11346 on e: Exception do FbException.catchException(nil, e);
11347 end
11348 end;
11349
11350 function ITraceTriggerImpl_getWhichDispatcher(this: ITraceTrigger): Integer; cdecl;
11351 begin
11352 try
11353 Result := ITraceTriggerImpl(this).getWhich();
11354 except
11355 on e: Exception do FbException.catchException(nil, e);
11356 end
11357 end;
11358
11359 function ITraceTriggerImpl_getPerfDispatcher(this: ITraceTrigger): PerformanceInfoPtr; cdecl;
11360 begin
11361 try
11362 Result := ITraceTriggerImpl(this).getPerf();
11363 except
11364 on e: Exception do FbException.catchException(nil, e);
11365 end
11366 end;
11367
11368 var
11369 ITraceTriggerImpl_vTable: TraceTriggerVTable;
11370
11371 constructor ITraceTriggerImpl.create;
11372 begin
11373 vTable := ITraceTriggerImpl_vTable;
11374 end;
11375
11376 function ITraceServiceConnectionImpl_getKindDispatcher(this: ITraceServiceConnection): Cardinal; cdecl;
11377 begin
11378 try
11379 Result := ITraceServiceConnectionImpl(this).getKind();
11380 except
11381 on e: Exception do FbException.catchException(nil, e);
11382 end
11383 end;
11384
11385 function ITraceServiceConnectionImpl_getProcessIDDispatcher(this: ITraceServiceConnection): Integer; cdecl;
11386 begin
11387 try
11388 Result := ITraceServiceConnectionImpl(this).getProcessID();
11389 except
11390 on e: Exception do FbException.catchException(nil, e);
11391 end
11392 end;
11393
11394 function ITraceServiceConnectionImpl_getUserNameDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11395 begin
11396 try
11397 Result := ITraceServiceConnectionImpl(this).getUserName();
11398 except
11399 on e: Exception do FbException.catchException(nil, e);
11400 end
11401 end;
11402
11403 function ITraceServiceConnectionImpl_getRoleNameDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11404 begin
11405 try
11406 Result := ITraceServiceConnectionImpl(this).getRoleName();
11407 except
11408 on e: Exception do FbException.catchException(nil, e);
11409 end
11410 end;
11411
11412 function ITraceServiceConnectionImpl_getCharSetDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11413 begin
11414 try
11415 Result := ITraceServiceConnectionImpl(this).getCharSet();
11416 except
11417 on e: Exception do FbException.catchException(nil, e);
11418 end
11419 end;
11420
11421 function ITraceServiceConnectionImpl_getRemoteProtocolDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11422 begin
11423 try
11424 Result := ITraceServiceConnectionImpl(this).getRemoteProtocol();
11425 except
11426 on e: Exception do FbException.catchException(nil, e);
11427 end
11428 end;
11429
11430 function ITraceServiceConnectionImpl_getRemoteAddressDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11431 begin
11432 try
11433 Result := ITraceServiceConnectionImpl(this).getRemoteAddress();
11434 except
11435 on e: Exception do FbException.catchException(nil, e);
11436 end
11437 end;
11438
11439 function ITraceServiceConnectionImpl_getRemoteProcessIDDispatcher(this: ITraceServiceConnection): Integer; cdecl;
11440 begin
11441 try
11442 Result := ITraceServiceConnectionImpl(this).getRemoteProcessID();
11443 except
11444 on e: Exception do FbException.catchException(nil, e);
11445 end
11446 end;
11447
11448 function ITraceServiceConnectionImpl_getRemoteProcessNameDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11449 begin
11450 try
11451 Result := ITraceServiceConnectionImpl(this).getRemoteProcessName();
11452 except
11453 on e: Exception do FbException.catchException(nil, e);
11454 end
11455 end;
11456
11457 function ITraceServiceConnectionImpl_getServiceIDDispatcher(this: ITraceServiceConnection): Pointer; cdecl;
11458 begin
11459 try
11460 Result := ITraceServiceConnectionImpl(this).getServiceID();
11461 except
11462 on e: Exception do FbException.catchException(nil, e);
11463 end
11464 end;
11465
11466 function ITraceServiceConnectionImpl_getServiceMgrDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11467 begin
11468 try
11469 Result := ITraceServiceConnectionImpl(this).getServiceMgr();
11470 except
11471 on e: Exception do FbException.catchException(nil, e);
11472 end
11473 end;
11474
11475 function ITraceServiceConnectionImpl_getServiceNameDispatcher(this: ITraceServiceConnection): PAnsiChar; cdecl;
11476 begin
11477 try
11478 Result := ITraceServiceConnectionImpl(this).getServiceName();
11479 except
11480 on e: Exception do FbException.catchException(nil, e);
11481 end
11482 end;
11483
11484 var
11485 ITraceServiceConnectionImpl_vTable: TraceServiceConnectionVTable;
11486
11487 constructor ITraceServiceConnectionImpl.create;
11488 begin
11489 vTable := ITraceServiceConnectionImpl_vTable;
11490 end;
11491
11492 function ITraceStatusVectorImpl_hasErrorDispatcher(this: ITraceStatusVector): Boolean; cdecl;
11493 begin
11494 try
11495 Result := ITraceStatusVectorImpl(this).hasError();
11496 except
11497 on e: Exception do FbException.catchException(nil, e);
11498 end
11499 end;
11500
11501 function ITraceStatusVectorImpl_hasWarningDispatcher(this: ITraceStatusVector): Boolean; cdecl;
11502 begin
11503 try
11504 Result := ITraceStatusVectorImpl(this).hasWarning();
11505 except
11506 on e: Exception do FbException.catchException(nil, e);
11507 end
11508 end;
11509
11510 function ITraceStatusVectorImpl_getStatusDispatcher(this: ITraceStatusVector): IStatus; cdecl;
11511 begin
11512 try
11513 Result := ITraceStatusVectorImpl(this).getStatus();
11514 except
11515 on e: Exception do FbException.catchException(nil, e);
11516 end
11517 end;
11518
11519 function ITraceStatusVectorImpl_getTextDispatcher(this: ITraceStatusVector): PAnsiChar; cdecl;
11520 begin
11521 try
11522 Result := ITraceStatusVectorImpl(this).getText();
11523 except
11524 on e: Exception do FbException.catchException(nil, e);
11525 end
11526 end;
11527
11528 var
11529 ITraceStatusVectorImpl_vTable: TraceStatusVectorVTable;
11530
11531 constructor ITraceStatusVectorImpl.create;
11532 begin
11533 vTable := ITraceStatusVectorImpl_vTable;
11534 end;
11535
11536 function ITraceSweepInfoImpl_getOITDispatcher(this: ITraceSweepInfo): Int64; cdecl;
11537 begin
11538 try
11539 Result := ITraceSweepInfoImpl(this).getOIT();
11540 except
11541 on e: Exception do FbException.catchException(nil, e);
11542 end
11543 end;
11544
11545 function ITraceSweepInfoImpl_getOSTDispatcher(this: ITraceSweepInfo): Int64; cdecl;
11546 begin
11547 try
11548 Result := ITraceSweepInfoImpl(this).getOST();
11549 except
11550 on e: Exception do FbException.catchException(nil, e);
11551 end
11552 end;
11553
11554 function ITraceSweepInfoImpl_getOATDispatcher(this: ITraceSweepInfo): Int64; cdecl;
11555 begin
11556 try
11557 Result := ITraceSweepInfoImpl(this).getOAT();
11558 except
11559 on e: Exception do FbException.catchException(nil, e);
11560 end
11561 end;
11562
11563 function ITraceSweepInfoImpl_getNextDispatcher(this: ITraceSweepInfo): Int64; cdecl;
11564 begin
11565 try
11566 Result := ITraceSweepInfoImpl(this).getNext();
11567 except
11568 on e: Exception do FbException.catchException(nil, e);
11569 end
11570 end;
11571
11572 function ITraceSweepInfoImpl_getPerfDispatcher(this: ITraceSweepInfo): PerformanceInfoPtr; cdecl;
11573 begin
11574 try
11575 Result := ITraceSweepInfoImpl(this).getPerf();
11576 except
11577 on e: Exception do FbException.catchException(nil, e);
11578 end
11579 end;
11580
11581 var
11582 ITraceSweepInfoImpl_vTable: TraceSweepInfoVTable;
11583
11584 constructor ITraceSweepInfoImpl.create;
11585 begin
11586 vTable := ITraceSweepInfoImpl_vTable;
11587 end;
11588
11589 procedure ITraceLogWriterImpl_addRefDispatcher(this: ITraceLogWriter); cdecl;
11590 begin
11591 try
11592 ITraceLogWriterImpl(this).addRef();
11593 except
11594 on e: Exception do FbException.catchException(nil, e);
11595 end
11596 end;
11597
11598 function ITraceLogWriterImpl_releaseDispatcher(this: ITraceLogWriter): Integer; cdecl;
11599 begin
11600 try
11601 Result := ITraceLogWriterImpl(this).release();
11602 except
11603 on e: Exception do FbException.catchException(nil, e);
11604 end
11605 end;
11606
11607 function ITraceLogWriterImpl_writeDispatcher(this: ITraceLogWriter; buf: Pointer; size: Cardinal): Cardinal; cdecl;
11608 begin
11609 try
11610 Result := ITraceLogWriterImpl(this).write(buf, size);
11611 except
11612 on e: Exception do FbException.catchException(nil, e);
11613 end
11614 end;
11615
11616 var
11617 ITraceLogWriterImpl_vTable: TraceLogWriterVTable;
11618
11619 constructor ITraceLogWriterImpl.create;
11620 begin
11621 vTable := ITraceLogWriterImpl_vTable;
11622 end;
11623
11624 function ITraceInitInfoImpl_getConfigTextDispatcher(this: ITraceInitInfo): PAnsiChar; cdecl;
11625 begin
11626 try
11627 Result := ITraceInitInfoImpl(this).getConfigText();
11628 except
11629 on e: Exception do FbException.catchException(nil, e);
11630 end
11631 end;
11632
11633 function ITraceInitInfoImpl_getTraceSessionIDDispatcher(this: ITraceInitInfo): Integer; cdecl;
11634 begin
11635 try
11636 Result := ITraceInitInfoImpl(this).getTraceSessionID();
11637 except
11638 on e: Exception do FbException.catchException(nil, e);
11639 end
11640 end;
11641
11642 function ITraceInitInfoImpl_getTraceSessionNameDispatcher(this: ITraceInitInfo): PAnsiChar; cdecl;
11643 begin
11644 try
11645 Result := ITraceInitInfoImpl(this).getTraceSessionName();
11646 except
11647 on e: Exception do FbException.catchException(nil, e);
11648 end
11649 end;
11650
11651 function ITraceInitInfoImpl_getFirebirdRootDirectoryDispatcher(this: ITraceInitInfo): PAnsiChar; cdecl;
11652 begin
11653 try
11654 Result := ITraceInitInfoImpl(this).getFirebirdRootDirectory();
11655 except
11656 on e: Exception do FbException.catchException(nil, e);
11657 end
11658 end;
11659
11660 function ITraceInitInfoImpl_getDatabaseNameDispatcher(this: ITraceInitInfo): PAnsiChar; cdecl;
11661 begin
11662 try
11663 Result := ITraceInitInfoImpl(this).getDatabaseName();
11664 except
11665 on e: Exception do FbException.catchException(nil, e);
11666 end
11667 end;
11668
11669 function ITraceInitInfoImpl_getConnectionDispatcher(this: ITraceInitInfo): ITraceDatabaseConnection; cdecl;
11670 begin
11671 try
11672 Result := ITraceInitInfoImpl(this).getConnection();
11673 except
11674 on e: Exception do FbException.catchException(nil, e);
11675 end
11676 end;
11677
11678 function ITraceInitInfoImpl_getLogWriterDispatcher(this: ITraceInitInfo): ITraceLogWriter; cdecl;
11679 begin
11680 try
11681 Result := ITraceInitInfoImpl(this).getLogWriter();
11682 except
11683 on e: Exception do FbException.catchException(nil, e);
11684 end
11685 end;
11686
11687 var
11688 ITraceInitInfoImpl_vTable: TraceInitInfoVTable;
11689
11690 constructor ITraceInitInfoImpl.create;
11691 begin
11692 vTable := ITraceInitInfoImpl_vTable;
11693 end;
11694
11695 procedure ITracePluginImpl_addRefDispatcher(this: ITracePlugin); cdecl;
11696 begin
11697 try
11698 ITracePluginImpl(this).addRef();
11699 except
11700 on e: Exception do FbException.catchException(nil, e);
11701 end
11702 end;
11703
11704 function ITracePluginImpl_releaseDispatcher(this: ITracePlugin): Integer; cdecl;
11705 begin
11706 try
11707 Result := ITracePluginImpl(this).release();
11708 except
11709 on e: Exception do FbException.catchException(nil, e);
11710 end
11711 end;
11712
11713 function ITracePluginImpl_trace_get_errorDispatcher(this: ITracePlugin): PAnsiChar; cdecl;
11714 begin
11715 try
11716 Result := ITracePluginImpl(this).trace_get_error();
11717 except
11718 on e: Exception do FbException.catchException(nil, e);
11719 end
11720 end;
11721
11722 function ITracePluginImpl_trace_attachDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; create_db: Boolean; att_result: Cardinal): Boolean; cdecl;
11723 begin
11724 try
11725 Result := ITracePluginImpl(this).trace_attach(connection, create_db, att_result);
11726 except
11727 on e: Exception do FbException.catchException(nil, e);
11728 end
11729 end;
11730
11731 function ITracePluginImpl_trace_detachDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; drop_db: Boolean): Boolean; cdecl;
11732 begin
11733 try
11734 Result := ITracePluginImpl(this).trace_detach(connection, drop_db);
11735 except
11736 on e: Exception do FbException.catchException(nil, e);
11737 end
11738 end;
11739
11740 function ITracePluginImpl_trace_transaction_startDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; tpb_length: Cardinal; tpb: BytePtr; tra_result: Cardinal): Boolean; cdecl;
11741 begin
11742 try
11743 Result := ITracePluginImpl(this).trace_transaction_start(connection, transaction, tpb_length, tpb, tra_result);
11744 except
11745 on e: Exception do FbException.catchException(nil, e);
11746 end
11747 end;
11748
11749 function ITracePluginImpl_trace_transaction_endDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; commit: Boolean; retain_context: Boolean; tra_result: Cardinal): Boolean; cdecl;
11750 begin
11751 try
11752 Result := ITracePluginImpl(this).trace_transaction_end(connection, transaction, commit, retain_context, tra_result);
11753 except
11754 on e: Exception do FbException.catchException(nil, e);
11755 end
11756 end;
11757
11758 function ITracePluginImpl_trace_proc_executeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; procedure_: ITraceProcedure; started: Boolean; proc_result: Cardinal): Boolean; cdecl;
11759 begin
11760 try
11761 Result := ITracePluginImpl(this).trace_proc_execute(connection, transaction, procedure_, started, proc_result);
11762 except
11763 on e: Exception do FbException.catchException(nil, e);
11764 end
11765 end;
11766
11767 function ITracePluginImpl_trace_trigger_executeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; trigger: ITraceTrigger; started: Boolean; trig_result: Cardinal): Boolean; cdecl;
11768 begin
11769 try
11770 Result := ITracePluginImpl(this).trace_trigger_execute(connection, transaction, trigger, started, trig_result);
11771 except
11772 on e: Exception do FbException.catchException(nil, e);
11773 end
11774 end;
11775
11776 function ITracePluginImpl_trace_set_contextDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; variable: ITraceContextVariable): Boolean; cdecl;
11777 begin
11778 try
11779 Result := ITracePluginImpl(this).trace_set_context(connection, transaction, variable);
11780 except
11781 on e: Exception do FbException.catchException(nil, e);
11782 end
11783 end;
11784
11785 function ITracePluginImpl_trace_dsql_prepareDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; time_millis: Int64; req_result: Cardinal): Boolean; cdecl;
11786 begin
11787 try
11788 Result := ITracePluginImpl(this).trace_dsql_prepare(connection, transaction, statement, time_millis, req_result);
11789 except
11790 on e: Exception do FbException.catchException(nil, e);
11791 end
11792 end;
11793
11794 function ITracePluginImpl_trace_dsql_freeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; statement: ITraceSQLStatement; option: Cardinal): Boolean; cdecl;
11795 begin
11796 try
11797 Result := ITracePluginImpl(this).trace_dsql_free(connection, statement, option);
11798 except
11799 on e: Exception do FbException.catchException(nil, e);
11800 end
11801 end;
11802
11803 function ITracePluginImpl_trace_dsql_executeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceSQLStatement; started: Boolean; req_result: Cardinal): Boolean; cdecl;
11804 begin
11805 try
11806 Result := ITracePluginImpl(this).trace_dsql_execute(connection, transaction, statement, started, req_result);
11807 except
11808 on e: Exception do FbException.catchException(nil, e);
11809 end
11810 end;
11811
11812 function ITracePluginImpl_trace_blr_compileDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; time_millis: Int64; req_result: Cardinal): Boolean; cdecl;
11813 begin
11814 try
11815 Result := ITracePluginImpl(this).trace_blr_compile(connection, transaction, statement, time_millis, req_result);
11816 except
11817 on e: Exception do FbException.catchException(nil, e);
11818 end
11819 end;
11820
11821 function ITracePluginImpl_trace_blr_executeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; statement: ITraceBLRStatement; req_result: Cardinal): Boolean; cdecl;
11822 begin
11823 try
11824 Result := ITracePluginImpl(this).trace_blr_execute(connection, transaction, statement, req_result);
11825 except
11826 on e: Exception do FbException.catchException(nil, e);
11827 end
11828 end;
11829
11830 function ITracePluginImpl_trace_dyn_executeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; request: ITraceDYNRequest; time_millis: Int64; req_result: Cardinal): Boolean; cdecl;
11831 begin
11832 try
11833 Result := ITracePluginImpl(this).trace_dyn_execute(connection, transaction, request, time_millis, req_result);
11834 except
11835 on e: Exception do FbException.catchException(nil, e);
11836 end
11837 end;
11838
11839 function ITracePluginImpl_trace_service_attachDispatcher(this: ITracePlugin; service: ITraceServiceConnection; att_result: Cardinal): Boolean; cdecl;
11840 begin
11841 try
11842 Result := ITracePluginImpl(this).trace_service_attach(service, att_result);
11843 except
11844 on e: Exception do FbException.catchException(nil, e);
11845 end
11846 end;
11847
11848 function ITracePluginImpl_trace_service_startDispatcher(this: ITracePlugin; service: ITraceServiceConnection; switches_length: Cardinal; switches: PAnsiChar; start_result: Cardinal): Boolean; cdecl;
11849 begin
11850 try
11851 Result := ITracePluginImpl(this).trace_service_start(service, switches_length, switches, start_result);
11852 except
11853 on e: Exception do FbException.catchException(nil, e);
11854 end
11855 end;
11856
11857 function ITracePluginImpl_trace_service_queryDispatcher(this: ITracePlugin; service: ITraceServiceConnection; send_item_length: Cardinal; send_items: BytePtr; recv_item_length: Cardinal; recv_items: BytePtr; query_result: Cardinal): Boolean; cdecl;
11858 begin
11859 try
11860 Result := ITracePluginImpl(this).trace_service_query(service, send_item_length, send_items, recv_item_length, recv_items, query_result);
11861 except
11862 on e: Exception do FbException.catchException(nil, e);
11863 end
11864 end;
11865
11866 function ITracePluginImpl_trace_service_detachDispatcher(this: ITracePlugin; service: ITraceServiceConnection; detach_result: Cardinal): Boolean; cdecl;
11867 begin
11868 try
11869 Result := ITracePluginImpl(this).trace_service_detach(service, detach_result);
11870 except
11871 on e: Exception do FbException.catchException(nil, e);
11872 end
11873 end;
11874
11875 function ITracePluginImpl_trace_event_errorDispatcher(this: ITracePlugin; connection: ITraceConnection; status: ITraceStatusVector; function_: PAnsiChar): Boolean; cdecl;
11876 begin
11877 try
11878 Result := ITracePluginImpl(this).trace_event_error(connection, status, function_);
11879 except
11880 on e: Exception do FbException.catchException(nil, e);
11881 end
11882 end;
11883
11884 function ITracePluginImpl_trace_event_sweepDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; sweep: ITraceSweepInfo; sweep_state: Cardinal): Boolean; cdecl;
11885 begin
11886 try
11887 Result := ITracePluginImpl(this).trace_event_sweep(connection, sweep, sweep_state);
11888 except
11889 on e: Exception do FbException.catchException(nil, e);
11890 end
11891 end;
11892
11893 function ITracePluginImpl_trace_func_executeDispatcher(this: ITracePlugin; connection: ITraceDatabaseConnection; transaction: ITraceTransaction; function_: ITraceFunction; started: Boolean; func_result: Cardinal): Boolean; cdecl;
11894 begin
11895 try
11896 Result := ITracePluginImpl(this).trace_func_execute(connection, transaction, function_, started, func_result);
11897 except
11898 on e: Exception do FbException.catchException(nil, e);
11899 end
11900 end;
11901
11902 var
11903 ITracePluginImpl_vTable: TracePluginVTable;
11904
11905 constructor ITracePluginImpl.create;
11906 begin
11907 vTable := ITracePluginImpl_vTable;
11908 end;
11909
11910 procedure ITraceFactoryImpl_addRefDispatcher(this: ITraceFactory); cdecl;
11911 begin
11912 try
11913 ITraceFactoryImpl(this).addRef();
11914 except
11915 on e: Exception do FbException.catchException(nil, e);
11916 end
11917 end;
11918
11919 function ITraceFactoryImpl_releaseDispatcher(this: ITraceFactory): Integer; cdecl;
11920 begin
11921 try
11922 Result := ITraceFactoryImpl(this).release();
11923 except
11924 on e: Exception do FbException.catchException(nil, e);
11925 end
11926 end;
11927
11928 procedure ITraceFactoryImpl_setOwnerDispatcher(this: ITraceFactory; r: IReferenceCounted); cdecl;
11929 begin
11930 try
11931 ITraceFactoryImpl(this).setOwner(r);
11932 except
11933 on e: Exception do FbException.catchException(nil, e);
11934 end
11935 end;
11936
11937 function ITraceFactoryImpl_getOwnerDispatcher(this: ITraceFactory): IReferenceCounted; cdecl;
11938 begin
11939 try
11940 Result := ITraceFactoryImpl(this).getOwner();
11941 except
11942 on e: Exception do FbException.catchException(nil, e);
11943 end
11944 end;
11945
11946 function ITraceFactoryImpl_trace_needsDispatcher(this: ITraceFactory): QWord; cdecl;
11947 begin
11948 try
11949 Result := ITraceFactoryImpl(this).trace_needs();
11950 except
11951 on e: Exception do FbException.catchException(nil, e);
11952 end
11953 end;
11954
11955 function ITraceFactoryImpl_trace_createDispatcher(this: ITraceFactory; status: IStatus; init_info: ITraceInitInfo): ITracePlugin; cdecl;
11956 begin
11957 try
11958 Result := ITraceFactoryImpl(this).trace_create(status, init_info);
11959 except
11960 on e: Exception do FbException.catchException(status, e);
11961 end
11962 end;
11963
11964 var
11965 ITraceFactoryImpl_vTable: TraceFactoryVTable;
11966
11967 constructor ITraceFactoryImpl.create;
11968 begin
11969 vTable := ITraceFactoryImpl_vTable;
11970 end;
11971
11972 procedure IUdrFunctionFactoryImpl_disposeDispatcher(this: IUdrFunctionFactory); cdecl;
11973 begin
11974 try
11975 IUdrFunctionFactoryImpl(this).dispose();
11976 except
11977 on e: Exception do FbException.catchException(nil, e);
11978 end
11979 end;
11980
11981 procedure IUdrFunctionFactoryImpl_setupDispatcher(this: IUdrFunctionFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder); cdecl;
11982 begin
11983 try
11984 IUdrFunctionFactoryImpl(this).setup(status, context, metadata, inBuilder, outBuilder);
11985 except
11986 on e: Exception do FbException.catchException(status, e);
11987 end
11988 end;
11989
11990 function IUdrFunctionFactoryImpl_newItemDispatcher(this: IUdrFunctionFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalFunction; cdecl;
11991 begin
11992 try
11993 Result := IUdrFunctionFactoryImpl(this).newItem(status, context, metadata);
11994 except
11995 on e: Exception do FbException.catchException(status, e);
11996 end
11997 end;
11998
11999 var
12000 IUdrFunctionFactoryImpl_vTable: UdrFunctionFactoryVTable;
12001
12002 constructor IUdrFunctionFactoryImpl.create;
12003 begin
12004 vTable := IUdrFunctionFactoryImpl_vTable;
12005 end;
12006
12007 procedure IUdrProcedureFactoryImpl_disposeDispatcher(this: IUdrProcedureFactory); cdecl;
12008 begin
12009 try
12010 IUdrProcedureFactoryImpl(this).dispose();
12011 except
12012 on e: Exception do FbException.catchException(nil, e);
12013 end
12014 end;
12015
12016 procedure IUdrProcedureFactoryImpl_setupDispatcher(this: IUdrProcedureFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; inBuilder: IMetadataBuilder; outBuilder: IMetadataBuilder); cdecl;
12017 begin
12018 try
12019 IUdrProcedureFactoryImpl(this).setup(status, context, metadata, inBuilder, outBuilder);
12020 except
12021 on e: Exception do FbException.catchException(status, e);
12022 end
12023 end;
12024
12025 function IUdrProcedureFactoryImpl_newItemDispatcher(this: IUdrProcedureFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalProcedure; cdecl;
12026 begin
12027 try
12028 Result := IUdrProcedureFactoryImpl(this).newItem(status, context, metadata);
12029 except
12030 on e: Exception do FbException.catchException(status, e);
12031 end
12032 end;
12033
12034 var
12035 IUdrProcedureFactoryImpl_vTable: UdrProcedureFactoryVTable;
12036
12037 constructor IUdrProcedureFactoryImpl.create;
12038 begin
12039 vTable := IUdrProcedureFactoryImpl_vTable;
12040 end;
12041
12042 procedure IUdrTriggerFactoryImpl_disposeDispatcher(this: IUdrTriggerFactory); cdecl;
12043 begin
12044 try
12045 IUdrTriggerFactoryImpl(this).dispose();
12046 except
12047 on e: Exception do FbException.catchException(nil, e);
12048 end
12049 end;
12050
12051 procedure IUdrTriggerFactoryImpl_setupDispatcher(this: IUdrTriggerFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata; fieldsBuilder: IMetadataBuilder); cdecl;
12052 begin
12053 try
12054 IUdrTriggerFactoryImpl(this).setup(status, context, metadata, fieldsBuilder);
12055 except
12056 on e: Exception do FbException.catchException(status, e);
12057 end
12058 end;
12059
12060 function IUdrTriggerFactoryImpl_newItemDispatcher(this: IUdrTriggerFactory; status: IStatus; context: IExternalContext; metadata: IRoutineMetadata): IExternalTrigger; cdecl;
12061 begin
12062 try
12063 Result := IUdrTriggerFactoryImpl(this).newItem(status, context, metadata);
12064 except
12065 on e: Exception do FbException.catchException(status, e);
12066 end
12067 end;
12068
12069 var
12070 IUdrTriggerFactoryImpl_vTable: UdrTriggerFactoryVTable;
12071
12072 constructor IUdrTriggerFactoryImpl.create;
12073 begin
12074 vTable := IUdrTriggerFactoryImpl_vTable;
12075 end;
12076
12077 function IUdrPluginImpl_getMasterDispatcher(this: IUdrPlugin): IMaster; cdecl;
12078 begin
12079 try
12080 Result := IUdrPluginImpl(this).getMaster();
12081 except
12082 on e: Exception do FbException.catchException(nil, e);
12083 end
12084 end;
12085
12086 procedure IUdrPluginImpl_registerFunctionDispatcher(this: IUdrPlugin; status: IStatus; name: PAnsiChar; factory: IUdrFunctionFactory); cdecl;
12087 begin
12088 try
12089 IUdrPluginImpl(this).registerFunction(status, name, factory);
12090 except
12091 on e: Exception do FbException.catchException(status, e);
12092 end
12093 end;
12094
12095 procedure IUdrPluginImpl_registerProcedureDispatcher(this: IUdrPlugin; status: IStatus; name: PAnsiChar; factory: IUdrProcedureFactory); cdecl;
12096 begin
12097 try
12098 IUdrPluginImpl(this).registerProcedure(status, name, factory);
12099 except
12100 on e: Exception do FbException.catchException(status, e);
12101 end
12102 end;
12103
12104 procedure IUdrPluginImpl_registerTriggerDispatcher(this: IUdrPlugin; status: IStatus; name: PAnsiChar; factory: IUdrTriggerFactory); cdecl;
12105 begin
12106 try
12107 IUdrPluginImpl(this).registerTrigger(status, name, factory);
12108 except
12109 on e: Exception do FbException.catchException(status, e);
12110 end
12111 end;
12112
12113 var
12114 IUdrPluginImpl_vTable: UdrPluginVTable;
12115
12116 constructor IUdrPluginImpl.create;
12117 begin
12118 vTable := IUdrPluginImpl_vTable;
12119 end;
12120
12121 constructor FbException.create(status: IStatus);
12122 begin
12123 inherited Create('FbException');
12124 self.status := status.clone;
12125 end;
12126
12127 destructor FbException.Destroy();
12128 begin
12129 status.dispose;
12130 inherited Destroy;
12131 end;
12132
12133 function FbException.getStatus: IStatus;
12134 begin
12135 Result := status;
12136 end;
12137
12138 class procedure FbException.checkException(status: IStatus);
12139 begin
12140 if ((status.getState and status.STATE_ERRORS) <> 0) then
12141 raise FbException.create(status);
12142 end;
12143
12144 class procedure FbException.catchException(status: IStatus; e: Exception);
12145 var
12146 statusVector: array[0..4] of NativeIntPtr;
12147 msg: AnsiString;
12148 begin
12149 if (e.inheritsFrom(FbException)) then
12150 status.setErrors(FbException(e).getStatus.getErrors)
12151 else
12152 begin
12153 msg := e.message;
12154
12155 statusVector[0] := NativeIntPtr(isc_arg_gds);
12156 statusVector[1] := NativeIntPtr(isc_random);
12157 statusVector[2] := NativeIntPtr(isc_arg_string);
12158 statusVector[3] := NativeIntPtr(PAnsiChar(msg));
12159 statusVector[4] := NativeIntPtr(isc_arg_end);
12160
12161 status.setErrors(@statusVector);
12162 end
12163 end;
12164 initialization
12165 IVersionedImpl_vTable := VersionedVTable.create;
12166 IVersionedImpl_vTable.version := 0;
12167
12168 IReferenceCountedImpl_vTable := ReferenceCountedVTable.create;
12169 IReferenceCountedImpl_vTable.version := 2;
12170 IReferenceCountedImpl_vTable.addRef := @IReferenceCountedImpl_addRefDispatcher;
12171 IReferenceCountedImpl_vTable.release := @IReferenceCountedImpl_releaseDispatcher;
12172
12173 IDisposableImpl_vTable := DisposableVTable.create;
12174 IDisposableImpl_vTable.version := 1;
12175 IDisposableImpl_vTable.dispose := @IDisposableImpl_disposeDispatcher;
12176
12177 IStatusImpl_vTable := StatusVTable.create;
12178 IStatusImpl_vTable.version := 10;
12179 IStatusImpl_vTable.dispose := @IStatusImpl_disposeDispatcher;
12180 IStatusImpl_vTable.init := @IStatusImpl_initDispatcher;
12181 IStatusImpl_vTable.getState := @IStatusImpl_getStateDispatcher;
12182 IStatusImpl_vTable.setErrors2 := @IStatusImpl_setErrors2Dispatcher;
12183 IStatusImpl_vTable.setWarnings2 := @IStatusImpl_setWarnings2Dispatcher;
12184 IStatusImpl_vTable.setErrors := @IStatusImpl_setErrorsDispatcher;
12185 IStatusImpl_vTable.setWarnings := @IStatusImpl_setWarningsDispatcher;
12186 IStatusImpl_vTable.getErrors := @IStatusImpl_getErrorsDispatcher;
12187 IStatusImpl_vTable.getWarnings := @IStatusImpl_getWarningsDispatcher;
12188 IStatusImpl_vTable.clone := @IStatusImpl_cloneDispatcher;
12189
12190 IMasterImpl_vTable := MasterVTable.create;
12191 IMasterImpl_vTable.version := 12;
12192 IMasterImpl_vTable.getStatus := @IMasterImpl_getStatusDispatcher;
12193 IMasterImpl_vTable.getDispatcher := @IMasterImpl_getDispatcherDispatcher;
12194 IMasterImpl_vTable.getPluginManager := @IMasterImpl_getPluginManagerDispatcher;
12195 IMasterImpl_vTable.getTimerControl := @IMasterImpl_getTimerControlDispatcher;
12196 IMasterImpl_vTable.getDtc := @IMasterImpl_getDtcDispatcher;
12197 IMasterImpl_vTable.registerAttachment := @IMasterImpl_registerAttachmentDispatcher;
12198 IMasterImpl_vTable.registerTransaction := @IMasterImpl_registerTransactionDispatcher;
12199 IMasterImpl_vTable.getMetadataBuilder := @IMasterImpl_getMetadataBuilderDispatcher;
12200 IMasterImpl_vTable.serverMode := @IMasterImpl_serverModeDispatcher;
12201 IMasterImpl_vTable.getUtilInterface := @IMasterImpl_getUtilInterfaceDispatcher;
12202 IMasterImpl_vTable.getConfigManager := @IMasterImpl_getConfigManagerDispatcher;
12203 IMasterImpl_vTable.getProcessExiting := @IMasterImpl_getProcessExitingDispatcher;
12204
12205 IPluginBaseImpl_vTable := PluginBaseVTable.create;
12206 IPluginBaseImpl_vTable.version := 4;
12207 IPluginBaseImpl_vTable.addRef := @IPluginBaseImpl_addRefDispatcher;
12208 IPluginBaseImpl_vTable.release := @IPluginBaseImpl_releaseDispatcher;
12209 IPluginBaseImpl_vTable.setOwner := @IPluginBaseImpl_setOwnerDispatcher;
12210 IPluginBaseImpl_vTable.getOwner := @IPluginBaseImpl_getOwnerDispatcher;
12211
12212 IPluginSetImpl_vTable := PluginSetVTable.create;
12213 IPluginSetImpl_vTable.version := 7;
12214 IPluginSetImpl_vTable.addRef := @IPluginSetImpl_addRefDispatcher;
12215 IPluginSetImpl_vTable.release := @IPluginSetImpl_releaseDispatcher;
12216 IPluginSetImpl_vTable.getName := @IPluginSetImpl_getNameDispatcher;
12217 IPluginSetImpl_vTable.getModuleName := @IPluginSetImpl_getModuleNameDispatcher;
12218 IPluginSetImpl_vTable.getPlugin := @IPluginSetImpl_getPluginDispatcher;
12219 IPluginSetImpl_vTable.next := @IPluginSetImpl_nextDispatcher;
12220 IPluginSetImpl_vTable.set_ := @IPluginSetImpl_set_Dispatcher;
12221
12222 IConfigEntryImpl_vTable := ConfigEntryVTable.create;
12223 IConfigEntryImpl_vTable.version := 7;
12224 IConfigEntryImpl_vTable.addRef := @IConfigEntryImpl_addRefDispatcher;
12225 IConfigEntryImpl_vTable.release := @IConfigEntryImpl_releaseDispatcher;
12226 IConfigEntryImpl_vTable.getName := @IConfigEntryImpl_getNameDispatcher;
12227 IConfigEntryImpl_vTable.getValue := @IConfigEntryImpl_getValueDispatcher;
12228 IConfigEntryImpl_vTable.getIntValue := @IConfigEntryImpl_getIntValueDispatcher;
12229 IConfigEntryImpl_vTable.getBoolValue := @IConfigEntryImpl_getBoolValueDispatcher;
12230 IConfigEntryImpl_vTable.getSubConfig := @IConfigEntryImpl_getSubConfigDispatcher;
12231
12232 IConfigImpl_vTable := ConfigVTable.create;
12233 IConfigImpl_vTable.version := 5;
12234 IConfigImpl_vTable.addRef := @IConfigImpl_addRefDispatcher;
12235 IConfigImpl_vTable.release := @IConfigImpl_releaseDispatcher;
12236 IConfigImpl_vTable.find := @IConfigImpl_findDispatcher;
12237 IConfigImpl_vTable.findValue := @IConfigImpl_findValueDispatcher;
12238 IConfigImpl_vTable.findPos := @IConfigImpl_findPosDispatcher;
12239
12240 IFirebirdConfImpl_vTable := FirebirdConfVTable.create;
12241 IFirebirdConfImpl_vTable.version := 6;
12242 IFirebirdConfImpl_vTable.addRef := @IFirebirdConfImpl_addRefDispatcher;
12243 IFirebirdConfImpl_vTable.release := @IFirebirdConfImpl_releaseDispatcher;
12244 IFirebirdConfImpl_vTable.getKey := @IFirebirdConfImpl_getKeyDispatcher;
12245 IFirebirdConfImpl_vTable.asInteger := @IFirebirdConfImpl_asIntegerDispatcher;
12246 IFirebirdConfImpl_vTable.asString := @IFirebirdConfImpl_asStringDispatcher;
12247 IFirebirdConfImpl_vTable.asBoolean := @IFirebirdConfImpl_asBooleanDispatcher;
12248
12249 IPluginConfigImpl_vTable := PluginConfigVTable.create;
12250 IPluginConfigImpl_vTable.version := 6;
12251 IPluginConfigImpl_vTable.addRef := @IPluginConfigImpl_addRefDispatcher;
12252 IPluginConfigImpl_vTable.release := @IPluginConfigImpl_releaseDispatcher;
12253 IPluginConfigImpl_vTable.getConfigFileName := @IPluginConfigImpl_getConfigFileNameDispatcher;
12254 IPluginConfigImpl_vTable.getDefaultConfig := @IPluginConfigImpl_getDefaultConfigDispatcher;
12255 IPluginConfigImpl_vTable.getFirebirdConf := @IPluginConfigImpl_getFirebirdConfDispatcher;
12256 IPluginConfigImpl_vTable.setReleaseDelay := @IPluginConfigImpl_setReleaseDelayDispatcher;
12257
12258 IPluginFactoryImpl_vTable := PluginFactoryVTable.create;
12259 IPluginFactoryImpl_vTable.version := 1;
12260 IPluginFactoryImpl_vTable.createPlugin := @IPluginFactoryImpl_createPluginDispatcher;
12261
12262 IPluginModuleImpl_vTable := PluginModuleVTable.create;
12263 IPluginModuleImpl_vTable.version := 1;
12264 IPluginModuleImpl_vTable.doClean := @IPluginModuleImpl_doCleanDispatcher;
12265
12266 IPluginManagerImpl_vTable := PluginManagerVTable.create;
12267 IPluginManagerImpl_vTable.version := 6;
12268 IPluginManagerImpl_vTable.registerPluginFactory := @IPluginManagerImpl_registerPluginFactoryDispatcher;
12269 IPluginManagerImpl_vTable.registerModule := @IPluginManagerImpl_registerModuleDispatcher;
12270 IPluginManagerImpl_vTable.unregisterModule := @IPluginManagerImpl_unregisterModuleDispatcher;
12271 IPluginManagerImpl_vTable.getPlugins := @IPluginManagerImpl_getPluginsDispatcher;
12272 IPluginManagerImpl_vTable.getConfig := @IPluginManagerImpl_getConfigDispatcher;
12273 IPluginManagerImpl_vTable.releasePlugin := @IPluginManagerImpl_releasePluginDispatcher;
12274
12275 ICryptKeyImpl_vTable := CryptKeyVTable.create;
12276 ICryptKeyImpl_vTable.version := 4;
12277 ICryptKeyImpl_vTable.setSymmetric := @ICryptKeyImpl_setSymmetricDispatcher;
12278 ICryptKeyImpl_vTable.setAsymmetric := @ICryptKeyImpl_setAsymmetricDispatcher;
12279 ICryptKeyImpl_vTable.getEncryptKey := @ICryptKeyImpl_getEncryptKeyDispatcher;
12280 ICryptKeyImpl_vTable.getDecryptKey := @ICryptKeyImpl_getDecryptKeyDispatcher;
12281
12282 IConfigManagerImpl_vTable := ConfigManagerVTable.create;
12283 IConfigManagerImpl_vTable.version := 6;
12284 IConfigManagerImpl_vTable.getDirectory := @IConfigManagerImpl_getDirectoryDispatcher;
12285 IConfigManagerImpl_vTable.getFirebirdConf := @IConfigManagerImpl_getFirebirdConfDispatcher;
12286 IConfigManagerImpl_vTable.getDatabaseConf := @IConfigManagerImpl_getDatabaseConfDispatcher;
12287 IConfigManagerImpl_vTable.getPluginConfig := @IConfigManagerImpl_getPluginConfigDispatcher;
12288 IConfigManagerImpl_vTable.getInstallDirectory := @IConfigManagerImpl_getInstallDirectoryDispatcher;
12289 IConfigManagerImpl_vTable.getRootDirectory := @IConfigManagerImpl_getRootDirectoryDispatcher;
12290
12291 IEventCallbackImpl_vTable := EventCallbackVTable.create;
12292 IEventCallbackImpl_vTable.version := 3;
12293 IEventCallbackImpl_vTable.addRef := @IEventCallbackImpl_addRefDispatcher;
12294 IEventCallbackImpl_vTable.release := @IEventCallbackImpl_releaseDispatcher;
12295 IEventCallbackImpl_vTable.eventCallbackFunction := @IEventCallbackImpl_eventCallbackFunctionDispatcher;
12296
12297 IBlobImpl_vTable := BlobVTable.create;
12298 IBlobImpl_vTable.version := 8;
12299 IBlobImpl_vTable.addRef := @IBlobImpl_addRefDispatcher;
12300 IBlobImpl_vTable.release := @IBlobImpl_releaseDispatcher;
12301 IBlobImpl_vTable.getInfo := @IBlobImpl_getInfoDispatcher;
12302 IBlobImpl_vTable.getSegment := @IBlobImpl_getSegmentDispatcher;
12303 IBlobImpl_vTable.putSegment := @IBlobImpl_putSegmentDispatcher;
12304 IBlobImpl_vTable.cancel := @IBlobImpl_cancelDispatcher;
12305 IBlobImpl_vTable.close := @IBlobImpl_closeDispatcher;
12306 IBlobImpl_vTable.seek := @IBlobImpl_seekDispatcher;
12307
12308 ITransactionImpl_vTable := TransactionVTable.create;
12309 ITransactionImpl_vTable.version := 12;
12310 ITransactionImpl_vTable.addRef := @ITransactionImpl_addRefDispatcher;
12311 ITransactionImpl_vTable.release := @ITransactionImpl_releaseDispatcher;
12312 ITransactionImpl_vTable.getInfo := @ITransactionImpl_getInfoDispatcher;
12313 ITransactionImpl_vTable.prepare := @ITransactionImpl_prepareDispatcher;
12314 ITransactionImpl_vTable.commit := @ITransactionImpl_commitDispatcher;
12315 ITransactionImpl_vTable.commitRetaining := @ITransactionImpl_commitRetainingDispatcher;
12316 ITransactionImpl_vTable.rollback := @ITransactionImpl_rollbackDispatcher;
12317 ITransactionImpl_vTable.rollbackRetaining := @ITransactionImpl_rollbackRetainingDispatcher;
12318 ITransactionImpl_vTable.disconnect := @ITransactionImpl_disconnectDispatcher;
12319 ITransactionImpl_vTable.join := @ITransactionImpl_joinDispatcher;
12320 ITransactionImpl_vTable.validate := @ITransactionImpl_validateDispatcher;
12321 ITransactionImpl_vTable.enterDtc := @ITransactionImpl_enterDtcDispatcher;
12322
12323 IMessageMetadataImpl_vTable := MessageMetadataVTable.create;
12324 IMessageMetadataImpl_vTable.version := 17;
12325 IMessageMetadataImpl_vTable.addRef := @IMessageMetadataImpl_addRefDispatcher;
12326 IMessageMetadataImpl_vTable.release := @IMessageMetadataImpl_releaseDispatcher;
12327 IMessageMetadataImpl_vTable.getCount := @IMessageMetadataImpl_getCountDispatcher;
12328 IMessageMetadataImpl_vTable.getField := @IMessageMetadataImpl_getFieldDispatcher;
12329 IMessageMetadataImpl_vTable.getRelation := @IMessageMetadataImpl_getRelationDispatcher;
12330 IMessageMetadataImpl_vTable.getOwner := @IMessageMetadataImpl_getOwnerDispatcher;
12331 IMessageMetadataImpl_vTable.getAlias := @IMessageMetadataImpl_getAliasDispatcher;
12332 IMessageMetadataImpl_vTable.getType := @IMessageMetadataImpl_getTypeDispatcher;
12333 IMessageMetadataImpl_vTable.isNullable := @IMessageMetadataImpl_isNullableDispatcher;
12334 IMessageMetadataImpl_vTable.getSubType := @IMessageMetadataImpl_getSubTypeDispatcher;
12335 IMessageMetadataImpl_vTable.getLength := @IMessageMetadataImpl_getLengthDispatcher;
12336 IMessageMetadataImpl_vTable.getScale := @IMessageMetadataImpl_getScaleDispatcher;
12337 IMessageMetadataImpl_vTable.getCharSet := @IMessageMetadataImpl_getCharSetDispatcher;
12338 IMessageMetadataImpl_vTable.getOffset := @IMessageMetadataImpl_getOffsetDispatcher;
12339 IMessageMetadataImpl_vTable.getNullOffset := @IMessageMetadataImpl_getNullOffsetDispatcher;
12340 IMessageMetadataImpl_vTable.getBuilder := @IMessageMetadataImpl_getBuilderDispatcher;
12341 IMessageMetadataImpl_vTable.getMessageLength := @IMessageMetadataImpl_getMessageLengthDispatcher;
12342
12343 IMetadataBuilderImpl_vTable := MetadataBuilderVTable.create;
12344 IMetadataBuilderImpl_vTable.version := 12;
12345 IMetadataBuilderImpl_vTable.addRef := @IMetadataBuilderImpl_addRefDispatcher;
12346 IMetadataBuilderImpl_vTable.release := @IMetadataBuilderImpl_releaseDispatcher;
12347 IMetadataBuilderImpl_vTable.setType := @IMetadataBuilderImpl_setTypeDispatcher;
12348 IMetadataBuilderImpl_vTable.setSubType := @IMetadataBuilderImpl_setSubTypeDispatcher;
12349 IMetadataBuilderImpl_vTable.setLength := @IMetadataBuilderImpl_setLengthDispatcher;
12350 IMetadataBuilderImpl_vTable.setCharSet := @IMetadataBuilderImpl_setCharSetDispatcher;
12351 IMetadataBuilderImpl_vTable.setScale := @IMetadataBuilderImpl_setScaleDispatcher;
12352 IMetadataBuilderImpl_vTable.truncate := @IMetadataBuilderImpl_truncateDispatcher;
12353 IMetadataBuilderImpl_vTable.moveNameToIndex := @IMetadataBuilderImpl_moveNameToIndexDispatcher;
12354 IMetadataBuilderImpl_vTable.remove := @IMetadataBuilderImpl_removeDispatcher;
12355 IMetadataBuilderImpl_vTable.addField := @IMetadataBuilderImpl_addFieldDispatcher;
12356 IMetadataBuilderImpl_vTable.getMetadata := @IMetadataBuilderImpl_getMetadataDispatcher;
12357
12358 IResultSetImpl_vTable := ResultSetVTable.create;
12359 IResultSetImpl_vTable.version := 13;
12360 IResultSetImpl_vTable.addRef := @IResultSetImpl_addRefDispatcher;
12361 IResultSetImpl_vTable.release := @IResultSetImpl_releaseDispatcher;
12362 IResultSetImpl_vTable.fetchNext := @IResultSetImpl_fetchNextDispatcher;
12363 IResultSetImpl_vTable.fetchPrior := @IResultSetImpl_fetchPriorDispatcher;
12364 IResultSetImpl_vTable.fetchFirst := @IResultSetImpl_fetchFirstDispatcher;
12365 IResultSetImpl_vTable.fetchLast := @IResultSetImpl_fetchLastDispatcher;
12366 IResultSetImpl_vTable.fetchAbsolute := @IResultSetImpl_fetchAbsoluteDispatcher;
12367 IResultSetImpl_vTable.fetchRelative := @IResultSetImpl_fetchRelativeDispatcher;
12368 IResultSetImpl_vTable.isEof := @IResultSetImpl_isEofDispatcher;
12369 IResultSetImpl_vTable.isBof := @IResultSetImpl_isBofDispatcher;
12370 IResultSetImpl_vTable.getMetadata := @IResultSetImpl_getMetadataDispatcher;
12371 IResultSetImpl_vTable.close := @IResultSetImpl_closeDispatcher;
12372 IResultSetImpl_vTable.setDelayedOutputFormat := @IResultSetImpl_setDelayedOutputFormatDispatcher;
12373
12374 IStatementImpl_vTable := StatementVTable.create;
12375 IStatementImpl_vTable.version := 13;
12376 IStatementImpl_vTable.addRef := @IStatementImpl_addRefDispatcher;
12377 IStatementImpl_vTable.release := @IStatementImpl_releaseDispatcher;
12378 IStatementImpl_vTable.getInfo := @IStatementImpl_getInfoDispatcher;
12379 IStatementImpl_vTable.getType := @IStatementImpl_getTypeDispatcher;
12380 IStatementImpl_vTable.getPlan := @IStatementImpl_getPlanDispatcher;
12381 IStatementImpl_vTable.getAffectedRecords := @IStatementImpl_getAffectedRecordsDispatcher;
12382 IStatementImpl_vTable.getInputMetadata := @IStatementImpl_getInputMetadataDispatcher;
12383 IStatementImpl_vTable.getOutputMetadata := @IStatementImpl_getOutputMetadataDispatcher;
12384 IStatementImpl_vTable.execute := @IStatementImpl_executeDispatcher;
12385 IStatementImpl_vTable.openCursor := @IStatementImpl_openCursorDispatcher;
12386 IStatementImpl_vTable.setCursorName := @IStatementImpl_setCursorNameDispatcher;
12387 IStatementImpl_vTable.free := @IStatementImpl_freeDispatcher;
12388 IStatementImpl_vTable.getFlags := @IStatementImpl_getFlagsDispatcher;
12389
12390 IRequestImpl_vTable := RequestVTable.create;
12391 IRequestImpl_vTable.version := 9;
12392 IRequestImpl_vTable.addRef := @IRequestImpl_addRefDispatcher;
12393 IRequestImpl_vTable.release := @IRequestImpl_releaseDispatcher;
12394 IRequestImpl_vTable.receive := @IRequestImpl_receiveDispatcher;
12395 IRequestImpl_vTable.send := @IRequestImpl_sendDispatcher;
12396 IRequestImpl_vTable.getInfo := @IRequestImpl_getInfoDispatcher;
12397 IRequestImpl_vTable.start := @IRequestImpl_startDispatcher;
12398 IRequestImpl_vTable.startAndSend := @IRequestImpl_startAndSendDispatcher;
12399 IRequestImpl_vTable.unwind := @IRequestImpl_unwindDispatcher;
12400 IRequestImpl_vTable.free := @IRequestImpl_freeDispatcher;
12401
12402 IEventsImpl_vTable := EventsVTable.create;
12403 IEventsImpl_vTable.version := 3;
12404 IEventsImpl_vTable.addRef := @IEventsImpl_addRefDispatcher;
12405 IEventsImpl_vTable.release := @IEventsImpl_releaseDispatcher;
12406 IEventsImpl_vTable.cancel := @IEventsImpl_cancelDispatcher;
12407
12408 IAttachmentImpl_vTable := AttachmentVTable.create;
12409 IAttachmentImpl_vTable.version := 20;
12410 IAttachmentImpl_vTable.addRef := @IAttachmentImpl_addRefDispatcher;
12411 IAttachmentImpl_vTable.release := @IAttachmentImpl_releaseDispatcher;
12412 IAttachmentImpl_vTable.getInfo := @IAttachmentImpl_getInfoDispatcher;
12413 IAttachmentImpl_vTable.startTransaction := @IAttachmentImpl_startTransactionDispatcher;
12414 IAttachmentImpl_vTable.reconnectTransaction := @IAttachmentImpl_reconnectTransactionDispatcher;
12415 IAttachmentImpl_vTable.compileRequest := @IAttachmentImpl_compileRequestDispatcher;
12416 IAttachmentImpl_vTable.transactRequest := @IAttachmentImpl_transactRequestDispatcher;
12417 IAttachmentImpl_vTable.createBlob := @IAttachmentImpl_createBlobDispatcher;
12418 IAttachmentImpl_vTable.openBlob := @IAttachmentImpl_openBlobDispatcher;
12419 IAttachmentImpl_vTable.getSlice := @IAttachmentImpl_getSliceDispatcher;
12420 IAttachmentImpl_vTable.putSlice := @IAttachmentImpl_putSliceDispatcher;
12421 IAttachmentImpl_vTable.executeDyn := @IAttachmentImpl_executeDynDispatcher;
12422 IAttachmentImpl_vTable.prepare := @IAttachmentImpl_prepareDispatcher;
12423 IAttachmentImpl_vTable.execute := @IAttachmentImpl_executeDispatcher;
12424 IAttachmentImpl_vTable.openCursor := @IAttachmentImpl_openCursorDispatcher;
12425 IAttachmentImpl_vTable.queEvents := @IAttachmentImpl_queEventsDispatcher;
12426 IAttachmentImpl_vTable.cancelOperation := @IAttachmentImpl_cancelOperationDispatcher;
12427 IAttachmentImpl_vTable.ping := @IAttachmentImpl_pingDispatcher;
12428 IAttachmentImpl_vTable.detach := @IAttachmentImpl_detachDispatcher;
12429 IAttachmentImpl_vTable.dropDatabase := @IAttachmentImpl_dropDatabaseDispatcher;
12430
12431 IServiceImpl_vTable := ServiceVTable.create;
12432 IServiceImpl_vTable.version := 5;
12433 IServiceImpl_vTable.addRef := @IServiceImpl_addRefDispatcher;
12434 IServiceImpl_vTable.release := @IServiceImpl_releaseDispatcher;
12435 IServiceImpl_vTable.detach := @IServiceImpl_detachDispatcher;
12436 IServiceImpl_vTable.query := @IServiceImpl_queryDispatcher;
12437 IServiceImpl_vTable.start := @IServiceImpl_startDispatcher;
12438
12439 IProviderImpl_vTable := ProviderVTable.create;
12440 IProviderImpl_vTable.version := 9;
12441 IProviderImpl_vTable.addRef := @IProviderImpl_addRefDispatcher;
12442 IProviderImpl_vTable.release := @IProviderImpl_releaseDispatcher;
12443 IProviderImpl_vTable.setOwner := @IProviderImpl_setOwnerDispatcher;
12444 IProviderImpl_vTable.getOwner := @IProviderImpl_getOwnerDispatcher;
12445 IProviderImpl_vTable.attachDatabase := @IProviderImpl_attachDatabaseDispatcher;
12446 IProviderImpl_vTable.createDatabase := @IProviderImpl_createDatabaseDispatcher;
12447 IProviderImpl_vTable.attachServiceManager := @IProviderImpl_attachServiceManagerDispatcher;
12448 IProviderImpl_vTable.shutdown := @IProviderImpl_shutdownDispatcher;
12449 IProviderImpl_vTable.setDbCryptCallback := @IProviderImpl_setDbCryptCallbackDispatcher;
12450
12451 IDtcStartImpl_vTable := DtcStartVTable.create;
12452 IDtcStartImpl_vTable.version := 4;
12453 IDtcStartImpl_vTable.dispose := @IDtcStartImpl_disposeDispatcher;
12454 IDtcStartImpl_vTable.addAttachment := @IDtcStartImpl_addAttachmentDispatcher;
12455 IDtcStartImpl_vTable.addWithTpb := @IDtcStartImpl_addWithTpbDispatcher;
12456 IDtcStartImpl_vTable.start := @IDtcStartImpl_startDispatcher;
12457
12458 IDtcImpl_vTable := DtcVTable.create;
12459 IDtcImpl_vTable.version := 2;
12460 IDtcImpl_vTable.join := @IDtcImpl_joinDispatcher;
12461 IDtcImpl_vTable.startBuilder := @IDtcImpl_startBuilderDispatcher;
12462
12463 IAuthImpl_vTable := AuthVTable.create;
12464 IAuthImpl_vTable.version := 4;
12465 IAuthImpl_vTable.addRef := @IAuthImpl_addRefDispatcher;
12466 IAuthImpl_vTable.release := @IAuthImpl_releaseDispatcher;
12467 IAuthImpl_vTable.setOwner := @IAuthImpl_setOwnerDispatcher;
12468 IAuthImpl_vTable.getOwner := @IAuthImpl_getOwnerDispatcher;
12469
12470 IWriterImpl_vTable := WriterVTable.create;
12471 IWriterImpl_vTable.version := 4;
12472 IWriterImpl_vTable.reset := @IWriterImpl_resetDispatcher;
12473 IWriterImpl_vTable.add := @IWriterImpl_addDispatcher;
12474 IWriterImpl_vTable.setType := @IWriterImpl_setTypeDispatcher;
12475 IWriterImpl_vTable.setDb := @IWriterImpl_setDbDispatcher;
12476
12477 IServerBlockImpl_vTable := ServerBlockVTable.create;
12478 IServerBlockImpl_vTable.version := 4;
12479 IServerBlockImpl_vTable.getLogin := @IServerBlockImpl_getLoginDispatcher;
12480 IServerBlockImpl_vTable.getData := @IServerBlockImpl_getDataDispatcher;
12481 IServerBlockImpl_vTable.putData := @IServerBlockImpl_putDataDispatcher;
12482 IServerBlockImpl_vTable.newKey := @IServerBlockImpl_newKeyDispatcher;
12483
12484 IClientBlockImpl_vTable := ClientBlockVTable.create;
12485 IClientBlockImpl_vTable.version := 7;
12486 IClientBlockImpl_vTable.addRef := @IClientBlockImpl_addRefDispatcher;
12487 IClientBlockImpl_vTable.release := @IClientBlockImpl_releaseDispatcher;
12488 IClientBlockImpl_vTable.getLogin := @IClientBlockImpl_getLoginDispatcher;
12489 IClientBlockImpl_vTable.getPassword := @IClientBlockImpl_getPasswordDispatcher;
12490 IClientBlockImpl_vTable.getData := @IClientBlockImpl_getDataDispatcher;
12491 IClientBlockImpl_vTable.putData := @IClientBlockImpl_putDataDispatcher;
12492 IClientBlockImpl_vTable.newKey := @IClientBlockImpl_newKeyDispatcher;
12493
12494 IServerImpl_vTable := ServerVTable.create;
12495 IServerImpl_vTable.version := 5;
12496 IServerImpl_vTable.addRef := @IServerImpl_addRefDispatcher;
12497 IServerImpl_vTable.release := @IServerImpl_releaseDispatcher;
12498 IServerImpl_vTable.setOwner := @IServerImpl_setOwnerDispatcher;
12499 IServerImpl_vTable.getOwner := @IServerImpl_getOwnerDispatcher;
12500 IServerImpl_vTable.authenticate := @IServerImpl_authenticateDispatcher;
12501
12502 IClientImpl_vTable := ClientVTable.create;
12503 IClientImpl_vTable.version := 5;
12504 IClientImpl_vTable.addRef := @IClientImpl_addRefDispatcher;
12505 IClientImpl_vTable.release := @IClientImpl_releaseDispatcher;
12506 IClientImpl_vTable.setOwner := @IClientImpl_setOwnerDispatcher;
12507 IClientImpl_vTable.getOwner := @IClientImpl_getOwnerDispatcher;
12508 IClientImpl_vTable.authenticate := @IClientImpl_authenticateDispatcher;
12509
12510 IUserFieldImpl_vTable := UserFieldVTable.create;
12511 IUserFieldImpl_vTable.version := 3;
12512 IUserFieldImpl_vTable.entered := @IUserFieldImpl_enteredDispatcher;
12513 IUserFieldImpl_vTable.specified := @IUserFieldImpl_specifiedDispatcher;
12514 IUserFieldImpl_vTable.setEntered := @IUserFieldImpl_setEnteredDispatcher;
12515
12516 ICharUserFieldImpl_vTable := CharUserFieldVTable.create;
12517 ICharUserFieldImpl_vTable.version := 5;
12518 ICharUserFieldImpl_vTable.entered := @ICharUserFieldImpl_enteredDispatcher;
12519 ICharUserFieldImpl_vTable.specified := @ICharUserFieldImpl_specifiedDispatcher;
12520 ICharUserFieldImpl_vTable.setEntered := @ICharUserFieldImpl_setEnteredDispatcher;
12521 ICharUserFieldImpl_vTable.get := @ICharUserFieldImpl_getDispatcher;
12522 ICharUserFieldImpl_vTable.set_ := @ICharUserFieldImpl_set_Dispatcher;
12523
12524 IIntUserFieldImpl_vTable := IntUserFieldVTable.create;
12525 IIntUserFieldImpl_vTable.version := 5;
12526 IIntUserFieldImpl_vTable.entered := @IIntUserFieldImpl_enteredDispatcher;
12527 IIntUserFieldImpl_vTable.specified := @IIntUserFieldImpl_specifiedDispatcher;
12528 IIntUserFieldImpl_vTable.setEntered := @IIntUserFieldImpl_setEnteredDispatcher;
12529 IIntUserFieldImpl_vTable.get := @IIntUserFieldImpl_getDispatcher;
12530 IIntUserFieldImpl_vTable.set_ := @IIntUserFieldImpl_set_Dispatcher;
12531
12532 IUserImpl_vTable := UserVTable.create;
12533 IUserImpl_vTable.version := 11;
12534 IUserImpl_vTable.operation := @IUserImpl_operationDispatcher;
12535 IUserImpl_vTable.userName := @IUserImpl_userNameDispatcher;
12536 IUserImpl_vTable.password := @IUserImpl_passwordDispatcher;
12537 IUserImpl_vTable.firstName := @IUserImpl_firstNameDispatcher;
12538 IUserImpl_vTable.lastName := @IUserImpl_lastNameDispatcher;
12539 IUserImpl_vTable.middleName := @IUserImpl_middleNameDispatcher;
12540 IUserImpl_vTable.comment := @IUserImpl_commentDispatcher;
12541 IUserImpl_vTable.attributes := @IUserImpl_attributesDispatcher;
12542 IUserImpl_vTable.active := @IUserImpl_activeDispatcher;
12543 IUserImpl_vTable.admin := @IUserImpl_adminDispatcher;
12544 IUserImpl_vTable.clear := @IUserImpl_clearDispatcher;
12545
12546 IListUsersImpl_vTable := ListUsersVTable.create;
12547 IListUsersImpl_vTable.version := 1;
12548 IListUsersImpl_vTable.list := @IListUsersImpl_listDispatcher;
12549
12550 ILogonInfoImpl_vTable := LogonInfoVTable.create;
12551 ILogonInfoImpl_vTable.version := 5;
12552 ILogonInfoImpl_vTable.name := @ILogonInfoImpl_nameDispatcher;
12553 ILogonInfoImpl_vTable.role := @ILogonInfoImpl_roleDispatcher;
12554 ILogonInfoImpl_vTable.networkProtocol := @ILogonInfoImpl_networkProtocolDispatcher;
12555 ILogonInfoImpl_vTable.remoteAddress := @ILogonInfoImpl_remoteAddressDispatcher;
12556 ILogonInfoImpl_vTable.authBlock := @ILogonInfoImpl_authBlockDispatcher;
12557
12558 IManagementImpl_vTable := ManagementVTable.create;
12559 IManagementImpl_vTable.version := 8;
12560 IManagementImpl_vTable.addRef := @IManagementImpl_addRefDispatcher;
12561 IManagementImpl_vTable.release := @IManagementImpl_releaseDispatcher;
12562 IManagementImpl_vTable.setOwner := @IManagementImpl_setOwnerDispatcher;
12563 IManagementImpl_vTable.getOwner := @IManagementImpl_getOwnerDispatcher;
12564 IManagementImpl_vTable.start := @IManagementImpl_startDispatcher;
12565 IManagementImpl_vTable.execute := @IManagementImpl_executeDispatcher;
12566 IManagementImpl_vTable.commit := @IManagementImpl_commitDispatcher;
12567 IManagementImpl_vTable.rollback := @IManagementImpl_rollbackDispatcher;
12568
12569 IWireCryptPluginImpl_vTable := WireCryptPluginVTable.create;
12570 IWireCryptPluginImpl_vTable.version := 8;
12571 IWireCryptPluginImpl_vTable.addRef := @IWireCryptPluginImpl_addRefDispatcher;
12572 IWireCryptPluginImpl_vTable.release := @IWireCryptPluginImpl_releaseDispatcher;
12573 IWireCryptPluginImpl_vTable.setOwner := @IWireCryptPluginImpl_setOwnerDispatcher;
12574 IWireCryptPluginImpl_vTable.getOwner := @IWireCryptPluginImpl_getOwnerDispatcher;
12575 IWireCryptPluginImpl_vTable.getKnownTypes := @IWireCryptPluginImpl_getKnownTypesDispatcher;
12576 IWireCryptPluginImpl_vTable.setKey := @IWireCryptPluginImpl_setKeyDispatcher;
12577 IWireCryptPluginImpl_vTable.encrypt := @IWireCryptPluginImpl_encryptDispatcher;
12578 IWireCryptPluginImpl_vTable.decrypt := @IWireCryptPluginImpl_decryptDispatcher;
12579
12580 ICryptKeyCallbackImpl_vTable := CryptKeyCallbackVTable.create;
12581 ICryptKeyCallbackImpl_vTable.version := 1;
12582 ICryptKeyCallbackImpl_vTable.callback := @ICryptKeyCallbackImpl_callbackDispatcher;
12583
12584 IKeyHolderPluginImpl_vTable := KeyHolderPluginVTable.create;
12585 IKeyHolderPluginImpl_vTable.version := 6;
12586 IKeyHolderPluginImpl_vTable.addRef := @IKeyHolderPluginImpl_addRefDispatcher;
12587 IKeyHolderPluginImpl_vTable.release := @IKeyHolderPluginImpl_releaseDispatcher;
12588 IKeyHolderPluginImpl_vTable.setOwner := @IKeyHolderPluginImpl_setOwnerDispatcher;
12589 IKeyHolderPluginImpl_vTable.getOwner := @IKeyHolderPluginImpl_getOwnerDispatcher;
12590 IKeyHolderPluginImpl_vTable.keyCallback := @IKeyHolderPluginImpl_keyCallbackDispatcher;
12591 IKeyHolderPluginImpl_vTable.keyHandle := @IKeyHolderPluginImpl_keyHandleDispatcher;
12592
12593 IDbCryptPluginImpl_vTable := DbCryptPluginVTable.create;
12594 IDbCryptPluginImpl_vTable.version := 7;
12595 IDbCryptPluginImpl_vTable.addRef := @IDbCryptPluginImpl_addRefDispatcher;
12596 IDbCryptPluginImpl_vTable.release := @IDbCryptPluginImpl_releaseDispatcher;
12597 IDbCryptPluginImpl_vTable.setOwner := @IDbCryptPluginImpl_setOwnerDispatcher;
12598 IDbCryptPluginImpl_vTable.getOwner := @IDbCryptPluginImpl_getOwnerDispatcher;
12599 IDbCryptPluginImpl_vTable.setKey := @IDbCryptPluginImpl_setKeyDispatcher;
12600 IDbCryptPluginImpl_vTable.encrypt := @IDbCryptPluginImpl_encryptDispatcher;
12601 IDbCryptPluginImpl_vTable.decrypt := @IDbCryptPluginImpl_decryptDispatcher;
12602
12603 IExternalContextImpl_vTable := ExternalContextVTable.create;
12604 IExternalContextImpl_vTable.version := 10;
12605 IExternalContextImpl_vTable.getMaster := @IExternalContextImpl_getMasterDispatcher;
12606 IExternalContextImpl_vTable.getEngine := @IExternalContextImpl_getEngineDispatcher;
12607 IExternalContextImpl_vTable.getAttachment := @IExternalContextImpl_getAttachmentDispatcher;
12608 IExternalContextImpl_vTable.getTransaction := @IExternalContextImpl_getTransactionDispatcher;
12609 IExternalContextImpl_vTable.getUserName := @IExternalContextImpl_getUserNameDispatcher;
12610 IExternalContextImpl_vTable.getDatabaseName := @IExternalContextImpl_getDatabaseNameDispatcher;
12611 IExternalContextImpl_vTable.getClientCharSet := @IExternalContextImpl_getClientCharSetDispatcher;
12612 IExternalContextImpl_vTable.obtainInfoCode := @IExternalContextImpl_obtainInfoCodeDispatcher;
12613 IExternalContextImpl_vTable.getInfo := @IExternalContextImpl_getInfoDispatcher;
12614 IExternalContextImpl_vTable.setInfo := @IExternalContextImpl_setInfoDispatcher;
12615
12616 IExternalResultSetImpl_vTable := ExternalResultSetVTable.create;
12617 IExternalResultSetImpl_vTable.version := 2;
12618 IExternalResultSetImpl_vTable.dispose := @IExternalResultSetImpl_disposeDispatcher;
12619 IExternalResultSetImpl_vTable.fetch := @IExternalResultSetImpl_fetchDispatcher;
12620
12621 IExternalFunctionImpl_vTable := ExternalFunctionVTable.create;
12622 IExternalFunctionImpl_vTable.version := 3;
12623 IExternalFunctionImpl_vTable.dispose := @IExternalFunctionImpl_disposeDispatcher;
12624 IExternalFunctionImpl_vTable.getCharSet := @IExternalFunctionImpl_getCharSetDispatcher;
12625 IExternalFunctionImpl_vTable.execute := @IExternalFunctionImpl_executeDispatcher;
12626
12627 IExternalProcedureImpl_vTable := ExternalProcedureVTable.create;
12628 IExternalProcedureImpl_vTable.version := 3;
12629 IExternalProcedureImpl_vTable.dispose := @IExternalProcedureImpl_disposeDispatcher;
12630 IExternalProcedureImpl_vTable.getCharSet := @IExternalProcedureImpl_getCharSetDispatcher;
12631 IExternalProcedureImpl_vTable.open := @IExternalProcedureImpl_openDispatcher;
12632
12633 IExternalTriggerImpl_vTable := ExternalTriggerVTable.create;
12634 IExternalTriggerImpl_vTable.version := 3;
12635 IExternalTriggerImpl_vTable.dispose := @IExternalTriggerImpl_disposeDispatcher;
12636 IExternalTriggerImpl_vTable.getCharSet := @IExternalTriggerImpl_getCharSetDispatcher;
12637 IExternalTriggerImpl_vTable.execute := @IExternalTriggerImpl_executeDispatcher;
12638
12639 IRoutineMetadataImpl_vTable := RoutineMetadataVTable.create;
12640 IRoutineMetadataImpl_vTable.version := 9;
12641 IRoutineMetadataImpl_vTable.getPackage := @IRoutineMetadataImpl_getPackageDispatcher;
12642 IRoutineMetadataImpl_vTable.getName := @IRoutineMetadataImpl_getNameDispatcher;
12643 IRoutineMetadataImpl_vTable.getEntryPoint := @IRoutineMetadataImpl_getEntryPointDispatcher;
12644 IRoutineMetadataImpl_vTable.getBody := @IRoutineMetadataImpl_getBodyDispatcher;
12645 IRoutineMetadataImpl_vTable.getInputMetadata := @IRoutineMetadataImpl_getInputMetadataDispatcher;
12646 IRoutineMetadataImpl_vTable.getOutputMetadata := @IRoutineMetadataImpl_getOutputMetadataDispatcher;
12647 IRoutineMetadataImpl_vTable.getTriggerMetadata := @IRoutineMetadataImpl_getTriggerMetadataDispatcher;
12648 IRoutineMetadataImpl_vTable.getTriggerTable := @IRoutineMetadataImpl_getTriggerTableDispatcher;
12649 IRoutineMetadataImpl_vTable.getTriggerType := @IRoutineMetadataImpl_getTriggerTypeDispatcher;
12650
12651 IExternalEngineImpl_vTable := ExternalEngineVTable.create;
12652 IExternalEngineImpl_vTable.version := 10;
12653 IExternalEngineImpl_vTable.addRef := @IExternalEngineImpl_addRefDispatcher;
12654 IExternalEngineImpl_vTable.release := @IExternalEngineImpl_releaseDispatcher;
12655 IExternalEngineImpl_vTable.setOwner := @IExternalEngineImpl_setOwnerDispatcher;
12656 IExternalEngineImpl_vTable.getOwner := @IExternalEngineImpl_getOwnerDispatcher;
12657 IExternalEngineImpl_vTable.open := @IExternalEngineImpl_openDispatcher;
12658 IExternalEngineImpl_vTable.openAttachment := @IExternalEngineImpl_openAttachmentDispatcher;
12659 IExternalEngineImpl_vTable.closeAttachment := @IExternalEngineImpl_closeAttachmentDispatcher;
12660 IExternalEngineImpl_vTable.makeFunction := @IExternalEngineImpl_makeFunctionDispatcher;
12661 IExternalEngineImpl_vTable.makeProcedure := @IExternalEngineImpl_makeProcedureDispatcher;
12662 IExternalEngineImpl_vTable.makeTrigger := @IExternalEngineImpl_makeTriggerDispatcher;
12663
12664 ITimerImpl_vTable := TimerVTable.create;
12665 ITimerImpl_vTable.version := 3;
12666 ITimerImpl_vTable.addRef := @ITimerImpl_addRefDispatcher;
12667 ITimerImpl_vTable.release := @ITimerImpl_releaseDispatcher;
12668 ITimerImpl_vTable.handler := @ITimerImpl_handlerDispatcher;
12669
12670 ITimerControlImpl_vTable := TimerControlVTable.create;
12671 ITimerControlImpl_vTable.version := 2;
12672 ITimerControlImpl_vTable.start := @ITimerControlImpl_startDispatcher;
12673 ITimerControlImpl_vTable.stop := @ITimerControlImpl_stopDispatcher;
12674
12675 IVersionCallbackImpl_vTable := VersionCallbackVTable.create;
12676 IVersionCallbackImpl_vTable.version := 1;
12677 IVersionCallbackImpl_vTable.callback := @IVersionCallbackImpl_callbackDispatcher;
12678
12679 IUtilImpl_vTable := UtilVTable.create;
12680 IUtilImpl_vTable.version := 13;
12681 IUtilImpl_vTable.getFbVersion := @IUtilImpl_getFbVersionDispatcher;
12682 IUtilImpl_vTable.loadBlob := @IUtilImpl_loadBlobDispatcher;
12683 IUtilImpl_vTable.dumpBlob := @IUtilImpl_dumpBlobDispatcher;
12684 IUtilImpl_vTable.getPerfCounters := @IUtilImpl_getPerfCountersDispatcher;
12685 IUtilImpl_vTable.executeCreateDatabase := @IUtilImpl_executeCreateDatabaseDispatcher;
12686 IUtilImpl_vTable.decodeDate := @IUtilImpl_decodeDateDispatcher;
12687 IUtilImpl_vTable.decodeTime := @IUtilImpl_decodeTimeDispatcher;
12688 IUtilImpl_vTable.encodeDate := @IUtilImpl_encodeDateDispatcher;
12689 IUtilImpl_vTable.encodeTime := @IUtilImpl_encodeTimeDispatcher;
12690 IUtilImpl_vTable.formatStatus := @IUtilImpl_formatStatusDispatcher;
12691 IUtilImpl_vTable.getClientVersion := @IUtilImpl_getClientVersionDispatcher;
12692 IUtilImpl_vTable.getXpbBuilder := @IUtilImpl_getXpbBuilderDispatcher;
12693 IUtilImpl_vTable.setOffsets := @IUtilImpl_setOffsetsDispatcher;
12694
12695 IOffsetsCallbackImpl_vTable := OffsetsCallbackVTable.create;
12696 IOffsetsCallbackImpl_vTable.version := 1;
12697 IOffsetsCallbackImpl_vTable.setOffset := @IOffsetsCallbackImpl_setOffsetDispatcher;
12698
12699 IXpbBuilderImpl_vTable := XpbBuilderVTable.create;
12700 IXpbBuilderImpl_vTable.version := 21;
12701 IXpbBuilderImpl_vTable.dispose := @IXpbBuilderImpl_disposeDispatcher;
12702 IXpbBuilderImpl_vTable.clear := @IXpbBuilderImpl_clearDispatcher;
12703 IXpbBuilderImpl_vTable.removeCurrent := @IXpbBuilderImpl_removeCurrentDispatcher;
12704 IXpbBuilderImpl_vTable.insertInt := @IXpbBuilderImpl_insertIntDispatcher;
12705 IXpbBuilderImpl_vTable.insertBigInt := @IXpbBuilderImpl_insertBigIntDispatcher;
12706 IXpbBuilderImpl_vTable.insertBytes := @IXpbBuilderImpl_insertBytesDispatcher;
12707 IXpbBuilderImpl_vTable.insertString := @IXpbBuilderImpl_insertStringDispatcher;
12708 IXpbBuilderImpl_vTable.insertTag := @IXpbBuilderImpl_insertTagDispatcher;
12709 IXpbBuilderImpl_vTable.isEof := @IXpbBuilderImpl_isEofDispatcher;
12710 IXpbBuilderImpl_vTable.moveNext := @IXpbBuilderImpl_moveNextDispatcher;
12711 IXpbBuilderImpl_vTable.rewind := @IXpbBuilderImpl_rewindDispatcher;
12712 IXpbBuilderImpl_vTable.findFirst := @IXpbBuilderImpl_findFirstDispatcher;
12713 IXpbBuilderImpl_vTable.findNext := @IXpbBuilderImpl_findNextDispatcher;
12714 IXpbBuilderImpl_vTable.getTag := @IXpbBuilderImpl_getTagDispatcher;
12715 IXpbBuilderImpl_vTable.getLength := @IXpbBuilderImpl_getLengthDispatcher;
12716 IXpbBuilderImpl_vTable.getInt := @IXpbBuilderImpl_getIntDispatcher;
12717 IXpbBuilderImpl_vTable.getBigInt := @IXpbBuilderImpl_getBigIntDispatcher;
12718 IXpbBuilderImpl_vTable.getString := @IXpbBuilderImpl_getStringDispatcher;
12719 IXpbBuilderImpl_vTable.getBytes := @IXpbBuilderImpl_getBytesDispatcher;
12720 IXpbBuilderImpl_vTable.getBufferLength := @IXpbBuilderImpl_getBufferLengthDispatcher;
12721 IXpbBuilderImpl_vTable.getBuffer := @IXpbBuilderImpl_getBufferDispatcher;
12722
12723 ITraceConnectionImpl_vTable := TraceConnectionVTable.create;
12724 ITraceConnectionImpl_vTable.version := 9;
12725 ITraceConnectionImpl_vTable.getKind := @ITraceConnectionImpl_getKindDispatcher;
12726 ITraceConnectionImpl_vTable.getProcessID := @ITraceConnectionImpl_getProcessIDDispatcher;
12727 ITraceConnectionImpl_vTable.getUserName := @ITraceConnectionImpl_getUserNameDispatcher;
12728 ITraceConnectionImpl_vTable.getRoleName := @ITraceConnectionImpl_getRoleNameDispatcher;
12729 ITraceConnectionImpl_vTable.getCharSet := @ITraceConnectionImpl_getCharSetDispatcher;
12730 ITraceConnectionImpl_vTable.getRemoteProtocol := @ITraceConnectionImpl_getRemoteProtocolDispatcher;
12731 ITraceConnectionImpl_vTable.getRemoteAddress := @ITraceConnectionImpl_getRemoteAddressDispatcher;
12732 ITraceConnectionImpl_vTable.getRemoteProcessID := @ITraceConnectionImpl_getRemoteProcessIDDispatcher;
12733 ITraceConnectionImpl_vTable.getRemoteProcessName := @ITraceConnectionImpl_getRemoteProcessNameDispatcher;
12734
12735 ITraceDatabaseConnectionImpl_vTable := TraceDatabaseConnectionVTable.create;
12736 ITraceDatabaseConnectionImpl_vTable.version := 11;
12737 ITraceDatabaseConnectionImpl_vTable.getKind := @ITraceDatabaseConnectionImpl_getKindDispatcher;
12738 ITraceDatabaseConnectionImpl_vTable.getProcessID := @ITraceDatabaseConnectionImpl_getProcessIDDispatcher;
12739 ITraceDatabaseConnectionImpl_vTable.getUserName := @ITraceDatabaseConnectionImpl_getUserNameDispatcher;
12740 ITraceDatabaseConnectionImpl_vTable.getRoleName := @ITraceDatabaseConnectionImpl_getRoleNameDispatcher;
12741 ITraceDatabaseConnectionImpl_vTable.getCharSet := @ITraceDatabaseConnectionImpl_getCharSetDispatcher;
12742 ITraceDatabaseConnectionImpl_vTable.getRemoteProtocol := @ITraceDatabaseConnectionImpl_getRemoteProtocolDispatcher;
12743 ITraceDatabaseConnectionImpl_vTable.getRemoteAddress := @ITraceDatabaseConnectionImpl_getRemoteAddressDispatcher;
12744 ITraceDatabaseConnectionImpl_vTable.getRemoteProcessID := @ITraceDatabaseConnectionImpl_getRemoteProcessIDDispatcher;
12745 ITraceDatabaseConnectionImpl_vTable.getRemoteProcessName := @ITraceDatabaseConnectionImpl_getRemoteProcessNameDispatcher;
12746 ITraceDatabaseConnectionImpl_vTable.getConnectionID := @ITraceDatabaseConnectionImpl_getConnectionIDDispatcher;
12747 ITraceDatabaseConnectionImpl_vTable.getDatabaseName := @ITraceDatabaseConnectionImpl_getDatabaseNameDispatcher;
12748
12749 ITraceTransactionImpl_vTable := TraceTransactionVTable.create;
12750 ITraceTransactionImpl_vTable.version := 5;
12751 ITraceTransactionImpl_vTable.getTransactionID := @ITraceTransactionImpl_getTransactionIDDispatcher;
12752 ITraceTransactionImpl_vTable.getReadOnly := @ITraceTransactionImpl_getReadOnlyDispatcher;
12753 ITraceTransactionImpl_vTable.getWait := @ITraceTransactionImpl_getWaitDispatcher;
12754 ITraceTransactionImpl_vTable.getIsolation := @ITraceTransactionImpl_getIsolationDispatcher;
12755 ITraceTransactionImpl_vTable.getPerf := @ITraceTransactionImpl_getPerfDispatcher;
12756
12757 ITraceParamsImpl_vTable := TraceParamsVTable.create;
12758 ITraceParamsImpl_vTable.version := 2;
12759 ITraceParamsImpl_vTable.getCount := @ITraceParamsImpl_getCountDispatcher;
12760 ITraceParamsImpl_vTable.getParam := @ITraceParamsImpl_getParamDispatcher;
12761
12762 ITraceStatementImpl_vTable := TraceStatementVTable.create;
12763 ITraceStatementImpl_vTable.version := 2;
12764 ITraceStatementImpl_vTable.getStmtID := @ITraceStatementImpl_getStmtIDDispatcher;
12765 ITraceStatementImpl_vTable.getPerf := @ITraceStatementImpl_getPerfDispatcher;
12766
12767 ITraceSQLStatementImpl_vTable := TraceSQLStatementVTable.create;
12768 ITraceSQLStatementImpl_vTable.version := 7;
12769 ITraceSQLStatementImpl_vTable.getStmtID := @ITraceSQLStatementImpl_getStmtIDDispatcher;
12770 ITraceSQLStatementImpl_vTable.getPerf := @ITraceSQLStatementImpl_getPerfDispatcher;
12771 ITraceSQLStatementImpl_vTable.getText := @ITraceSQLStatementImpl_getTextDispatcher;
12772 ITraceSQLStatementImpl_vTable.getPlan := @ITraceSQLStatementImpl_getPlanDispatcher;
12773 ITraceSQLStatementImpl_vTable.getInputs := @ITraceSQLStatementImpl_getInputsDispatcher;
12774 ITraceSQLStatementImpl_vTable.getTextUTF8 := @ITraceSQLStatementImpl_getTextUTF8Dispatcher;
12775 ITraceSQLStatementImpl_vTable.getExplainedPlan := @ITraceSQLStatementImpl_getExplainedPlanDispatcher;
12776
12777 ITraceBLRStatementImpl_vTable := TraceBLRStatementVTable.create;
12778 ITraceBLRStatementImpl_vTable.version := 5;
12779 ITraceBLRStatementImpl_vTable.getStmtID := @ITraceBLRStatementImpl_getStmtIDDispatcher;
12780 ITraceBLRStatementImpl_vTable.getPerf := @ITraceBLRStatementImpl_getPerfDispatcher;
12781 ITraceBLRStatementImpl_vTable.getData := @ITraceBLRStatementImpl_getDataDispatcher;
12782 ITraceBLRStatementImpl_vTable.getDataLength := @ITraceBLRStatementImpl_getDataLengthDispatcher;
12783 ITraceBLRStatementImpl_vTable.getText := @ITraceBLRStatementImpl_getTextDispatcher;
12784
12785 ITraceDYNRequestImpl_vTable := TraceDYNRequestVTable.create;
12786 ITraceDYNRequestImpl_vTable.version := 3;
12787 ITraceDYNRequestImpl_vTable.getData := @ITraceDYNRequestImpl_getDataDispatcher;
12788 ITraceDYNRequestImpl_vTable.getDataLength := @ITraceDYNRequestImpl_getDataLengthDispatcher;
12789 ITraceDYNRequestImpl_vTable.getText := @ITraceDYNRequestImpl_getTextDispatcher;
12790
12791 ITraceContextVariableImpl_vTable := TraceContextVariableVTable.create;
12792 ITraceContextVariableImpl_vTable.version := 3;
12793 ITraceContextVariableImpl_vTable.getNameSpace := @ITraceContextVariableImpl_getNameSpaceDispatcher;
12794 ITraceContextVariableImpl_vTable.getVarName := @ITraceContextVariableImpl_getVarNameDispatcher;
12795 ITraceContextVariableImpl_vTable.getVarValue := @ITraceContextVariableImpl_getVarValueDispatcher;
12796
12797 ITraceProcedureImpl_vTable := TraceProcedureVTable.create;
12798 ITraceProcedureImpl_vTable.version := 3;
12799 ITraceProcedureImpl_vTable.getProcName := @ITraceProcedureImpl_getProcNameDispatcher;
12800 ITraceProcedureImpl_vTable.getInputs := @ITraceProcedureImpl_getInputsDispatcher;
12801 ITraceProcedureImpl_vTable.getPerf := @ITraceProcedureImpl_getPerfDispatcher;
12802
12803 ITraceFunctionImpl_vTable := TraceFunctionVTable.create;
12804 ITraceFunctionImpl_vTable.version := 4;
12805 ITraceFunctionImpl_vTable.getFuncName := @ITraceFunctionImpl_getFuncNameDispatcher;
12806 ITraceFunctionImpl_vTable.getInputs := @ITraceFunctionImpl_getInputsDispatcher;
12807 ITraceFunctionImpl_vTable.getResult := @ITraceFunctionImpl_getResultDispatcher;
12808 ITraceFunctionImpl_vTable.getPerf := @ITraceFunctionImpl_getPerfDispatcher;
12809
12810 ITraceTriggerImpl_vTable := TraceTriggerVTable.create;
12811 ITraceTriggerImpl_vTable.version := 5;
12812 ITraceTriggerImpl_vTable.getTriggerName := @ITraceTriggerImpl_getTriggerNameDispatcher;
12813 ITraceTriggerImpl_vTable.getRelationName := @ITraceTriggerImpl_getRelationNameDispatcher;
12814 ITraceTriggerImpl_vTable.getAction := @ITraceTriggerImpl_getActionDispatcher;
12815 ITraceTriggerImpl_vTable.getWhich := @ITraceTriggerImpl_getWhichDispatcher;
12816 ITraceTriggerImpl_vTable.getPerf := @ITraceTriggerImpl_getPerfDispatcher;
12817
12818 ITraceServiceConnectionImpl_vTable := TraceServiceConnectionVTable.create;
12819 ITraceServiceConnectionImpl_vTable.version := 12;
12820 ITraceServiceConnectionImpl_vTable.getKind := @ITraceServiceConnectionImpl_getKindDispatcher;
12821 ITraceServiceConnectionImpl_vTable.getProcessID := @ITraceServiceConnectionImpl_getProcessIDDispatcher;
12822 ITraceServiceConnectionImpl_vTable.getUserName := @ITraceServiceConnectionImpl_getUserNameDispatcher;
12823 ITraceServiceConnectionImpl_vTable.getRoleName := @ITraceServiceConnectionImpl_getRoleNameDispatcher;
12824 ITraceServiceConnectionImpl_vTable.getCharSet := @ITraceServiceConnectionImpl_getCharSetDispatcher;
12825 ITraceServiceConnectionImpl_vTable.getRemoteProtocol := @ITraceServiceConnectionImpl_getRemoteProtocolDispatcher;
12826 ITraceServiceConnectionImpl_vTable.getRemoteAddress := @ITraceServiceConnectionImpl_getRemoteAddressDispatcher;
12827 ITraceServiceConnectionImpl_vTable.getRemoteProcessID := @ITraceServiceConnectionImpl_getRemoteProcessIDDispatcher;
12828 ITraceServiceConnectionImpl_vTable.getRemoteProcessName := @ITraceServiceConnectionImpl_getRemoteProcessNameDispatcher;
12829 ITraceServiceConnectionImpl_vTable.getServiceID := @ITraceServiceConnectionImpl_getServiceIDDispatcher;
12830 ITraceServiceConnectionImpl_vTable.getServiceMgr := @ITraceServiceConnectionImpl_getServiceMgrDispatcher;
12831 ITraceServiceConnectionImpl_vTable.getServiceName := @ITraceServiceConnectionImpl_getServiceNameDispatcher;
12832
12833 ITraceStatusVectorImpl_vTable := TraceStatusVectorVTable.create;
12834 ITraceStatusVectorImpl_vTable.version := 4;
12835 ITraceStatusVectorImpl_vTable.hasError := @ITraceStatusVectorImpl_hasErrorDispatcher;
12836 ITraceStatusVectorImpl_vTable.hasWarning := @ITraceStatusVectorImpl_hasWarningDispatcher;
12837 ITraceStatusVectorImpl_vTable.getStatus := @ITraceStatusVectorImpl_getStatusDispatcher;
12838 ITraceStatusVectorImpl_vTable.getText := @ITraceStatusVectorImpl_getTextDispatcher;
12839
12840 ITraceSweepInfoImpl_vTable := TraceSweepInfoVTable.create;
12841 ITraceSweepInfoImpl_vTable.version := 5;
12842 ITraceSweepInfoImpl_vTable.getOIT := @ITraceSweepInfoImpl_getOITDispatcher;
12843 ITraceSweepInfoImpl_vTable.getOST := @ITraceSweepInfoImpl_getOSTDispatcher;
12844 ITraceSweepInfoImpl_vTable.getOAT := @ITraceSweepInfoImpl_getOATDispatcher;
12845 ITraceSweepInfoImpl_vTable.getNext := @ITraceSweepInfoImpl_getNextDispatcher;
12846 ITraceSweepInfoImpl_vTable.getPerf := @ITraceSweepInfoImpl_getPerfDispatcher;
12847
12848 ITraceLogWriterImpl_vTable := TraceLogWriterVTable.create;
12849 ITraceLogWriterImpl_vTable.version := 3;
12850 ITraceLogWriterImpl_vTable.addRef := @ITraceLogWriterImpl_addRefDispatcher;
12851 ITraceLogWriterImpl_vTable.release := @ITraceLogWriterImpl_releaseDispatcher;
12852 ITraceLogWriterImpl_vTable.write := @ITraceLogWriterImpl_writeDispatcher;
12853
12854 ITraceInitInfoImpl_vTable := TraceInitInfoVTable.create;
12855 ITraceInitInfoImpl_vTable.version := 7;
12856 ITraceInitInfoImpl_vTable.getConfigText := @ITraceInitInfoImpl_getConfigTextDispatcher;
12857 ITraceInitInfoImpl_vTable.getTraceSessionID := @ITraceInitInfoImpl_getTraceSessionIDDispatcher;
12858 ITraceInitInfoImpl_vTable.getTraceSessionName := @ITraceInitInfoImpl_getTraceSessionNameDispatcher;
12859 ITraceInitInfoImpl_vTable.getFirebirdRootDirectory := @ITraceInitInfoImpl_getFirebirdRootDirectoryDispatcher;
12860 ITraceInitInfoImpl_vTable.getDatabaseName := @ITraceInitInfoImpl_getDatabaseNameDispatcher;
12861 ITraceInitInfoImpl_vTable.getConnection := @ITraceInitInfoImpl_getConnectionDispatcher;
12862 ITraceInitInfoImpl_vTable.getLogWriter := @ITraceInitInfoImpl_getLogWriterDispatcher;
12863
12864 ITracePluginImpl_vTable := TracePluginVTable.create;
12865 ITracePluginImpl_vTable.version := 23;
12866 ITracePluginImpl_vTable.addRef := @ITracePluginImpl_addRefDispatcher;
12867 ITracePluginImpl_vTable.release := @ITracePluginImpl_releaseDispatcher;
12868 ITracePluginImpl_vTable.trace_get_error := @ITracePluginImpl_trace_get_errorDispatcher;
12869 ITracePluginImpl_vTable.trace_attach := @ITracePluginImpl_trace_attachDispatcher;
12870 ITracePluginImpl_vTable.trace_detach := @ITracePluginImpl_trace_detachDispatcher;
12871 ITracePluginImpl_vTable.trace_transaction_start := @ITracePluginImpl_trace_transaction_startDispatcher;
12872 ITracePluginImpl_vTable.trace_transaction_end := @ITracePluginImpl_trace_transaction_endDispatcher;
12873 ITracePluginImpl_vTable.trace_proc_execute := @ITracePluginImpl_trace_proc_executeDispatcher;
12874 ITracePluginImpl_vTable.trace_trigger_execute := @ITracePluginImpl_trace_trigger_executeDispatcher;
12875 ITracePluginImpl_vTable.trace_set_context := @ITracePluginImpl_trace_set_contextDispatcher;
12876 ITracePluginImpl_vTable.trace_dsql_prepare := @ITracePluginImpl_trace_dsql_prepareDispatcher;
12877 ITracePluginImpl_vTable.trace_dsql_free := @ITracePluginImpl_trace_dsql_freeDispatcher;
12878 ITracePluginImpl_vTable.trace_dsql_execute := @ITracePluginImpl_trace_dsql_executeDispatcher;
12879 ITracePluginImpl_vTable.trace_blr_compile := @ITracePluginImpl_trace_blr_compileDispatcher;
12880 ITracePluginImpl_vTable.trace_blr_execute := @ITracePluginImpl_trace_blr_executeDispatcher;
12881 ITracePluginImpl_vTable.trace_dyn_execute := @ITracePluginImpl_trace_dyn_executeDispatcher;
12882 ITracePluginImpl_vTable.trace_service_attach := @ITracePluginImpl_trace_service_attachDispatcher;
12883 ITracePluginImpl_vTable.trace_service_start := @ITracePluginImpl_trace_service_startDispatcher;
12884 ITracePluginImpl_vTable.trace_service_query := @ITracePluginImpl_trace_service_queryDispatcher;
12885 ITracePluginImpl_vTable.trace_service_detach := @ITracePluginImpl_trace_service_detachDispatcher;
12886 ITracePluginImpl_vTable.trace_event_error := @ITracePluginImpl_trace_event_errorDispatcher;
12887 ITracePluginImpl_vTable.trace_event_sweep := @ITracePluginImpl_trace_event_sweepDispatcher;
12888 ITracePluginImpl_vTable.trace_func_execute := @ITracePluginImpl_trace_func_executeDispatcher;
12889
12890 ITraceFactoryImpl_vTable := TraceFactoryVTable.create;
12891 ITraceFactoryImpl_vTable.version := 6;
12892 ITraceFactoryImpl_vTable.addRef := @ITraceFactoryImpl_addRefDispatcher;
12893 ITraceFactoryImpl_vTable.release := @ITraceFactoryImpl_releaseDispatcher;
12894 ITraceFactoryImpl_vTable.setOwner := @ITraceFactoryImpl_setOwnerDispatcher;
12895 ITraceFactoryImpl_vTable.getOwner := @ITraceFactoryImpl_getOwnerDispatcher;
12896 ITraceFactoryImpl_vTable.trace_needs := @ITraceFactoryImpl_trace_needsDispatcher;
12897 ITraceFactoryImpl_vTable.trace_create := @ITraceFactoryImpl_trace_createDispatcher;
12898
12899 IUdrFunctionFactoryImpl_vTable := UdrFunctionFactoryVTable.create;
12900 IUdrFunctionFactoryImpl_vTable.version := 3;
12901 IUdrFunctionFactoryImpl_vTable.dispose := @IUdrFunctionFactoryImpl_disposeDispatcher;
12902 IUdrFunctionFactoryImpl_vTable.setup := @IUdrFunctionFactoryImpl_setupDispatcher;
12903 IUdrFunctionFactoryImpl_vTable.newItem := @IUdrFunctionFactoryImpl_newItemDispatcher;
12904
12905 IUdrProcedureFactoryImpl_vTable := UdrProcedureFactoryVTable.create;
12906 IUdrProcedureFactoryImpl_vTable.version := 3;
12907 IUdrProcedureFactoryImpl_vTable.dispose := @IUdrProcedureFactoryImpl_disposeDispatcher;
12908 IUdrProcedureFactoryImpl_vTable.setup := @IUdrProcedureFactoryImpl_setupDispatcher;
12909 IUdrProcedureFactoryImpl_vTable.newItem := @IUdrProcedureFactoryImpl_newItemDispatcher;
12910
12911 IUdrTriggerFactoryImpl_vTable := UdrTriggerFactoryVTable.create;
12912 IUdrTriggerFactoryImpl_vTable.version := 3;
12913 IUdrTriggerFactoryImpl_vTable.dispose := @IUdrTriggerFactoryImpl_disposeDispatcher;
12914 IUdrTriggerFactoryImpl_vTable.setup := @IUdrTriggerFactoryImpl_setupDispatcher;
12915 IUdrTriggerFactoryImpl_vTable.newItem := @IUdrTriggerFactoryImpl_newItemDispatcher;
12916
12917 IUdrPluginImpl_vTable := UdrPluginVTable.create;
12918 IUdrPluginImpl_vTable.version := 4;
12919 IUdrPluginImpl_vTable.getMaster := @IUdrPluginImpl_getMasterDispatcher;
12920 IUdrPluginImpl_vTable.registerFunction := @IUdrPluginImpl_registerFunctionDispatcher;
12921 IUdrPluginImpl_vTable.registerProcedure := @IUdrPluginImpl_registerProcedureDispatcher;
12922 IUdrPluginImpl_vTable.registerTrigger := @IUdrPluginImpl_registerTriggerDispatcher;
12923
12924 finalization
12925 IVersionedImpl_vTable.destroy;
12926 IReferenceCountedImpl_vTable.destroy;
12927 IDisposableImpl_vTable.destroy;
12928 IStatusImpl_vTable.destroy;
12929 IMasterImpl_vTable.destroy;
12930 IPluginBaseImpl_vTable.destroy;
12931 IPluginSetImpl_vTable.destroy;
12932 IConfigEntryImpl_vTable.destroy;
12933 IConfigImpl_vTable.destroy;
12934 IFirebirdConfImpl_vTable.destroy;
12935 IPluginConfigImpl_vTable.destroy;
12936 IPluginFactoryImpl_vTable.destroy;
12937 IPluginModuleImpl_vTable.destroy;
12938 IPluginManagerImpl_vTable.destroy;
12939 ICryptKeyImpl_vTable.destroy;
12940 IConfigManagerImpl_vTable.destroy;
12941 IEventCallbackImpl_vTable.destroy;
12942 IBlobImpl_vTable.destroy;
12943 ITransactionImpl_vTable.destroy;
12944 IMessageMetadataImpl_vTable.destroy;
12945 IMetadataBuilderImpl_vTable.destroy;
12946 IResultSetImpl_vTable.destroy;
12947 IStatementImpl_vTable.destroy;
12948 IRequestImpl_vTable.destroy;
12949 IEventsImpl_vTable.destroy;
12950 IAttachmentImpl_vTable.destroy;
12951 IServiceImpl_vTable.destroy;
12952 IProviderImpl_vTable.destroy;
12953 IDtcStartImpl_vTable.destroy;
12954 IDtcImpl_vTable.destroy;
12955 IAuthImpl_vTable.destroy;
12956 IWriterImpl_vTable.destroy;
12957 IServerBlockImpl_vTable.destroy;
12958 IClientBlockImpl_vTable.destroy;
12959 IServerImpl_vTable.destroy;
12960 IClientImpl_vTable.destroy;
12961 IUserFieldImpl_vTable.destroy;
12962 ICharUserFieldImpl_vTable.destroy;
12963 IIntUserFieldImpl_vTable.destroy;
12964 IUserImpl_vTable.destroy;
12965 IListUsersImpl_vTable.destroy;
12966 ILogonInfoImpl_vTable.destroy;
12967 IManagementImpl_vTable.destroy;
12968 IWireCryptPluginImpl_vTable.destroy;
12969 ICryptKeyCallbackImpl_vTable.destroy;
12970 IKeyHolderPluginImpl_vTable.destroy;
12971 IDbCryptPluginImpl_vTable.destroy;
12972 IExternalContextImpl_vTable.destroy;
12973 IExternalResultSetImpl_vTable.destroy;
12974 IExternalFunctionImpl_vTable.destroy;
12975 IExternalProcedureImpl_vTable.destroy;
12976 IExternalTriggerImpl_vTable.destroy;
12977 IRoutineMetadataImpl_vTable.destroy;
12978 IExternalEngineImpl_vTable.destroy;
12979 ITimerImpl_vTable.destroy;
12980 ITimerControlImpl_vTable.destroy;
12981 IVersionCallbackImpl_vTable.destroy;
12982 IUtilImpl_vTable.destroy;
12983 IOffsetsCallbackImpl_vTable.destroy;
12984 IXpbBuilderImpl_vTable.destroy;
12985 ITraceConnectionImpl_vTable.destroy;
12986 ITraceDatabaseConnectionImpl_vTable.destroy;
12987 ITraceTransactionImpl_vTable.destroy;
12988 ITraceParamsImpl_vTable.destroy;
12989 ITraceStatementImpl_vTable.destroy;
12990 ITraceSQLStatementImpl_vTable.destroy;
12991 ITraceBLRStatementImpl_vTable.destroy;
12992 ITraceDYNRequestImpl_vTable.destroy;
12993 ITraceContextVariableImpl_vTable.destroy;
12994 ITraceProcedureImpl_vTable.destroy;
12995 ITraceFunctionImpl_vTable.destroy;
12996 ITraceTriggerImpl_vTable.destroy;
12997 ITraceServiceConnectionImpl_vTable.destroy;
12998 ITraceStatusVectorImpl_vTable.destroy;
12999 ITraceSweepInfoImpl_vTable.destroy;
13000 ITraceLogWriterImpl_vTable.destroy;
13001 ITraceInitInfoImpl_vTable.destroy;
13002 ITracePluginImpl_vTable.destroy;
13003 ITraceFactoryImpl_vTable.destroy;
13004 IUdrFunctionFactoryImpl_vTable.destroy;
13005 IUdrProcedureFactoryImpl_vTable.destroy;
13006 IUdrTriggerFactoryImpl_vTable.destroy;
13007 IUdrPluginImpl_vTable.destroy;
13008
13009 end.