| Reference Manual - 1.4.13
DirectFB Reference | API Overview

### Interfaces

IDirectFB | Main interface of DirectFB, created by DirectFBCreate().
IDirectFBSurface | Interface to a surface object, being a graphics context for rendering and state control, buffer operations, palette access and sub area translate'n'clip logic.
IDirectFBPalette | Interface for read/write access to the colors of a palette object and for cloning it.
IDirectFBInputDevice | Input device interface for keymap access, event buffers and state queries.
IDirectFBDisplayLayer | Layer interface for configuration, window stack usage or direct surface access, with shared/exclusive context.
IDirectFBWindow | Interface to a window object, controlling appearance and focus, positioning and stacking, event buffers and surface access.
IDirectFBEventBuffer | Interface to a local event buffer to send/receive events, wait for events, abort waiting or reset buffer.
IDirectFBFont | Font interface for getting metrics, measuring strings or single characters, query/choose encodings.
IDirectFBImageProvider | Interface to an image provider, retrieving information about the image and rendering it to a surface.
IDirectFBVideoProvider | Interface to a video provider for playback with advanced control and basic stream information.
IDirectFBDataBuffer | Data buffer interface, providing unified access to different kinds of data storage and live feed.
IDirectFBScreen | Interface to different display outputs, encoders, connector settings, power management and synchronization.
IDirectFBGL | OpenGL context of a surface.

### Function Types

DFBDisplayLayerCallback | Called for each existing display layer. "layer_id" can be used to get an interface to the layer.
DFBGetDataCallback | Called for each block of continous data requested, e.g. by a Video Provider. Write as many data as you can but not more than specified by length. Return the number of bytes written or 'EOF' if no data is available anymore.
DFBInputDeviceCallback | Called for each existing input device. "device_id" can be used to get an interface to the device.
DFBScreenCallback | Called for each existing screen. "screen_id" can be used to get an interface to the screen.
DFBTextEncodingCallback | Called for each provided text encoding.
DFBVideoModeCallback | Called for each supported video mode.

### Enumerated Types

DFBAccelerationMask | Mask of accelerated functions.
DFBBoolean | A boolean.
DFBColorAdjustmentFlags | Flags defining which fields of a DFBColorAdjustment are valid.
DFBCooperativeLevel | The cooperative level controls the super interface's behaviour in functions like SetVideoMode or CreateSurface for the primary.
DFBDataBufferDescriptionFlags | Flags defining which fields of a DFBDataBufferDescription are valid.
DFBDisplayLayerBackgroundMode | Background mode defining how to erase/initialize the area for a windowstack repaint
DFBDisplayLayerBufferMode | Layer Buffer Mode.
DFBDisplayLayerCapabilities | Capabilities of a display layer.
DFBDisplayLayerConfigFlags | Layer configuration flags
DFBDisplayLayerCooperativeLevel | Cooperative level handling the access permissions.
DFBDisplayLayerOptions | Used to enable some capabilities like flicker filtering or colorkeying.
DFBDisplayLayerSourceCaps | Capabilities of a display layer source.
DFBDisplayLayerTypeFlags | Type of display layer for basic classification. Values may be or'ed together.
DFBEnumerationResult | Return value of callback function of enumerations.
DFBEventClass | Event class.
DFBFontAttributes | Flags describing how to load a font.
DFBFontDescriptionFlags | Flags defining which fields of a DFBFontDescription are valid.
DFBImageCapabilities | Capabilities of an image.
DFBInputDeviceAxisIdentifier | Axis identifier (index) for e.g. mouse or joystick.
DFBInputDeviceAxisInfoFlags |
DFBInputDeviceButtonIdentifier | Identifier (index) for e.g. mouse or joystick buttons.
DFBInputDeviceButtonMask | Flags specifying which buttons are currently down.
DFBInputDeviceButtonState | Specifies whether a button is currently pressed.
DFBInputDeviceCapabilities | Basic input device features.
DFBInputDeviceKeyIdentifier | DirectFB key identifiers (for basic mapping)
DFBInputDeviceKeyState | Specifies whether a key is currently down.
DFBInputDeviceKeySymbol | DirectFB key symbols (for advanced mapping)
DFBInputDeviceKeyType | DirectFB key types (for advanced mapping)
DFBInputDeviceKeymapSymbolIndex | Groups and levels as an index to the symbol array.
DFBInputDeviceLockState | Flags specifying the key locks that are currently active.
DFBInputDeviceModifierKeyIdentifier | DirectFB modifier key identifiers (for advanced mapping)
DFBInputDeviceModifierMask | Flags specifying which modifiers are currently pressed.
DFBInputDeviceTypeFlags | Type of input device for basic classification. Values may be or'ed together.
DFBInputEventFlags | Flags defining which additional (optional) event fields are valid.
DFBInputEventType | The type of an input event.
DFBPaletteCapabilities | The palette capabilities.
DFBPaletteDescriptionFlags | Flags defining which fields of a DFBPaletteDescription are valid.
DFBResult | Return code of all interface methods and most functions
DFBScreenCapabilities | Capabilities of a screen.
DFBScreenEncoderCapabilities | Capabilities of a display encoder.
DFBScreenEncoderConfigFlags | Flags for display encoder configuration.
DFBScreenEncoderFrequency | Frequency of output signal.
DFBScreenEncoderScanMode | Scan modes.
DFBScreenEncoderTVStandards | TV standards.
DFBScreenEncoderTestPicture | Test picture mode.
DFBScreenEncoderType | Type of display encoder.
DFBScreenMixerCapabilities | Capabilities of a mixer.
DFBScreenMixerConfigFlags | Flags for mixer configuration.
DFBScreenMixerTree | (Sub) tree selection.
DFBScreenOutputCapabilities | Capabilities of an output.
DFBScreenOutputConfigFlags | Flags for screen output configuration.
DFBScreenOutputConnectors | Type of output connector.
DFBScreenOutputResolution |
DFBScreenOutputSignals | Type of output signal.
DFBScreenOutputSlowBlankingSignals | Type of slow blanking signalling.
DFBScreenPowerMode | Screen Power Mode.
DFBStreamCapabilities | Capabilities of an audio/video stream.
DFBStreamFormat | Type of an audio stream.
DFBSurfaceBlendFunction | Blend functions to use for source and destination blending
DFBSurfaceBlittingFlags | Flags controlling blitting commands.
DFBSurfaceCapabilities | The surface capabilities.
DFBSurfaceDescriptionFlags | Flags defining which fields of a DFBSurfaceDescription are valid.
DFBSurfaceDrawingFlags | Flags controlling drawing commands.
DFBSurfaceFlipFlags | Flipping flags controlling the behaviour of IDirectFBSurface::Flip().
DFBSurfaceHintFlags | Hint flags for optimized allocation, format selection etc.
DFBSurfaceLockFlags | Flags defining the type of data access. These are important for surface swapping management.
DFBSurfaceMaskFlags | Flags controlling surface masks set via IDirectFBSurface::SetSourceMask().
DFBSurfacePixelFormat | Pixel format of a surface.
DFBSurfacePorterDuffRule | Available Porter/Duff rules.
DFBSurfaceRenderOptions | Options for drawing and blitting operations. Not mandatory for acceleration.
DFBSurfaceTextFlags | Flags controlling the text layout.
DFBTriangleFormation | Way of building triangles from the list of vertices.
DFBVideoProviderAudioUnits | Flags to allow Audio Unit selection.
DFBVideoProviderCapabilities | Information about an IDirectFBVideoProvider.
DFBVideoProviderEventDataSubType | Video Provider Event Types - can also be used as flags for event filters.
DFBVideoProviderEventType | Video Provider Event Types - can also be used as flags for event filters.
DFBVideoProviderPlaybackFlags | Flags controlling playback mode of a IDirectFBVideoProvider.
DFBVideoProviderStatus | Information about the status of an IDirectFBVideoProvider.
DFBWindowCapabilities | Capabilities a window can have.
DFBWindowCursorFlags |
DFBWindowDescriptionFlags | Flags defining which fields of a DFBWindowDescription are valid.
DFBWindowEventFlags | Flags for a window event.
DFBWindowEventType | Window Event Types - can also be used as flags for event filters.
DFBWindowGeometryMode |
DFBWindowKeySelection | The key selection defines a mode for filtering keys while the window is having the focus.
DFBWindowOptions | Flags controlling the appearance and behaviour of the window.
DFBWindowStackingClass | The stacking class restricts the stacking order of windows.
DIRenderCallbackResult |

### Structured Types

DFBBufferOccupancy | Buffer levels and occupancy for Audio/Video input buffers.
DFBBufferThresholds | Buffer thresholds for Audio and Video.
DFBColor | A color defined by channels with 8bit each.
DFBColorAdjustment | Color Adjustment used to adjust video colors.
DFBColorKey | A color key defined by R,G,B and eventually a color index.
DFBColorYUV | A color defined by channels with 8bit each.
DFBDataBufferDescription | Description of a data buffer that is to be created.
DFBDimension | A dimension specified by width and height.
DFBDisplayLayerConfig | Layer configuration
DFBDisplayLayerDescription | Description of the display layer capabilities.
DFBDisplayLayerSourceDescription | Description of a display layer source.
DFBEvent | General container for a DirectFB Event.
DFBEventBufferStats | Statistics about event buffer queue.
DFBFontDescription | Description of how to load glyphs from a font file.
DFBGLAttributes | Attributes of an OpenGL context.
DFBGraphicsDeviceDescription | Description of the graphics device capabilities.
DFBGraphicsDriverInfo |
DFBImageDescription | Information about an image including capabilities and values belonging to available capabilities.
DFBInputDeviceAxisInfo |
DFBInputDeviceDescription | Description of the input device capabilities.
DFBInputDeviceKeymapEntry | One entry in the keymap of an input device.
DFBInputEvent | An input event, item of an input buffer.
DFBInsets | Insets specify a distance from each edge of a rectangle.
DFBLocation | A rectangle specified by normalized coordinates.
DFBPaletteDescription | Description of the palette that is to be created.
DFBPoint | A point specified by x/y coordinates.
DFBRectangle | A rectangle specified by a point and a dimension.
DFBRegion | A region specified by two points.
DFBScreenDescription | Description of the display encoder capabilities.
DFBScreenEncoderConfig | Configuration of a display encoder.
DFBScreenEncoderDescription | Description of a display encoder.
DFBScreenMixerConfig | Configuration of a mixer.
DFBScreenMixerDescription | Description of a mixer.
DFBScreenOutputConfig | Configuration of an output.
DFBScreenOutputDescription | Description of a screen output.
DFBSpan | A horizontal line specified by x and width.
DFBStreamAttributes | Stream attributes for an audio/video stream.
DFBStreamDescription | Informations about an audio/video stream.
DFBSurfaceDescription | Description of the surface that is to be created.
DFBTrapezoid | A trapezoid specified by two points with a width each.
DFBTriangle | A triangle specified by three points.
DFBUniversalEvent | Universal event for custom usage with variable size.
DFBUserEvent | Event for usage by the user of this library.
DFBVertex | Transformed vertex of a textured triangle.
DFBVideoProviderEvent | Event from the video provider
DFBWindowDescription | Description of the window that is to be created.
DFBWindowEvent | Event from the windowing system.
DFBWindowGeometry |

### Definitions

DCID_PRIMARY | Predefined color IDs.
DFB_ALPHA_BITS_PER_PIXEL |
DFB_BITS_PER_PIXEL |
DFB_BYTES_PER_LINE |
DFB_BYTES_PER_PIXEL |
DFB_COLORKEY_EQUAL | Macro to compare two color keys.
DFB_COLOR_BITS_PER_PIXEL |
DFB_COLOR_EQUAL | Macro to compare two colors.
DFB_COLOR_IDS_MAX | Maximum number of color ids.
DFB_CUSTOM_KEY |
DFB_DEGREES |
DFB_DISPLAYLAYER_IDS_ADD | Adds the id to the bitmask of layer ids.
DFB_DISPLAYLAYER_IDS_EMPTY | Empties (clears) the bitmask of layer ids.
DFB_DISPLAYLAYER_IDS_HAVE | Checks if the bitmask of layer ids contains the id.
DFB_DISPLAYLAYER_IDS_MAX | Maximum number of layer ids.
DFB_DISPLAYLAYER_IDS_REMOVE | Removes the id from the bitmask of layer ids.
DFB_DISPLAY_LAYER_DESC_NAME_LENGTH |
DFB_DISPLAY_LAYER_SOURCE_DESC_NAME_LENGTH |
DFB_EVENT |
DFB_FUNCTION_KEY |
DFB_GRAPHICS_DEVICE_DESC_NAME_LENGTH |
DFB_GRAPHICS_DRIVER_INFO_NAME_LENGTH |
DFB_INPUT_DEVICE_DESC_NAME_LENGTH |
DFB_KEY |
DFB_KEY_IS_ASCII |
DFB_KEY_TYPE |
DFB_LOCATION_EQUAL | Macro to compare two locations.
DFB_LOWER_CASE |
DFB_NUM_PIXELFORMATS |
DFB_PIXELFORMAT_ALIGNMENT |
DFB_PIXELFORMAT_HAS_ALPHA |
DFB_PIXELFORMAT_INDEX |
DFB_PIXELFORMAT_INV_ALPHA |
DFB_PIXELFORMAT_IS_INDEXED |
DFB_PLANAR_PIXELFORMAT |
DFB_PLANE_MULTIPLY |
DFB_POINT_EQUAL | Macro to compare two points.
DFB_RECTANGLE_EQUAL | Macro to compare two rectangles.
DFB_REGION_EQUAL | Macro to compare two regions.
DFB_SCREEN_DESC_NAME_LENGTH |
DFB_SCREEN_ENCODER_DESC_NAME_LENGTH |
DFB_SCREEN_MIXER_DESC_NAME_LENGTH |
DFB_SCREEN_OUTPUT_DESC_NAME_LENGTH |
DFB_STREAM_DESC_ALBUM_LENGTH |
DFB_STREAM_DESC_AUTHOR_LENGTH |
DFB_STREAM_DESC_COMMENT_LENGTH |
DFB_STREAM_DESC_ENCODING_LENGTH |
DFB_STREAM_DESC_GENRE_LENGTH |
DFB_STREAM_DESC_TITLE_LENGTH |
DFB_UPPER_CASE |
DIDID_ANY |
DIDID_JOYSTICK |
DIDID_KEYBOARD |
DIRECTFBGL_INTERFACE_VERSION | The DirectFBGL interface version.
DLID_PRIMARY |
DLSID_SURFACE |
DSCID_PRIMARY |
DTEID_UTF8 | Predefined text encoding IDs.

| This work is licensed under a Creative Commons Attribution-Share Alike 3.0 License