TkdCustomCard
and TkdResource
.Name | Description |
---|---|
Class TkdCustomCard | Class TkdCustomCard models hardware device. Whereas descendants of TkdResource class model different hardware resources separately (such as: memory and port ranges, registers, interrupts and other), TkdCustomCard models hardware device (or card) on the whole. This class includes members for making up the device abstraction (henceforth, model) by attaching and detaching essential resources mentioned above, loading and unloading the GDD, registering and unregistering the device model (the prototype of user-mode device driver) in the system. An original and very powerful feature is that this component and its CardItems property are equipped with a specific editor - tool whose name is CardBuilder. Right at design time CardBuilder, like a wizard, helps you to produce the definition of device model and the diagnostics of corresponding hardware. TkdCustomCard is the ultimate class for hardware devices, it does not support inheritance. Although TkdCustomCard class has dozens of methods and properties, relevant members are documented only. Refer to the outside documentation about how to use CardBuilder. |
Class TkdResource | Resource class TkdResource is the ultimate ancestor for all components modelling hardware resources in KylixDriver Application Library. The class provides no specific members for actual hardware access, rather it represents a detailed framework that allows its descendants to equally establish their working sessions with the GDD and to have the opportunities to be plainly registered in the system. Although TkdResource class has dozens of methods and properties, relevant members are documented only. |
TkdCommonRegisteredParametersStruct = record ResourceUniqueId: LongWord; ResourceId: LongWord; case LongWord of 0: (RangeStruct: TkdRangeStruct); 1: (InterruptStruct: TkdInterruptStruct); 2: (RegisterStruct: TkdHWRangeRegisterStruct); 3: (UsbDeviceStruct: TkdUSBDeviceStruct); 4: (PCIConfigStruct: TkdPCIConfigStruct); 5: (DMABufferStruct: TkdDMABufferStruct); end |
TkdCustomCardSleepOptions = set of TkdCustomCardSleepOption |
TkdDirectMemoryRangePart = record StartPageAddr: LongWord; MapLength: LongWord; MemProt: LongWord; MapType: LongWord; UserDirectAddr: LongWord; end |
TkdDMABufferStruct = record PCIConfigId: LongWord; end |
TkdHWRangePart = record RangeShared: LongWord; MapType: LongWord; case LongWord of 0: (MemoryRangePart: TkdMemoryRangePart); end |
TkdHWRangeRegisterStruct = record AutoRead: LongWord; RangeID: LongWord; Offset: LongWord; Size: LongWord; UseMode: LongWord; MapType: LongWord; end |
TkdInterruptStruct = record AutoRequest: LongWord; IntNumber: LongWord; IntShared: LongWord; IntType: LongWord; HandlerType: LongWord; FeedbackData: Pointer; FeedbackItems: LongWord; UseIntAck: LongWord; UseIntHandler: LongWord; IntDataStorage: Pointer; SharedMemory: LongWord; end |
TkdMemoryRangePart = record TransAddr: LongWord; end |
TkdPCIConfigStruct = record DeviceId: LongWord; VendorId: LongWord; Bus : LongWord; Slot : LongWord; Func : LongWord; RealBus : LongWord; RealSlot: LongWord; RealFunc: LongWord; end |
TkdRangeStruct = record RangeFrom: LongWord; RangeTo: LongWord; case LongWord of 0: (HWRangePart: TkdHWRangePart); 1: (DirectRangePart: TkdDirectMemoryRangePart); end |
TkdUsbDeviceStruct = record ProductId: LongWord; VendorId: LongWord; end |
TkdCommonRegisteredParametersStruct = record ResourceUniqueId: LongWord; case LongWord of 0: (RangeStruct: TkdRangeStruct); 1: (InterruptStruct: TkdInterruptStruct); 2: (RegisterStruct: TkdHWRangeRegisterStruct); 3: (UsbDeviceStruct: TkdUSBDeviceStruct); 4: (PCIConfigStruct: TkdPCIConfigStruct); 5: (DMABufferStruct: TkdDMABufferStruct); end;
TkdCustomCardSleepOptions = set of TkdCustomCardSleepOption |
TkdCustomCardSleepOptions = set of TkdCustomCardSleepOption;
TkdDirectMemoryRangePart = record StartPageAddr: LongWord; MapLength: LongWord; MemProt: LongWord; MapType: LongWord; UserDirectAddr: LongWord; end |
TkdDirectMemoryRangePart = record StartPageAddr: LongWord; MapLength: LongWord; MemProt: LongWord; MapType: LongWord; UserDirectAddr: LongWord; end;
TkdDMABufferStruct = record PCIConfigId: LongWord; end |
TkdDMABufferStruct = record PCIConfigId: LongWord; end;
TkdHWRangePart = record RangeShared: LongWord; MapType: LongWord; case LongWord of 0: (MemoryRangePart: TkdMemoryRangePart); end |
TkdHWRangePart = record RangeShared: LongWord; MapType: LongWord; case LongWord of 0: (MemoryRangePart: TkdMemoryRangePart); end;
TkdHWRangeRegisterStruct = record AutoRead: LongWord; RangeID: LongWord; Offset: LongWord; Size: LongWord; UseMode: LongWord; MapType: LongWord; end |
TkdHWRangeRegisterStruct = record AutoRead: LongWord; RangeID: LongWord; Offset: LongWord; Size: LongWord; UseMode: LongWord; MapType: LongWord; end;
TkdInterruptStruct = record AutoRequest: LongWord; IntNumber: LongWord; IntShared: LongWord; IntType: LongWord; HandlerType: LongWord; FeedbackData: Pointer; FeedbackItems: LongWord; UseIntAck: LongWord; UseIntHandler: LongWord; IntDataStorage: Pointer; SharedMemory: LongWord; end;
TkdMemoryRangePart = record TransAddr: LongWord; end |
TkdMemoryRangePart = record TransAddr: LongWord; end;
TkdPCIConfigStruct = record DeviceId: LongWord; VendorId: LongWord; Bus : LongWord; Slot : LongWord; Func : LongWord; RealBus : LongWord; RealSlot: LongWord; RealFunc: LongWord; end |
TkdPCIConfigStruct = record DeviceId: LongWord; VendorId: LongWord; Bus : LongWord; Slot : LongWord; Func : LongWord; RealBus : LongWord; RealSlot: LongWord; RealFunc: LongWord; end;
TkdRangeStruct = record RangeFrom: LongWord; RangeTo: LongWord; case LongWord of 0: (HWRangePart: TkdHWRangePart); 1: (DirectRangePart: TkdDirectMemoryRangePart); end |
TkdRangeStruct = record RangeFrom: LongWord; RangeTo: LongWord; case LongWord of 0: (HWRangePart: TkdHWRangePart); 1: (DirectRangePart: TkdDirectMemoryRangePart); end;
TkdUsbDeviceStruct = record ProductId: LongWord; VendorId: LongWord; end |
TkdUsbDeviceStruct = record ProductId: LongWord; VendorId: LongWord; end;
TkdCustomCardCardType | ||
TkdHWRangeRegisterUseMode = (umRead, umWrite, umTotal); | ||
ctCustomCard | ||
ctParallelPort | ||
ctPCICard |
TkdCustomCardSleepOption | ||
TkdCustomCardSleepOption = (soNON_BUSY_SLEEP); | ||
soNON_BUSY_SLEEP |
ETSoft Tenzor.Net (etsoft@tenzor.net)
01 May 2004
05 February 2005