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: 45
Committed: Tue Dec 6 10:33:46 2016 UTC (7 years, 4 months ago) by tony
Content type: text/x-pascal
File size: 500911 byte(s)
Log Message:
Committing updates for Release R2-0-0

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