BazisLib::Linux Namespace Reference

Contains classes that provide Linux kernel module support. More...


Classes

class  AtomicInt
class  BasicBlockDevice
class  BasicCharacterDevice
class  UniversalVolume
class  Device
class  Driver
class  File
class  IntermediateBuffer
class  KernelThread
class  Mutex
class  SpinLock
class  Event
class  Semaphore
class  BasicTextDevice
class  UsbBulkDoublePipe
 A pipe based on a pair of BULK endpoints. More...
class  UsbInterface
class  BasicUsbCharacterDevice
class  IUsbDevice
class  UsbDriver
class  UserBuffer

Enumerations

enum  { USB_CHAR_MINOR_COUNT = 32 }

Functions

void __compat_spin_lock_init (spinlock_t *pSpinLock)


Detailed Description

Contains classes that provide Linux kernel module support.

This namespace provides several classes that simplify Linux driver development. See the bulkusb sample in SAMPLES\LINUX for usage example.

If you want to use a 16-bit wchar_t type in your cross-platform driver, consider using the wchar16_t typedef instead. Note that the default wchar_t on Linux systems is 32-bit long.

The Linux framework supports the following synchronization object types:

Enable the IMPLEMENT_BZSCMN_INTERFACES macro to make the synchronization objects inherit the corresponding BazisCmn interfaces. It may slow down your driver (by introducing vtables for that clases), but it can be needed for some complex cross-platform cases. By default, this macro is not defined and automatic locking/unlocking is implemented using templates. See FastLocker and FastUnlocker documentation.


Enumeration Type Documentation

anonymous enum

Enumerator:
USB_CHAR_MINOR_COUNT 


Function Documentation

void BazisLib::Linux::__compat_spin_lock_init ( spinlock_t *  pSpinLock  ) 

SourceForge.net Logo