CoreDFB_includes.h   CoreDFB_includes.h 
skipping to change at line 127 skipping to change at line 127
u32 *ret_object_id ) u32 *ret_object_id )
{ {
*ret_object_id = state->object.id; *ret_object_id = state->object.id;
fusion_reactor_add_permissions( state->object.reactor, catcher, fusion_reactor_add_permissions( state->object.reactor, catcher,
(FusionReactorPermissions)(FUSION_REAC TOR_PERMIT_ATTACH_DETACH) ); (FusionReactorPermissions)(FUSION_REAC TOR_PERMIT_ATTACH_DETACH) );
fusion_ref_add_permissions( &state->object.ref, catcher, fusion_ref_add_permissions( &state->object.ref, catcher,
(FusionRefPermissions)(FUSION_REF_PERMIT_R EF_UNREF_LOCAL | FUSION_REF_PERMIT_CATCH) ); (FusionRefPermissions)(FUSION_REF_PERMIT_R EF_UNREF_LOCAL | FUSION_REF_PERMIT_CATCH) );
fusion_call_add_permissions( &state->call, catcher, FUSION_CALL_PERMIT _EXECUTE ); fusion_call_add_permissions( &state->call, catcher, FUSION_CALL_PERMIT _EXECUTE );
if (dfb_config->graphics_state_call_limit)
fusion_call_set_quota( &state->call, catcher, dfb_config->graphic
s_state_call_limit );
if (!state->object.owner) if (!state->object.owner)
state->object.owner = catcher; state->object.owner = catcher;
return fusion_ref_throw( &state->object.ref, catcher ); return fusion_ref_throw( &state->object.ref, catcher );
} }
static __inline__ u32 static __inline__ u32
CoreLayer_GetID( const CoreLayer *layer ) CoreLayer_GetID( const CoreLayer *layer )
{ {
return dfb_layer_id( layer ); return dfb_layer_id( layer );
 End of changes. 1 change blocks. 
0 lines changed or deleted 4 lines changed or added


 CoreGraphicsState.h   CoreGraphicsState.h 
skipping to change at line 200 skipping to change at line 200
DFBTriangleFormation formation); DFBTriangleFormation formation);
DFBResult CoreGraphicsState_Flush( DFBResult CoreGraphicsState_Flush(
CoreGraphicsState *obj CoreGraphicsState *obj
); );
DFBResult CoreGraphicsState_ReleaseSource( DFBResult CoreGraphicsState_ReleaseSource(
CoreGraphicsState *obj CoreGraphicsState *obj
); );
DFBResult CoreGraphicsState_SetSrcConvolution(
CoreGraphicsState *obj,
const DFBConvolutionFilter *filter);
void CoreGraphicsState_Init_Dispatch( void CoreGraphicsState_Init_Dispatch(
CoreDFB *core, CoreDFB *core,
CoreGraphicsState *obj, CoreGraphicsState *obj,
FusionCall *call FusionCall *call
); );
void CoreGraphicsState_Deinit_Dispatch( void CoreGraphicsState_Deinit_Dispatch(
FusionCall *call FusionCall *call
); );
skipping to change at line 252 skipping to change at line 256
CoreGraphicsState_FillTriangles = 24, CoreGraphicsState_FillTriangles = 24,
CoreGraphicsState_FillTrapezoids = 25, CoreGraphicsState_FillTrapezoids = 25,
CoreGraphicsState_FillSpans = 26, CoreGraphicsState_FillSpans = 26,
CoreGraphicsState_Blit = 27, CoreGraphicsState_Blit = 27,
CoreGraphicsState_Blit2 = 28, CoreGraphicsState_Blit2 = 28,
CoreGraphicsState_StretchBlit = 29, CoreGraphicsState_StretchBlit = 29,
CoreGraphicsState_TileBlit = 30, CoreGraphicsState_TileBlit = 30,
CoreGraphicsState_TextureTriangles = 31, CoreGraphicsState_TextureTriangles = 31,
CoreGraphicsState_Flush = 32, CoreGraphicsState_Flush = 32,
CoreGraphicsState_ReleaseSource = 33, CoreGraphicsState_ReleaseSource = 33,
CoreGraphicsState_SetSrcConvolution = 34,
} CoreGraphicsStateCall; } CoreGraphicsStateCall;
/* /*
* CoreGraphicsState_SetDrawingFlags * CoreGraphicsState_SetDrawingFlags
*/ */
typedef struct { typedef struct {
DFBSurfaceDrawingFlags flags; DFBSurfaceDrawingFlags flags;
} CoreGraphicsStateSetDrawingFlags; } CoreGraphicsStateSetDrawingFlags;
typedef struct { typedef struct {
skipping to change at line 639 skipping to change at line 644
/* /*
* CoreGraphicsState_ReleaseSource * CoreGraphicsState_ReleaseSource
*/ */
typedef struct { typedef struct {
} CoreGraphicsStateReleaseSource; } CoreGraphicsStateReleaseSource;
typedef struct { typedef struct {
DFBResult result; DFBResult result;
} CoreGraphicsStateReleaseSourceReturn; } CoreGraphicsStateReleaseSourceReturn;
/*
* CoreGraphicsState_SetSrcConvolution
*/
typedef struct {
DFBConvolutionFilter filter;
} CoreGraphicsStateSetSrcConvolution;
typedef struct {
DFBResult result;
} CoreGraphicsStateSetSrcConvolutionReturn;
class IGraphicsState : public Interface class IGraphicsState : public Interface
{ {
public: public:
IGraphicsState( CoreDFB *core ) IGraphicsState( CoreDFB *core )
: :
Interface( core ) Interface( core )
{ {
} }
public: public:
skipping to change at line 805 skipping to change at line 821
) = 0; ) = 0;
virtual DFBResult Flush( virtual DFBResult Flush(
) = 0; ) = 0;
virtual DFBResult ReleaseSource( virtual DFBResult ReleaseSource(
) = 0; ) = 0;
virtual DFBResult SetSrcConvolution(
const DFBConvolutionFilter *filter
) = 0;
}; };
class IGraphicsState_Real : public IGraphicsState class IGraphicsState_Real : public IGraphicsState
{ {
private: private:
CoreGraphicsState *obj; CoreGraphicsState *obj;
public: public:
IGraphicsState_Real( CoreDFB *core, CoreGraphicsState *obj ) IGraphicsState_Real( CoreDFB *core, CoreGraphicsState *obj )
: :
skipping to change at line 977 skipping to change at line 997
); );
virtual DFBResult Flush( virtual DFBResult Flush(
); );
virtual DFBResult ReleaseSource( virtual DFBResult ReleaseSource(
); );
virtual DFBResult SetSrcConvolution(
const DFBConvolutionFilter *filter
);
}; };
class IGraphicsState_Requestor : public IGraphicsState class IGraphicsState_Requestor : public IGraphicsState
{ {
private: private:
CoreGraphicsState *obj; CoreGraphicsState *obj;
public: public:
IGraphicsState_Requestor( CoreDFB *core, CoreGraphicsState *obj ) IGraphicsState_Requestor( CoreDFB *core, CoreGraphicsState *obj )
: :
skipping to change at line 1149 skipping to change at line 1173
); );
virtual DFBResult Flush( virtual DFBResult Flush(
); );
virtual DFBResult ReleaseSource( virtual DFBResult ReleaseSource(
); );
virtual DFBResult SetSrcConvolution(
const DFBConvolutionFilter *filter
);
}; };
DFBResult CoreGraphicsStateDispatch__Dispatch( CoreGraphicsState *obj, DFBResult CoreGraphicsStateDispatch__Dispatch( CoreGraphicsState *obj,
FusionID caller, FusionID caller,
int method, int method,
void *ptr, void *ptr,
unsigned int length, unsigned int length,
void *ret_ptr, void *ret_ptr,
unsigned int ret_size, unsigned int ret_size,
unsigned int *ret_length ); unsigned int *ret_length );
 End of changes. 6 change blocks. 
0 lines changed or deleted 28 lines changed or added


 CoreGraphicsStateClient.h   CoreGraphicsStateClient.h 
skipping to change at line 41 skipping to change at line 41
#include <directfb.h> #include <directfb.h>
#include <core/state.h> #include <core/state.h>
/************************************************************************** ******************************************** /************************************************************************** ********************************************
* CoreGraphicsStateClient * CoreGraphicsStateClient
*/ */
struct __DFB_CoreGraphicsStateClient { struct __DFB_CoreGraphicsStateClient {
int magic; int magic;
CoreDFB *core; CoreDFB *core;
CardState *state; CardState *state; /* Local state structure */
CoreGraphicsState *gfx_state; CoreGraphicsState *gfx_state; /* Remote object for rendering, syn cing values from local state as needed */
}; };
DFBResult CoreGraphicsStateClient_Init ( CoreGraphicsStateClient *client, DFBResult CoreGraphicsStateClient_Init ( CoreGraphicsStateClient *client,
CardState *state ); CardState *state );
void CoreGraphicsStateClient_Deinit ( CoreGraphicsStateClient *client ); void CoreGraphicsStateClient_Deinit ( CoreGraphicsStateClient *client );
void CoreGraphicsStateClient_Flush ( CoreGraphicsStateClient
*client );
void CoreGraphicsStateClient_FlushAll ( void );
void CoreGraphicsStateClient_FlushAllDst ( CoreSurface
*surface );
DFBResult CoreGraphicsStateClient_ReleaseSource ( CoreGraphicsStateClient
*client );
DFBResult CoreGraphicsStateClient_SetColorAndIndex( CoreGraphicsStateClient
*client,
const DFBColor
*color,
u32
index );
DFBResult CoreGraphicsStateClient_SetState ( CoreGraphicsStateClient *client, DFBResult CoreGraphicsStateClient_SetState ( CoreGraphicsStateClient *client,
CardState *state, CardState *state,
StateModificationFlags flags ); StateModificationFlags flags );
DFBResult CoreGraphicsStateClient_Update ( CoreGraphicsStateClient *client, DFBResult CoreGraphicsStateClient_Update ( CoreGraphicsStateClient *client,
DFBAccelerationMask accel, DFBAccelerationMask accel,
CardState *state ); CardState *state );
DFBResult CoreGraphicsStateClient_DrawRectangles ( CoreGraphicsStateClient *client, DFBResult CoreGraphicsStateClient_DrawRectangles ( CoreGraphicsStateClient *client,
const DFBRectangle *rects, const DFBRectangle *rects,
unsigned int num ); unsigned int num );
 End of changes. 4 change blocks. 
4 lines changed or deleted 20 lines changed or added


 CoreWindowStack.h   CoreWindowStack.h 
skipping to change at line 48 skipping to change at line 48
#ifdef __cplusplus #ifdef __cplusplus
#include <core/Interface.h> #include <core/Interface.h>
extern "C" { extern "C" {
#endif #endif
DFBResult CoreWindowStack_RepaintAll( DFBResult CoreWindowStack_RepaintAll(
CoreWindowStack *obj CoreWindowStack *obj
); );
DFBResult CoreWindowStack_GetInsets(
CoreWindowStack *obj,
CoreWindow *window,
DFBInsets *ret_insets);
DFBResult CoreWindowStack_CursorEnable( DFBResult CoreWindowStack_CursorEnable(
CoreWindowStack *obj, CoreWindowStack *obj,
bool enable); bool enable);
DFBResult CoreWindowStack_CursorSetShape( DFBResult CoreWindowStack_CursorSetShape(
CoreWindowStack *obj, CoreWindowStack *obj,
CoreSurface *shape, CoreSurface *shape,
const DFBPoint *hotspot); const DFBPoint *hotspot);
DFBResult CoreWindowStack_CursorSetOpacity( DFBResult CoreWindowStack_CursorSetOpacity(
skipping to change at line 116 skipping to change at line 111
#ifdef __cplusplus #ifdef __cplusplus
} }
namespace DirectFB { namespace DirectFB {
/* /*
* CoreWindowStack Calls * CoreWindowStack Calls
*/ */
typedef enum { typedef enum {
CoreWindowStack_RepaintAll = 1, CoreWindowStack_RepaintAll = 1,
CoreWindowStack_GetInsets = 2, CoreWindowStack_CursorEnable = 2,
CoreWindowStack_CursorEnable = 3, CoreWindowStack_CursorSetShape = 3,
CoreWindowStack_CursorSetShape = 4, CoreWindowStack_CursorSetOpacity = 4,
CoreWindowStack_CursorSetOpacity = 5, CoreWindowStack_CursorSetAcceleration = 5,
CoreWindowStack_CursorSetAcceleration = 6, CoreWindowStack_CursorWarp = 6,
CoreWindowStack_CursorWarp = 7, CoreWindowStack_CursorGetPosition = 7,
CoreWindowStack_CursorGetPosition = 8, CoreWindowStack_BackgroundSetMode = 8,
CoreWindowStack_BackgroundSetMode = 9, CoreWindowStack_BackgroundSetImage = 9,
CoreWindowStack_BackgroundSetImage = 10, CoreWindowStack_BackgroundSetColor = 10,
CoreWindowStack_BackgroundSetColor = 11, CoreWindowStack_BackgroundSetColorIndex = 11,
CoreWindowStack_BackgroundSetColorIndex = 12,
} CoreWindowStackCall; } CoreWindowStackCall;
/* /*
* CoreWindowStack_RepaintAll * CoreWindowStack_RepaintAll
*/ */
typedef struct { typedef struct {
} CoreWindowStackRepaintAll; } CoreWindowStackRepaintAll;
typedef struct { typedef struct {
DFBResult result; DFBResult result;
} CoreWindowStackRepaintAllReturn; } CoreWindowStackRepaintAllReturn;
/* /*
* CoreWindowStack_GetInsets
*/
typedef struct {
u32 window_id;
} CoreWindowStackGetInsets;
typedef struct {
DFBResult result;
DFBInsets insets;
} CoreWindowStackGetInsetsReturn;
/*
* CoreWindowStack_CursorEnable * CoreWindowStack_CursorEnable
*/ */
typedef struct { typedef struct {
bool enable; bool enable;
} CoreWindowStackCursorEnable; } CoreWindowStackCursorEnable;
typedef struct { typedef struct {
DFBResult result; DFBResult result;
} CoreWindowStackCursorEnableReturn; } CoreWindowStackCursorEnableReturn;
skipping to change at line 278 skipping to change at line 260
: :
Interface( core ) Interface( core )
{ {
} }
public: public:
virtual DFBResult RepaintAll( virtual DFBResult RepaintAll(
) = 0; ) = 0;
virtual DFBResult GetInsets(
CoreWindow *window,
DFBInsets *ret_insets
) = 0;
virtual DFBResult CursorEnable( virtual DFBResult CursorEnable(
bool enable bool enable
) = 0; ) = 0;
virtual DFBResult CursorSetShape( virtual DFBResult CursorSetShape(
CoreSurface *shape, CoreSurface *shape,
const DFBPoint *hotspot const DFBPoint *hotspot
) = 0; ) = 0;
virtual DFBResult CursorSetOpacity( virtual DFBResult CursorSetOpacity(
skipping to change at line 346 skipping to change at line 323
IWindowStack( core ), IWindowStack( core ),
obj( obj ) obj( obj )
{ {
} }
public: public:
virtual DFBResult RepaintAll( virtual DFBResult RepaintAll(
); );
virtual DFBResult GetInsets(
CoreWindow *window,
DFBInsets *ret_insets
);
virtual DFBResult CursorEnable( virtual DFBResult CursorEnable(
bool enable bool enable
); );
virtual DFBResult CursorSetShape( virtual DFBResult CursorSetShape(
CoreSurface *shape, CoreSurface *shape,
const DFBPoint *hotspot const DFBPoint *hotspot
); );
virtual DFBResult CursorSetOpacity( virtual DFBResult CursorSetOpacity(
skipping to change at line 414 skipping to change at line 386
IWindowStack( core ), IWindowStack( core ),
obj( obj ) obj( obj )
{ {
} }
public: public:
virtual DFBResult RepaintAll( virtual DFBResult RepaintAll(
); );
virtual DFBResult GetInsets(
CoreWindow *window,
DFBInsets *ret_insets
);
virtual DFBResult CursorEnable( virtual DFBResult CursorEnable(
bool enable bool enable
); );
virtual DFBResult CursorSetShape( virtual DFBResult CursorSetShape(
CoreSurface *shape, CoreSurface *shape,
const DFBPoint *hotspot const DFBPoint *hotspot
); );
virtual DFBResult CursorSetOpacity( virtual DFBResult CursorSetOpacity(
 End of changes. 6 change blocks. 
43 lines changed or deleted 10 lines changed or added


 atomic.h   atomic.h 
skipping to change at line 304 skipping to change at line 304
"2: b 1b \n" "2: b 1b \n"
" .previous \n" " .previous \n"
" .set mips0 \n" " .set mips0 \n"
: "=&r" (temp), "=m" (*v) : "=&r" (temp), "=m" (*v)
: "Ir" (i), "m" (*v)); : "Ir" (i), "m" (*v));
return temp; return temp;
} }
#define D_SYNC_ADD_AND_FETCH( ptr, value ) \ #define D_SYNC_ADD_AND_FETCH( ptr, value ) \
(_D__atomic_add_return( (int) (value), (volatile int*) (ptr) )) _D__atomic_add_return( (int) (value), (volatile int*) (ptr) )
#endif #endif
#ifdef WIN32 #ifdef WIN32
/* /*
* Win32 * Win32
*/ */
#ifndef D_SYNC_BOOL_COMPARE_AND_SWAP #ifndef D_SYNC_BOOL_COMPARE_AND_SWAP
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 build.h   build.h 
/* /*
(c) Copyright 2000-2002 convergence integrated media GmbH. (c) Copyright 2001-2011 The world wide DirectFB Open Source Community (
(c) Copyright 2002-2004 convergence GmbH. directfb.org)
(c) Copyright 2000-2004 Convergence (integrated media) GmbH
All rights reserved. All rights reserved.
Written by Denis Oliver Kropp <dok@directfb.org>, Written by Denis Oliver Kropp <dok@directfb.org>,
Andreas Hundt <andi@fischlustig.de>, Andreas Hundt <andi@fischlustig.de>,
Sven Neumann <neo@directfb.org> and Sven Neumann <neo@directfb.org>,
Ville Syrjälä <syrjala@sci.fi>. Ville Syrjälä <syrjala@sci.fi> and
Claudio Ciccani <klan@users.sf.net>.
This library is free software; you can redistribute it and/or This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version. version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __FUSION__BUILD_H__ #ifndef __DIRECT__BUILD_H__
#define __FUSION__BUILD_H__ #define __DIRECT__BUILD_H__
#define FUSION_BUILD_MULTI (0) #define DIRECT_OS_LINUX_GNU_LIBC (0)
#define FUSION_BUILD_KERNEL (0) #define DIRECT_OS_LINUX_KERNEL (1)
#define FUSION_MESSAGE_SIZE (16384) #define DIRECT_OS_PSP (2)
#define DIRECT_OS_WIN32 (3)
#define DIRECT_OS_FAMOS (4)
#define DIRECT_BUILD_DEBUG (0)
#define DIRECT_BUILD_DEBUGS (1)
#define DIRECT_BUILD_TRACE (0)
#define DIRECT_BUILD_TEXT (1)
#define DIRECT_BUILD_GETTID (1)
#define DIRECT_BUILD_NETWORK (1)
#define DIRECT_BUILD_STDBOOL (1)
#define DIRECT_BUILD_DYNLOAD (1)
#define DIRECT_BUILD_MULTICORE (1)
#define DIRECT_BUILD_OSTYPE (DIRECT_OS_LINUX_GNU_LIBC)
#if !DIRECT_BUILD_DEBUGS
#if defined(DIRECT_ENABLE_DEBUG) || defined(DIRECT_FORCE_DEBUG)
#define DIRECT_MINI_DEBUG
#endif
#undef DIRECT_ENABLE_DEBUG
#ifdef DIRECT_FORCE_DEBUG
#warning DIRECT_FORCE_DEBUG used with 'pure release' library headers.
#undef DIRECT_FORCE_DEBUG
#endif
#endif
#endif #endif
 End of changes. 4 change blocks. 
9 lines changed or deleted 35 lines changed or added


 call.h   call.h 
skipping to change at line 79 skipping to change at line 79
DirectResult FUSION_API fusion_call_init3 ( FusionCall *call, DirectResult FUSION_API fusion_call_init3 ( FusionCall *call,
FusionCallHandler3 handler3, FusionCallHandler3 handler3,
void *ctx, void *ctx,
const FusionWorld *world ); const FusionWorld *world );
DirectResult FUSION_API fusion_call_init_from( FusionCall *call, DirectResult FUSION_API fusion_call_init_from( FusionCall *call,
int call_id , int call_id ,
const FusionWorld *world ) ; const FusionWorld *world ) ;
DirectResult FUSION_API fusion_call_set_name ( FusionCall *call,
const char *name );
DirectResult FUSION_API fusion_call_execute( FusionCall *call, DirectResult FUSION_API fusion_call_execute( FusionCall *call,
FusionCallExecFlags flags, FusionCallExecFlags flags,
int call_arg, int call_arg,
void *call_ptr, void *call_ptr,
int *ret_val ) ; int *ret_val ) ;
DirectResult FUSION_API fusion_call_execute2( FusionCall *call, DirectResult FUSION_API fusion_call_execute2( FusionCall *call,
FusionCallExecFlags flags, FusionCallExecFlags flags,
int call_arg , int call_arg ,
void *ptr, void *ptr,
skipping to change at line 113 skipping to change at line 116
int val ); int val );
DirectResult FUSION_API fusion_call_return3( FusionCall *call, DirectResult FUSION_API fusion_call_return3( FusionCall *call,
unsigned int serial, unsigned int serial,
void *ptr, void *ptr,
unsigned int length ); unsigned int length );
DirectResult FUSION_API fusion_call_get_owner( FusionCall *call, DirectResult FUSION_API fusion_call_get_owner( FusionCall *call,
FusionID *ret_fus ion_id ); FusionID *ret_fus ion_id );
DirectResult FUSION_API fusion_call_set_quota( FusionCall *call,
FusionID fusion_
id,
unsigned int limit )
;
DirectResult FUSION_API fusion_call_destroy( FusionCall *call ); DirectResult FUSION_API fusion_call_destroy( FusionCall *call );
DirectResult FUSION_API fusion_world_flush_calls( FusionWorld *world, int l ock ); DirectResult FUSION_API fusion_world_flush_calls( FusionWorld *world, int l ock );
typedef enum { typedef enum {
FUSION_CALL_PERMIT_NONE = 0x00000000, FUSION_CALL_PERMIT_NONE = 0x00000000,
FUSION_CALL_PERMIT_EXECUTE = 0x00000001, FUSION_CALL_PERMIT_EXECUTE = 0x00000001,
FUSION_CALL_PERMIT_ALL = 0x00000001, FUSION_CALL_PERMIT_ALL = 0x00000001
} FusionCallPermissions; } FusionCallPermissions;
/* /*
* Give permissions to another fusionee to use the call. * Give permissions to another fusionee to use the call.
*/ */
DirectResult FUSION_API fusion_call_add_permissions( FusionCall *call, DirectResult FUSION_API fusion_call_add_permissions( FusionCall *call,
FusionID fusion_id, FusionID fusion_id,
FusionCallPermissions permissions ); FusionCallPermissions permissions );
void __Fusion_call_init( void );
void __Fusion_call_deinit( void );
#endif #endif
 End of changes. 4 change blocks. 
1 lines changed or deleted 13 lines changed or added


 core.h   core.h 
skipping to change at line 327 skipping to change at line 327
call.func = func; call.func = func;
call.ctx = ctx; call.ctx = ctx;
call.ctx2 = ctx2; call.ctx2 = ctx2;
return (DFBResult) fusion_call_execute2( &core_dfb->async_call, (Fusio nCallExecFlags)(FCEF_ONEWAY | FCEF_NODIRECT), 0, &call, sizeof(call), NULL ); return (DFBResult) fusion_call_execute2( &core_dfb->async_call, (Fusio nCallExecFlags)(FCEF_ONEWAY | FCEF_NODIRECT), 0, &call, sizeof(call), NULL );
} }
void Core_TLS__init( void ); void Core_TLS__init( void );
void Core_TLS__deinit( void ); void Core_TLS__deinit( void );
#define CORE_TLS_IDENTITY_STACK_MAX 8
typedef struct {
int magic;
FusionID identity[CORE_TLS_IDENTITY_STACK_MAX];
unsigned int identity_count;
int calling;
} CoreTLS;
CoreTLS *Core_GetTLS( void );
/* /*
* Identity management * Identity management
* *
* Incoming dispatch pushes ID of caller * Incoming dispatch pushes ID of caller
*/ */
void Core_PushIdentity( FusionID caller ); void Core_PushIdentity( FusionID caller );
void Core_PopIdentity ( void ); void Core_PopIdentity ( void );
 End of changes. 1 change blocks. 
0 lines changed or deleted 13 lines changed or added


 debug.h   debug.h 
skipping to change at line 39 skipping to change at line 39
#ifndef __DIRECT__DEBUG_H__ #ifndef __DIRECT__DEBUG_H__
#define __DIRECT__DEBUG_H__ #define __DIRECT__DEBUG_H__
#include <direct/build.h> #include <direct/build.h>
#include <direct/clock.h> #include <direct/clock.h>
#include <direct/conf.h> #include <direct/conf.h>
#include <direct/log.h> #include <direct/log.h>
#include <direct/messages.h> #include <direct/messages.h>
#include <direct/system.h> #include <direct/system.h>
#include <direct/thread.h>
#include <direct/trace.h> #include <direct/trace.h>
#include <direct/types.h> #include <direct/types.h>
// @deprecated // @deprecated
#define D_DEBUG_DOMAIN( _identifier, _name, _description ) \ #define D_DEBUG_DOMAIN( _identifier, _name, _description ) \
D_LOG_DOMAIN( _identifier, _name, _description ) D_LOG_DOMAIN( _identifier, _name, _description )
#ifndef DIRECT_DISABLE_DEPRECATED #ifndef DIRECT_DISABLE_DEPRECATED
// @deprecated // @deprecated
skipping to change at line 355 skipping to change at line 356
} while (0) } while (0)
#define D_INDEX_ASSERT(index,array) \ #define D_INDEX_ASSERT(index,array) \
do { \ do { \
} while (0) } while (0)
#endif #endif
#define D_FLAGS_ASSERT(flags,f) D_ASSERT( D_FLAGS_ARE_IN(flags,f) ) #define D_FLAGS_ASSERT(flags,f) D_ASSERT( D_FLAGS_ARE_IN(flags,f) )
#if D_DEBUG_ENABLED
#define D_INFO_LINE()
\
do {
\
long long micros = direct_clock_get_micros();
\
int indent = direct_trace_debug_indent() * 2;
\
\
D_INFO( "[%-16.16s %3lld.%03lld,%03lld] (%5d) %*s%*s %s:%d\n",
\
direct_thread_self_name()?:"NO NAME",
\
micros / 1000000LL, (micros / 1000LL) % 1000LL, micros %
1000LL, direct_gettid(), \
indent, "", indent-60, __FUNCTION__, __FILE__, __LINE__ )
; \
} while (0)
#define D_INFO_LINE_MSG(...)
\
do {
\
long long micros = direct_clock_get_micros();
\
int indent = direct_trace_debug_indent() * 2;
\
char _buf[200];
\
\
direct_snprintf( _buf, sizeof(_buf), __VA_ARGS__ );
\
\
D_INFO( "[%-16.16s %3lld.%03lld,%03lld] (%5d) %*s%*s '%-40s' %s
:%d\n", \
direct_thread_self_name()?:"NO NAME",
\
micros / 1000000LL, (micros / 1000LL) % 1000LL, micros %
1000LL, direct_gettid(), \
indent, "", indent-60, __FUNCTION__, _buf, __FILE__, __LI
NE__ ); \
} while (0)
#else
#define D_INFO_LINE()
\
do {
\
} while (0)
#define D_INFO_LINE_MSG(...)
\
do {
\
} while (0)
#endif
#endif #endif
 End of changes. 2 change blocks. 
0 lines changed or deleted 61 lines changed or added


 dfiff.h   dfiff.h 
skipping to change at line 41 skipping to change at line 41
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/ */
#ifndef __DFIFF_H__ #ifndef __DFIFF_H__
#define __DFIFF_H__ #define __DFIFF_H__
#include <inttypes.h> #include <inttypes.h>
#define DFIFF_FLAG_LITTLE_ENDIAN 0x01 #define DFIFF_FLAG_LITTLE_ENDIAN 0x01
#define DFIFF_FLAG_PREMULTIPLIED 0x02
typedef struct { typedef struct {
unsigned char magic[5]; /* "DFIFF" magic */ unsigned char magic[5]; /* "DFIFF" magic */
unsigned char major; /* Major version number */ unsigned char major; /* Major version number */
unsigned char minor; /* Minor version number */ unsigned char minor; /* Minor version number */
unsigned char flags; /* Some flags like endianess */ unsigned char flags; /* Some flags like endianess */
/* From now on endianess matters... */ /* From now on endianess matters... */
 End of changes. 1 change blocks. 
0 lines changed or deleted 1 lines changed or added


 directfb.h   directfb.h 
skipping to change at line 820 skipping to change at line 820
DSBLIT_DST_COLORKEY_EXTENDED = 0x00040000, /* use extended destinatio n color key */ DSBLIT_DST_COLORKEY_EXTENDED = 0x00040000, /* use extended destinatio n color key */
DSBLIT_SRC_MASK_ALPHA = 0x00100000, /* modulate source alpha c hannel with alpha channel from source mask, DSBLIT_SRC_MASK_ALPHA = 0x00100000, /* modulate source alpha c hannel with alpha channel from source mask,
see also IDirectFBSurfa ce::SetSourceMask() */ see also IDirectFBSurfa ce::SetSourceMask() */
DSBLIT_SRC_MASK_COLOR = 0x00200000, /* modulate source color c hannels with color channels from source mask, DSBLIT_SRC_MASK_COLOR = 0x00200000, /* modulate source color c hannels with color channels from source mask,
see also IDirectFBSurfa ce::SetSourceMask() */ see also IDirectFBSurfa ce::SetSourceMask() */
DSBLIT_SOURCE2 = 0x00400000, /* use secondary source in stead of destination for reading */ DSBLIT_SOURCE2 = 0x00400000, /* use secondary source in stead of destination for reading */
DSBLIT_FLIP_HORIZONTAL = 0x01000000, /* flip the image horizont ally */ DSBLIT_FLIP_HORIZONTAL = 0x01000000, /* flip the image horizont ally */
DSBLIT_FLIP_VERTICAL = 0x02000000, /* flip the image vertical ly */ DSBLIT_FLIP_VERTICAL = 0x02000000, /* flip the image vertical ly */
DSBLIT_ROP = 0x04000000, /* use rop setting */ DSBLIT_ROP = 0x04000000, /* use rop setting */
DSBLIT_SRC_COLORMATRIX = 0x08000000, /* use source color matrix setting */ DSBLIT_SRC_COLORMATRIX = 0x08000000, /* use source color matrix setting */
DSBLIT_SRC_CONVOLUTION = 0x10000000, /* use source convolution filter */ DSBLIT_SRC_CONVOLUTION = 0x10000000 /* use source convolution filter */
} DFBSurfaceBlittingFlags; } DFBSurfaceBlittingFlags;
/* /*
* Options for drawing and blitting operations. Not mandatory for accelerat ion. * Options for drawing and blitting operations. Not mandatory for accelerat ion.
*/ */
typedef enum { typedef enum {
DSRO_NONE = 0x00000000, /* None of these. */ DSRO_NONE = 0x00000000, /* None of these. */
DSRO_SMOOTH_UPSCALE = 0x00000001, /* Use interpolation for upsca le StretchBlit(). */ DSRO_SMOOTH_UPSCALE = 0x00000001, /* Use interpolation for upsca le StretchBlit(). */
DSRO_SMOOTH_DOWNSCALE = 0x00000002, /* Use interpolation for downs cale StretchBlit(). */ DSRO_SMOOTH_DOWNSCALE = 0x00000002, /* Use interpolation for downs cale StretchBlit(). */
skipping to change at line 861 skipping to change at line 861
DFXL_DRAWMONOGLYPH = 0x00001000, /* DrawMonoGlyphs() is accelerated. */ DFXL_DRAWMONOGLYPH = 0x00001000, /* DrawMonoGlyphs() is accelerated. */
DFXL_BLIT = 0x00010000, /* Blit() and TileBlit() are accele rated. */ DFXL_BLIT = 0x00010000, /* Blit() and TileBlit() are accele rated. */
DFXL_STRETCHBLIT = 0x00020000, /* StretchBlit() is accelerated. */ DFXL_STRETCHBLIT = 0x00020000, /* StretchBlit() is accelerated. */
DFXL_TEXTRIANGLES = 0x00040000, /* TextureTriangles() is accelerate d. */ DFXL_TEXTRIANGLES = 0x00040000, /* TextureTriangles() is accelerate d. */
DFXL_BLIT2 = 0x00080000, /* BatchBlit2() is accelerated. */ DFXL_BLIT2 = 0x00080000, /* BatchBlit2() is accelerated. */
DFXL_DRAWSTRING = 0x01000000, /* DrawString() and DrawGlyph() are accelerated. */ DFXL_DRAWSTRING = 0x01000000, /* DrawString() and DrawGlyph() are accelerated. */
DFXL_ALL = 0x010F003F, /* All drawing/blitting functions. DFXL_ALL = 0x011F007F, /* All drawing/blitting functions.
*/ */
DFXL_ALL_DRAW = 0x0000103F, /* All drawing functions. */ DFXL_ALL_DRAW = 0x0000107F, /* All drawing functions. */
DFXL_ALL_BLIT = 0x010F0000, /* All blitting functions. */ DFXL_ALL_BLIT = 0x011F0000 /* All blitting functions. */
} DFBAccelerationMask; } DFBAccelerationMask;
#define DFB_MASK_BYTE0 0x000000ff #define DFB_MASK_BYTE0 0x000000ff
#define DFB_MASK_BYTE1 0x0000ff00 #define DFB_MASK_BYTE1 0x0000ff00
#define DFB_MASK_BYTE2 0x00ff0000 #define DFB_MASK_BYTE2 0x00ff0000
#define DFB_MASK_BYTE3 0xff000000 #define DFB_MASK_BYTE3 0xff000000
/* /*
* @internal * @internal
*/ */
skipping to change at line 982 skipping to change at line 982
DWDESC_SURFACE_CAPS = 0x00000040, /* Create the window surface with DWDESC_SURFACE_CAPS = 0x00000040, /* Create the window surface with
special capabilities. */ special capabilities. */
DWDESC_PARENT = 0x00000080, /* This window has a parent accordi ng to parent_id field. */ DWDESC_PARENT = 0x00000080, /* This window has a parent accordi ng to parent_id field. */
DWDESC_OPTIONS = 0x00000100, /* Initial window options have been set. */ DWDESC_OPTIONS = 0x00000100, /* Initial window options have been set. */
DWDESC_STACKING = 0x00000200, /* Initial stacking class has been set. */ DWDESC_STACKING = 0x00000200, /* Initial stacking class has been set. */
DWDESC_TOPLEVEL_ID = 0x00000400, /* The top level window is set in t oplevel_id field. */ DWDESC_TOPLEVEL_ID = 0x00000400, /* The top level window is set in t oplevel_id field. */
DWDESC_COLORSPACE = 0x00000800, /* colorspace field is valid */ DWDESC_COLORSPACE = 0x00000800, /* colorspace field is valid */
DWDESC_RESOURCE_ID = 0x00001000, /* Resource id for window surface c reation has been set. */ DWDESC_RESOURCE_ID = 0x00001000 /* Resource id for window surface c reation has been set. */
} DFBWindowDescriptionFlags; } DFBWindowDescriptionFlags;
/* /*
* Flags defining which fields of a DFBDataBufferDescription are valid. * Flags defining which fields of a DFBDataBufferDescription are valid.
*/ */
typedef enum { typedef enum {
DBDESC_FILE = 0x00000001, /* Create a static buffer for the DBDESC_FILE = 0x00000001, /* Create a static buffer for the
specified filename. */ specified filename. */
DBDESC_MEMORY = 0x00000002 /* Create a static buffer for the DBDESC_MEMORY = 0x00000002 /* Create a static buffer for the
specified memory area. */ specified memory area. */
skipping to change at line 1129 skipping to change at line 1129
ignored */ ignored */
DFFA_OUTLINED = 0x00000040, DFFA_OUTLINED = 0x00000040,
DFFA_AUTOHINTING = 0x00000080, /* prefer auto-hinter over the font's DFFA_AUTOHINTING = 0x00000080, /* prefer auto-hinter over the font's
native hinter */ native hinter */
DFFA_SOFTHINTING = 0x00000100, /* use a lighter hinting algor ithm DFFA_SOFTHINTING = 0x00000100, /* use a lighter hinting algor ithm
that produces glyphs that a re more that produces glyphs that a re more
fuzzy but better resemble t he fuzzy but better resemble t he
original shape */ original shape */
DFFA_STYLE_ITALIC = 0x00000200, /* load italic style */ DFFA_STYLE_ITALIC = 0x00000200, /* load italic style */
DFFA_VERTICAL_LAYOUT = 0x00000400, /* load vertical layout */ DFFA_VERTICAL_LAYOUT = 0x00000400, /* load vertical layout */
DFFA_STYLE_BOLD = 0x00000800, /* load bold style */ DFFA_STYLE_BOLD = 0x00000800 /* load bold style */
} DFBFontAttributes; } DFBFontAttributes;
/* /*
* Flags defining which fields of a DFBFontDescription are valid. * Flags defining which fields of a DFBFontDescription are valid.
*/ */
typedef enum { typedef enum {
DFDESC_ATTRIBUTES = 0x00000001, /* attributes field is valid * / DFDESC_ATTRIBUTES = 0x00000001, /* attributes field is valid * /
DFDESC_HEIGHT = 0x00000002, /* height is specified */ DFDESC_HEIGHT = 0x00000002, /* height is specified */
DFDESC_WIDTH = 0x00000004, /* width is specified */ DFDESC_WIDTH = 0x00000004, /* width is specified */
DFDESC_INDEX = 0x00000008, /* index is specified */ DFDESC_INDEX = 0x00000008, /* index is specified */
DFDESC_FIXEDADVANCE = 0x00000010, /* specify a fixed advance ove rriding DFDESC_FIXEDADVANCE = 0x00000010, /* specify a fixed advance ove rriding
any character advance of fi xed or any character advance of fi xed or
proportional fonts */ proportional fonts */
DFDESC_FRACT_HEIGHT = 0x00000020, /* fractional height is set */ DFDESC_FRACT_HEIGHT = 0x00000020, /* fractional height is set */
DFDESC_FRACT_WIDTH = 0x00000040, /* fractional width is set */ DFDESC_FRACT_WIDTH = 0x00000040, /* fractional width is set */
DFDESC_OUTLINE_WIDTH = 0x00000080, /* outline width is set */ DFDESC_OUTLINE_WIDTH = 0x00000080, /* outline width is set */
DFDESC_OUTLINE_OPACITY = 0x00000100, /* outline opacity is set */ DFDESC_OUTLINE_OPACITY = 0x00000100, /* outline opacity is set */
DFDESC_ROTATION = 0x00000200, /* rotation is set */ DFDESC_ROTATION = 0x00000200 /* rotation is set */
} DFBFontDescriptionFlags; } DFBFontDescriptionFlags;
/* /*
* Description of how to load glyphs from a font file. * Description of how to load glyphs from a font file.
* *
* The attributes control how the glyphs are rendered. Width and height can be used to specify the * The attributes control how the glyphs are rendered. Width and height can be used to specify the
* desired face size in pixels. If you are loading a non-scalable font, you shouldn't specify a * desired face size in pixels. If you are loading a non-scalable font, you shouldn't specify a
* font size. * font size.
* *
* Please note that the height value in the DFBFontDescription doesn't corr espond to the height * Please note that the height value in the DFBFontDescription doesn't corr espond to the height
skipping to change at line 1282 skipping to change at line 1282
/* 32 bit ARGB (4 byte, inv. alpha 8@24, red 8@16, green 8@8, blue 8@ 0) */ /* 32 bit ARGB (4 byte, inv. alpha 8@24, red 8@16, green 8@8, blue 8@ 0) */
DSPF_AiRGB = DFB_SURFACE_PIXELFORMAT( 13, 24, 8, 1, 0, 4, 0, 0, 0, 0, 1 ), DSPF_AiRGB = DFB_SURFACE_PIXELFORMAT( 13, 24, 8, 1, 0, 4, 0, 0, 0, 0, 1 ),
/* 1 bit alpha (1 byte/ 8 pixel, most significant bit used first) */ /* 1 bit alpha (1 byte/ 8 pixel, most significant bit used first) */
DSPF_A1 = DFB_SURFACE_PIXELFORMAT( 14, 0, 1, 1, 1, 0, 7, 0, 0, 0, 0 ), DSPF_A1 = DFB_SURFACE_PIXELFORMAT( 14, 0, 1, 1, 1, 0, 7, 0, 0, 0, 0 ),
/* 12 bit YUV (8 bit Y plane followed by one 16 bit quarter size Cb| Cr [7:0|7:0] plane) */ /* 12 bit YUV (8 bit Y plane followed by one 16 bit quarter size Cb| Cr [7:0|7:0] plane) */
DSPF_NV12 = DFB_SURFACE_PIXELFORMAT( 15, 12, 0, 0, 0, 1, 0, 2, 0, 0, 0 ), DSPF_NV12 = DFB_SURFACE_PIXELFORMAT( 15, 12, 0, 0, 0, 1, 0, 2, 0, 0, 0 ),
/* 16 bit YUV (8 bit Y plane followed by one 16 bit half width Cb|Cr [7:0|7:0] plane) */ /* 16 bit YUV (8 bit Y plane followed by one 16 bit half width Cb|Cr [7:0|7:0] plane) */
DSPF_NV16 = DFB_SURFACE_PIXELFORMAT( 16, 24, 0, 0, 0, 1, 0, 0, 1, 0, 0 ), DSPF_NV16 = DFB_SURFACE_PIXELFORMAT( 16, 16, 0, 0, 0, 1, 0, 0, 1, 0, 0 ),
/* 16 bit ARGB (2 byte, alpha 2@14, red 5@9, green 5@4, blue 4@0) */ /* 16 bit ARGB (2 byte, alpha 2@14, red 5@9, green 5@4, blue 4@0) */
DSPF_ARGB2554 = DFB_SURFACE_PIXELFORMAT( 17, 14, 2, 1, 0, 2, 0, 0, 0, 0, 0 ), DSPF_ARGB2554 = DFB_SURFACE_PIXELFORMAT( 17, 14, 2, 1, 0, 2, 0, 0, 0, 0, 0 ),
/* 16 bit ARGB (2 byte, alpha 4@12, red 4@8, green 4@4, blue 4@0) */ /* 16 bit ARGB (2 byte, alpha 4@12, red 4@8, green 4@4, blue 4@0) */
DSPF_ARGB4444 = DFB_SURFACE_PIXELFORMAT( 18, 12, 4, 1, 0, 2, 0, 0, 0, 0, 0 ), DSPF_ARGB4444 = DFB_SURFACE_PIXELFORMAT( 18, 12, 4, 1, 0, 2, 0, 0, 0, 0, 0 ),
/* 16 bit RGBA (2 byte, red 4@12, green 4@8, blue 4@4, alpha 4@0) */ /* 16 bit RGBA (2 byte, red 4@12, green 4@8, blue 4@4, alpha 4@0) */
DSPF_RGBA4444 = DFB_SURFACE_PIXELFORMAT( 19, 12, 4, 1, 0, 2, 0, 0, 0, 0, 0 ), DSPF_RGBA4444 = DFB_SURFACE_PIXELFORMAT( 19, 12, 4, 1, 0, 2, 0, 0, 0, 0, 0 ),
skipping to change at line 1355 skipping to change at line 1355
/* 32 bit ABGR (4 byte, alpha 8@24, blue 8@16, green 8@8, red 8@0) */ /* 32 bit ABGR (4 byte, alpha 8@24, blue 8@16, green 8@8, red 8@0) */
DSPF_ABGR = DFB_SURFACE_PIXELFORMAT( 37, 24, 8, 1, 0, 4, 0, 0, 0, 0, 0 ), DSPF_ABGR = DFB_SURFACE_PIXELFORMAT( 37, 24, 8, 1, 0, 4, 0, 0, 0, 0, 0 ),
/* 32 bit RGBAF (4 byte, red 8@24, green 8@16, blue 8@8, alpha 7@1, fl ash 1@0 */ /* 32 bit RGBAF (4 byte, red 8@24, green 8@16, blue 8@8, alpha 7@1, fl ash 1@0 */
DSPF_RGBAF88871 = DFB_SURFACE_PIXELFORMAT( 38, 24, 7, 1, 0, 4, 0, 0, 0 , 0, 0 ), DSPF_RGBAF88871 = DFB_SURFACE_PIXELFORMAT( 38, 24, 7, 1, 0, 4, 0, 0, 0 , 0, 0 ),
/* 4 bit LUT (1 byte/ 2 pixel, 4 bit color and alpha lookup from pa lette) */ /* 4 bit LUT (1 byte/ 2 pixel, 4 bit color and alpha lookup from pa lette) */
DSPF_LUT4 = DFB_SURFACE_PIXELFORMAT( 39, 4, 0, 1, 4, 0, 1, 0, 0, 1, 0 ), DSPF_LUT4 = DFB_SURFACE_PIXELFORMAT( 39, 4, 0, 1, 4, 0, 1, 0, 0, 1, 0 ),
/* 16 bit LUT (1 byte alpha and 8 bit color lookup from palette) */ /* 16 bit LUT (1 byte alpha and 8 bit color lookup from palette) */
DSPF_ALUT8 = DFB_SURFACE_PIXELFORMAT( 40, 8, 8, 1, 0, 2, 0, 0, 0, 1, 0 ), DSPF_ALUT8 = DFB_SURFACE_PIXELFORMAT( 40, 8, 8, 1, 0, 2, 0, 0, 0, 1, 0 )
} DFBSurfacePixelFormat; } DFBSurfacePixelFormat;
/* Number of pixelformats defined */ /* Number of pixelformats defined */
#define DFB_NUM_PIXELFORMATS 41 #define DFB_NUM_PIXELFORMATS 41
/* These macros extract information about the pixel format. */ /* These macros extract information about the pixel format. */
#define DFB_PIXELFORMAT_INDEX(fmt) (((fmt) & 0x0000007F) ) #define DFB_PIXELFORMAT_INDEX(fmt) (((fmt) & 0x0000007F) )
#define DFB_COLOR_BITS_PER_PIXEL(fmt) (((fmt) & 0x00000F80) >> 7) #define DFB_COLOR_BITS_PER_PIXEL(fmt) (((fmt) & 0x00000F80) >> 7)
skipping to change at line 1760 skipping to change at line 1760
DVCAPS_INTERLACED = 0x00000004, /* supports interlaced surfaces */ DVCAPS_INTERLACED = 0x00000004, /* supports interlaced surfaces */
DVCAPS_SPEED = 0x00000008, /* supports changing playback speed */ DVCAPS_SPEED = 0x00000008, /* supports changing playback speed */
DVCAPS_BRIGHTNESS = 0x00000010, /* supports Brightness adjustment */ DVCAPS_BRIGHTNESS = 0x00000010, /* supports Brightness adjustment */
DVCAPS_CONTRAST = 0x00000020, /* supports Contrast adjustment */ DVCAPS_CONTRAST = 0x00000020, /* supports Contrast adjustment */
DVCAPS_HUE = 0x00000040, /* supports Hue adjustment */ DVCAPS_HUE = 0x00000040, /* supports Hue adjustment */
DVCAPS_SATURATION = 0x00000080, /* supports Saturation adjustment */ DVCAPS_SATURATION = 0x00000080, /* supports Saturation adjustment */
DVCAPS_INTERACTIVE = 0x00000100, /* supports SendEvent */ DVCAPS_INTERACTIVE = 0x00000100, /* supports SendEvent */
DVCAPS_VOLUME = 0x00000200, /* supports Volume adjustment */ DVCAPS_VOLUME = 0x00000200, /* supports Volume adjustment */
DVCAPS_EVENT = 0x00000400, /* supports the sending of events as video/audio data changes.*/ DVCAPS_EVENT = 0x00000400, /* supports the sending of events as video/audio data changes.*/
DVCAPS_ATTRIBUTES = 0x00000800, /* supports dynamic changing of atrr ibutes.*/ DVCAPS_ATTRIBUTES = 0x00000800, /* supports dynamic changing of atrr ibutes.*/
DVCAPS_AUDIO_SEL = 0x00001000, /* Supportes chosing audio outputs.* / DVCAPS_AUDIO_SEL = 0x00001000 /* Supportes chosing audio outputs.* /
} DFBVideoProviderCapabilities; } DFBVideoProviderCapabilities;
/* /*
* Information about the status of an IDirectFBVideoProvider. * Information about the status of an IDirectFBVideoProvider.
*/ */
typedef enum { typedef enum {
DVSTATE_UNKNOWN = 0x00000000, /* unknown status */ DVSTATE_UNKNOWN = 0x00000000, /* unknown status */
DVSTATE_PLAY = 0x00000001, /* video provider is playing */ DVSTATE_PLAY = 0x00000001, /* video provider is playing */
DVSTATE_STOP = 0x00000002, /* playback was stopped */ DVSTATE_STOP = 0x00000002, /* playback was stopped */
DVSTATE_FINISHED = 0x00000003, /* playback is finished */ DVSTATE_FINISHED = 0x00000003, /* playback is finished */
skipping to change at line 1795 skipping to change at line 1795
/* /*
* Flags to allow Audio Unit selection. * Flags to allow Audio Unit selection.
*/ */
typedef enum { typedef enum {
DVAUDIOUNIT_NONE = 0x00000000, /* No Audio Unit */ DVAUDIOUNIT_NONE = 0x00000000, /* No Audio Unit */
DVAUDIOUNIT_ONE = 0x00000001, /* Audio Unit One */ DVAUDIOUNIT_ONE = 0x00000001, /* Audio Unit One */
DVAUDIOUNIT_TWO = 0x00000002, /* Audio Unit Two */ DVAUDIOUNIT_TWO = 0x00000002, /* Audio Unit Two */
DVAUDIOUNIT_THREE = 0x00000004, /* Audio Unit Three */ DVAUDIOUNIT_THREE = 0x00000004, /* Audio Unit Three */
DVAUDIOUNIT_FOUR = 0x00000008, /* Audio Unit Four */ DVAUDIOUNIT_FOUR = 0x00000008, /* Audio Unit Four */
DVAUDIOUNIT_ALL = 0x0000000F, /* Audio Unit One */ DVAUDIOUNIT_ALL = 0x0000000F /* Audio Unit One */
} DFBVideoProviderAudioUnits; } DFBVideoProviderAudioUnits;
/* /*
* Flags defining which fields of a DFBColorAdjustment are valid. * Flags defining which fields of a DFBColorAdjustment are valid.
*/ */
typedef enum { typedef enum {
DCAF_NONE = 0x00000000, /* none of these */ DCAF_NONE = 0x00000000, /* none of these */
DCAF_BRIGHTNESS = 0x00000001, /* brightness field is valid */ DCAF_BRIGHTNESS = 0x00000001, /* brightness field is valid */
DCAF_CONTRAST = 0x00000002, /* contrast field is valid */ DCAF_CONTRAST = 0x00000002, /* contrast field is valid */
DCAF_HUE = 0x00000004, /* hue field is valid */ DCAF_HUE = 0x00000004, /* hue field is valid */
skipping to change at line 2420 skipping to change at line 2420
typedef enum { typedef enum {
DSOC_UNKNOWN = 0x00000000, /* Unknown type */ DSOC_UNKNOWN = 0x00000000, /* Unknown type */
DSOC_VGA = 0x00000001, /* VGA connector */ DSOC_VGA = 0x00000001, /* VGA connector */
DSOC_SCART = 0x00000002, /* SCART connector */ DSOC_SCART = 0x00000002, /* SCART connector */
DSOC_YC = 0x00000004, /* Y/C connector */ DSOC_YC = 0x00000004, /* Y/C connector */
DSOC_CVBS = 0x00000008, /* CVBS connector */ DSOC_CVBS = 0x00000008, /* CVBS connector */
DSOC_SCART2 = 0x00000010, /* 2nd SCART connector */ DSOC_SCART2 = 0x00000010, /* 2nd SCART connector */
DSOC_COMPONENT = 0x00000020, /* Component video connector */ DSOC_COMPONENT = 0x00000020, /* Component video connector */
DSOC_HDMI = 0x00000040, /* HDMI connector */ DSOC_HDMI = 0x00000040, /* HDMI connector */
DSOC_656 = 0x00000080, /* DVO connector */ DSOC_656 = 0x00000080 /* DVO connector */
} DFBScreenOutputConnectors; } DFBScreenOutputConnectors;
/* /*
* Type of output signal. * Type of output signal.
*/ */
typedef enum { typedef enum {
DSOS_NONE = 0x00000000, /* No signal */ DSOS_NONE = 0x00000000, /* No signal */
DSOS_VGA = 0x00000001, /* VGA signal */ DSOS_VGA = 0x00000001, /* VGA signal */
DSOS_YC = 0x00000002, /* Y/C signal */ DSOS_YC = 0x00000002, /* Y/C signal */
skipping to change at line 2599 skipping to change at line 2599
DSEF_UNKNOWN = 0x00000000, /* Unknown Frequency */ DSEF_UNKNOWN = 0x00000000, /* Unknown Frequency */
DSEF_25HZ = 0x00000001, /* 25 Hz Output. */ DSEF_25HZ = 0x00000001, /* 25 Hz Output. */
DSEF_29_97HZ = 0x00000002, /* 29.97 Hz Output. */ DSEF_29_97HZ = 0x00000002, /* 29.97 Hz Output. */
DSEF_50HZ = 0x00000004, /* 50 Hz Output. */ DSEF_50HZ = 0x00000004, /* 50 Hz Output. */
DSEF_59_94HZ = 0x00000008, /* 59.94 Hz Output. */ DSEF_59_94HZ = 0x00000008, /* 59.94 Hz Output. */
DSEF_60HZ = 0x00000010, /* 60 Hz Output. */ DSEF_60HZ = 0x00000010, /* 60 Hz Output. */
DSEF_75HZ = 0x00000020, /* 75 Hz Output. */ DSEF_75HZ = 0x00000020, /* 75 Hz Output. */
DSEF_30HZ = 0x00000040, /* 30 Hz Output. */ DSEF_30HZ = 0x00000040, /* 30 Hz Output. */
DSEF_24HZ = 0x00000080, /* 24 Hz Output. */ DSEF_24HZ = 0x00000080, /* 24 Hz Output. */
DSEF_23_976HZ = 0x00000100, /* 23.976 Hz Output. */ DSEF_23_976HZ = 0x00000100 /* 23.976 Hz Output. */
} DFBScreenEncoderFrequency; } DFBScreenEncoderFrequency;
/* /*
* Encoder picture delivery method. * Encoder picture delivery method.
* See HDMI Specification 1.4a - Extraction of 3D signaling portion for mor e details * See HDMI Specification 1.4a - Extraction of 3D signaling portion for mor e details
*/ */
typedef enum { typedef enum {
DSEPF_UNKNOWN = 0, DSEPF_UNKNOWN = 0,
DSEPF_MONO = 0x00000001, /* Normal output to non-stereoscopic (3D) TV. No DSEPF_MONO = 0x00000001, /* Normal output to non-stereoscopic (3D) TV. No
L/R content provi ded to TV. Frame is output on L/R content provi ded to TV. Frame is output on
skipping to change at line 3548 skipping to change at line 3548
DSPD_SRC_OVER = 3, /* fs: 1.0 fd: 1.0-sa */ DSPD_SRC_OVER = 3, /* fs: 1.0 fd: 1.0-sa */
DSPD_DST_OVER = 4, /* fs: 1.0-da fd: 1.0 */ DSPD_DST_OVER = 4, /* fs: 1.0-da fd: 1.0 */
DSPD_SRC_IN = 5, /* fs: da fd: 0.0 */ DSPD_SRC_IN = 5, /* fs: da fd: 0.0 */
DSPD_DST_IN = 6, /* fs: 0.0 fd: sa */ DSPD_DST_IN = 6, /* fs: 0.0 fd: sa */
DSPD_SRC_OUT = 7, /* fs: 1.0-da fd: 0.0 */ DSPD_SRC_OUT = 7, /* fs: 1.0-da fd: 0.0 */
DSPD_DST_OUT = 8, /* fs: 0.0 fd: 1.0-sa */ DSPD_DST_OUT = 8, /* fs: 0.0 fd: 1.0-sa */
DSPD_SRC_ATOP = 9, /* fs: da fd: 1.0-sa */ DSPD_SRC_ATOP = 9, /* fs: da fd: 1.0-sa */
DSPD_DST_ATOP = 10, /* fs: 1.0-da fd: sa */ DSPD_DST_ATOP = 10, /* fs: 1.0-da fd: sa */
DSPD_ADD = 11, /* fs: 1.0 fd: 1.0 */ DSPD_ADD = 11, /* fs: 1.0 fd: 1.0 */
DSPD_XOR = 12, /* fs: 1.0-da fd: 1.0-sa */ DSPD_XOR = 12, /* fs: 1.0-da fd: 1.0-sa */
DSPD_DST = 13, /* fs: 0.0 fd: 1.0 */ DSPD_DST = 13 /* fs: 0.0 fd: 1.0 */
} DFBSurfacePorterDuffRule; } DFBSurfacePorterDuffRule;
/* /*
* Blend functions to use for source and destination blending * Blend functions to use for source and destination blending
*/ */
typedef enum { typedef enum {
/* /*
* pixel color = sc * cf[sf] + dc * cf[df] * pixel color = sc * cf[sf] + dc * cf[df]
* pixel alpha = sa * af[sf] + da * af[df] * pixel alpha = sa * af[sf] + da * af[df]
* sc = source color * sc = source color
skipping to change at line 3578 skipping to change at line 3578
DSBF_ZERO = 1, /* cf: 0 af: 0 */ DSBF_ZERO = 1, /* cf: 0 af: 0 */
DSBF_ONE = 2, /* cf: 1 af: 1 */ DSBF_ONE = 2, /* cf: 1 af: 1 */
DSBF_SRCCOLOR = 3, /* cf: sc af: sa */ DSBF_SRCCOLOR = 3, /* cf: sc af: sa */
DSBF_INVSRCCOLOR = 4, /* cf: 1-sc af: 1-sa */ DSBF_INVSRCCOLOR = 4, /* cf: 1-sc af: 1-sa */
DSBF_SRCALPHA = 5, /* cf: sa af: sa */ DSBF_SRCALPHA = 5, /* cf: sa af: sa */
DSBF_INVSRCALPHA = 6, /* cf: 1-sa af: 1-sa */ DSBF_INVSRCALPHA = 6, /* cf: 1-sa af: 1-sa */
DSBF_DESTALPHA = 7, /* cf: da af: da */ DSBF_DESTALPHA = 7, /* cf: da af: da */
DSBF_INVDESTALPHA = 8, /* cf: 1-da af: 1-da */ DSBF_INVDESTALPHA = 8, /* cf: 1-da af: 1-da */
DSBF_DESTCOLOR = 9, /* cf: dc af: da */ DSBF_DESTCOLOR = 9, /* cf: dc af: da */
DSBF_INVDESTCOLOR = 10, /* cf: 1-dc af: 1-da */ DSBF_INVDESTCOLOR = 10, /* cf: 1-dc af: 1-da */
DSBF_SRCALPHASAT = 11, /* cf: min(sa, 1-da) af: 1 */ DSBF_SRCALPHASAT = 11 /* cf: min(sa, 1-da) af: 1 */
} DFBSurfaceBlendFunction; } DFBSurfaceBlendFunction;
/* /*
* Transformed vertex of a textured triangle. * Transformed vertex of a textured triangle.
*/ */
typedef struct { typedef struct {
float x; /* Destination X coordinate (in pixels) */ float x; /* Destination X coordinate (in pixels) */
float y; /* Destination Y coordinate (in pixels) */ float y; /* Destination Y coordinate (in pixels) */
float z; /* Z coordinate */ float z; /* Z coordinate */
float w; /* W coordinate */ float w; /* W coordinate */
skipping to change at line 3611 skipping to change at line 3611
} DFBTriangleFormation; } DFBTriangleFormation;
/* /*
* Flags controlling surface masks set via IDirectFBSurface::SetSourceMask( ). * Flags controlling surface masks set via IDirectFBSurface::SetSourceMask( ).
*/ */
typedef enum { typedef enum {
DSMF_NONE = 0x00000000, /* None of these. */ DSMF_NONE = 0x00000000, /* None of these. */
DSMF_STENCIL = 0x00000001, /* Take <b>x</b> and <b>y</b> as fixed s tart coordinates in the mask. */ DSMF_STENCIL = 0x00000001, /* Take <b>x</b> and <b>y</b> as fixed s tart coordinates in the mask. */
DSMF_ALL = 0x00000001, /* All of these. */ DSMF_ALL = 0x00000001 /* All of these. */
} DFBSurfaceMaskFlags; } DFBSurfaceMaskFlags;
/* /*
* Available Rop codes. * Available Rop codes.
*/ */
typedef enum { typedef enum {
DSROP_CLEAR = 0x00, DSROP_CLEAR = 0x00,
DSROP_XOR = 0x96, DSROP_XOR = 0x96,
DSROP_SRC_COPY = 0xCC, DSROP_SRC_COPY = 0xCC
/* TODO: to be extended with all ROP codes, possibly move to separate header file */ /* TODO: to be extended with all ROP codes, possibly move to separate header file */
} DFBSurfaceRopCode; } DFBSurfaceRopCode;
/* /*
* Available pattern mode * Available pattern mode
*/ */
typedef enum { typedef enum {
DSPM_8_8_MONO = 0, DSPM_8_8_MONO = 0,
DSPM_32_32_MONO = 1, DSPM_32_32_MONO = 1
} DFBSurfacePatternMode; } DFBSurfacePatternMode;
/* /*
* Color key polarity * Color key polarity
*/ */
typedef enum { typedef enum {
DCKP_DEFAULT = 0, DCKP_DEFAULT = 0,
DCKP_OTHER = 1 DCKP_OTHER = 1
} DFBColorKeyPolarity; } DFBColorKeyPolarity;
skipping to change at line 5111 skipping to change at line 5111
/* /*
* Event class. * Event class.
*/ */
typedef enum { typedef enum {
DFEC_NONE = 0x00, /* none of these */ DFEC_NONE = 0x00, /* none of these */
DFEC_INPUT = 0x01, /* raw input event */ DFEC_INPUT = 0x01, /* raw input event */
DFEC_WINDOW = 0x02, /* windowing event */ DFEC_WINDOW = 0x02, /* windowing event */
DFEC_USER = 0x03, /* custom event for the user of this lib rary */ DFEC_USER = 0x03, /* custom event for the user of this lib rary */
DFEC_UNIVERSAL = 0x04, /* universal event for custom usage with variable size */ DFEC_UNIVERSAL = 0x04, /* universal event for custom usage with variable size */
DFEC_VIDEOPROVIDER = 0x05, /* video provider event */ DFEC_VIDEOPROVIDER = 0x05, /* video provider event */
DFEC_SURFACE = 0x06, /* surface event */ DFEC_SURFACE = 0x06 /* surface event */
} DFBEventClass; } DFBEventClass;
/* /*
* The type of an input event. * The type of an input event.
*/ */
typedef enum { typedef enum {
DIET_UNKNOWN = 0, /* unknown event */ DIET_UNKNOWN = 0, /* unknown event */
DIET_KEYPRESS, /* a key is been pressed */ DIET_KEYPRESS, /* a key is been pressed */
DIET_KEYRELEASE, /* a key is been released */ DIET_KEYRELEASE, /* a key is been released */
DIET_BUTTONPRESS, /* a (mouse) button is been pressed */ DIET_BUTTONPRESS, /* a (mouse) button is been pressed */
skipping to change at line 5157 skipping to change at line 5157
DIEF_GLOBAL = 0x0200, /* Only for event buffers creates by DIEF_GLOBAL = 0x0200, /* Only for event buffers creates by
IDirectFB::CreateInputEventBuffer() IDirectFB::CreateInputEventBuffer()
with global events enabled. with global events enabled.
Indicates that the event would have been Indicates that the event would have been
filtered if the buffer hadn't been filtered if the buffer hadn't been
global. */ global. */
DIEF_REPEAT = 0x0400, /* repeated event, e.g. key or button press */ DIEF_REPEAT = 0x0400, /* repeated event, e.g. key or button press */
DIEF_FOLLOW = 0x0800, /* another event will follow immediate ly, e.g. x/y axis */ DIEF_FOLLOW = 0x0800, /* another event will follow immediate ly, e.g. x/y axis */
DIEF_MIN = 0x1000, /* minimum value is set, e.g. for abso lute axis motion */ DIEF_MIN = 0x1000, /* minimum value is set, e.g. for abso lute axis motion */
DIEF_MAX = 0x2000, /* maximum value is set, e.g. for abso lute axis motion */ DIEF_MAX = 0x2000 /* maximum value is set, e.g. for abso lute axis motion */
} DFBInputEventFlags; } DFBInputEventFlags;
/* /*
* An input event, item of an input buffer. * An input event, item of an input buffer.
*/ */
typedef struct { typedef struct {
DFBEventClass clazz; /* clazz of event */ DFBEventClass clazz; /* clazz of event */
DFBInputEventType type; /* type of event */ DFBInputEventType type; /* type of event */
DFBInputDeviceID device_id; /* source of event */ DFBInputDeviceID device_id; /* source of event */
skipping to change at line 5368 skipping to change at line 5368
} DFBWindowEvent; } DFBWindowEvent;
/* /*
* Video Provider Event Types - can also be used as flags for event filters . * Video Provider Event Types - can also be used as flags for event filters .
*/ */
typedef enum { typedef enum {
DVPEDST_UNKNOWN = 0x00000000, /* Event is valid for unknown Data */ DVPEDST_UNKNOWN = 0x00000000, /* Event is valid for unknown Data */
DVPEDST_AUDIO = 0x00000001, /* Event is valid for Audio Data */ DVPEDST_AUDIO = 0x00000001, /* Event is valid for Audio Data */
DVPEDST_VIDEO = 0x00000002, /* Event is valid for Video Data */ DVPEDST_VIDEO = 0x00000002, /* Event is valid for Video Data */
DVPEDST_DATA = 0x00000004, /* Event is valid for Data types */ DVPEDST_DATA = 0x00000004, /* Event is valid for Data types */
DVPEDST_ALL = 0x00000007, /* Event is valid for all Data type s */ DVPEDST_ALL = 0x00000007 /* Event is valid for all Data type s */
} DFBVideoProviderEventDataSubType; } DFBVideoProviderEventDataSubType;
/* /*
* Event from the video provider * Event from the video provider
*/ */
typedef struct { typedef struct {
DFBEventClass clazz; /* clazz of event */ DFBEventClass clazz; /* clazz of event */
DFBVideoProviderEventType type; /* type of event */ DFBVideoProviderEventType type; /* type of event */
skipping to change at line 5398 skipping to change at line 5398
typedef struct { typedef struct {
DFBEventClass clazz; /* clazz of event */ DFBEventClass clazz; /* clazz of event */
DFBSurfaceEventType type; /* type of event */ DFBSurfaceEventType type; /* type of event */
DFBSurfaceID surface_id; /* source of event */ DFBSurfaceID surface_id; /* source of event */
DFBRegion update; DFBRegion update;
DFBRegion update_right; DFBRegion update_right;
unsigned int flip_count; /* Serial number of frame , modulo number of buffers = buffer index */ unsigned int flip_count; /* Serial number of frame , modulo number of buffers = buffer index */
long long time_stamp; /* Micro seconds from DIR
ECT_CLOCK_MONOTONIC */
} DFBSurfaceEvent; } DFBSurfaceEvent;
/* /*
* Event for usage by the user of this library. * Event for usage by the user of this library.
*/ */
typedef struct { typedef struct {
DFBEventClass clazz; /* clazz of event */ DFBEventClass clazz; /* clazz of event */
unsigned int type; /* custom type */ unsigned int type; /* custom type */
void *data; /* custom data */ void *data; /* custom data */
skipping to change at line 6768 skipping to change at line 6770
short year; /* yea r */ short year; /* yea r */
char genre[DFB_STREAM_DESC_GENRE_LENGTH]; /* gen re */ char genre[DFB_STREAM_DESC_GENRE_LENGTH]; /* gen re */
char comment[DFB_STREAM_DESC_COMMENT_LENGTH]; /* com ment */ char comment[DFB_STREAM_DESC_COMMENT_LENGTH]; /* com ment */
} DFBStreamDescription; } DFBStreamDescription;
/* /*
* Type of an audio stream. * Type of an audio stream.
*/ */
typedef enum { typedef enum {
DSF_ES = 0x00000000, /* ES. */ DSF_ES = 0x00000000, /* ES. */
DSF_PES = 0x00000001, /* PES. */ DSF_PES = 0x00000001 /* PES. */
} DFBStreamFormat; } DFBStreamFormat;
/* /*
* Stream attributes for an audio/video stream. * Stream attributes for an audio/video stream.
*/ */
typedef struct { typedef struct {
struct { struct {
char encoding[DFB_STREAM_DESC_ENCODING_LENGTH]; /* enc oding (e.g. "MPEG4") */ char encoding[DFB_STREAM_DESC_ENCODING_LENGTH]; /* enc oding (e.g. "MPEG4") */
DFBStreamFormat format; /* for mat of the video stream */ DFBStreamFormat format; /* for mat of the video stream */
} video; /* struct containing the above two encoding properties for video */ } video; /* struct containing the above two encoding properties for video */
 End of changes. 21 change blocks. 
23 lines changed or deleted 26 lines changed or added


 directfb_keyboard.h   directfb_keyboard.h 
skipping to change at line 461 skipping to change at line 461
DIKS_CURSOR_LEFT_UP = DFB_KEY( SPECIAL, 0x64 ), DIKS_CURSOR_LEFT_UP = DFB_KEY( SPECIAL, 0x64 ),
DIKS_CURSOR_LEFT_DOWN = DFB_KEY( SPECIAL, 0x65 ), DIKS_CURSOR_LEFT_DOWN = DFB_KEY( SPECIAL, 0x65 ),
DIKS_CURSOR_UP_RIGHT = DFB_KEY( SPECIAL, 0x66 ), DIKS_CURSOR_UP_RIGHT = DFB_KEY( SPECIAL, 0x66 ),
DIKS_CURSOR_DOWN_RIGHT = DFB_KEY( SPECIAL, 0x67 ), DIKS_CURSOR_DOWN_RIGHT = DFB_KEY( SPECIAL, 0x67 ),
DIKS_PIP = DFB_KEY( SPECIAL, 0x68 ), DIKS_PIP = DFB_KEY( SPECIAL, 0x68 ),
DIKS_SWAP = DFB_KEY( SPECIAL, 0x69 ), DIKS_SWAP = DFB_KEY( SPECIAL, 0x69 ),
DIKS_FREEZE = DFB_KEY( SPECIAL, 0x6A ), DIKS_FREEZE = DFB_KEY( SPECIAL, 0x6A ),
DIKS_MOVE = DFB_KEY( SPECIAL, 0x6B ), DIKS_MOVE = DFB_KEY( SPECIAL, 0x6B ),
DIKS_CALL = DFB_KEY( SPECIAL, 0x6C ),
DIKS_SPEAKER = DFB_KEY( SPECIAL, 0x6D ),
DIKS_SAVE = DFB_KEY( SPECIAL, 0x6E ),
DIKS_REDIAL = DFB_KEY( SPECIAL, 0x6F ),
DIKS_FLASH = DFB_KEY( SPECIAL, 0x70 ),
DIKS_HOLD = DFB_KEY( SPECIAL, 0x71 ),
/* /*
* Unicode private area - DirectFB Function keys * Unicode private area - DirectFB Function keys
* *
* More function keys are available via DFB_FUNCTION_KEY(n). * More function keys are available via DFB_FUNCTION_KEY(n).
*/ */
DIKS_F1 = DFB_FUNCTION_KEY( 1 ), DIKS_F1 = DFB_FUNCTION_KEY( 1 ),
DIKS_F2 = DFB_FUNCTION_KEY( 2 ), DIKS_F2 = DFB_FUNCTION_KEY( 2 ),
DIKS_F3 = DFB_FUNCTION_KEY( 3 ), DIKS_F3 = DFB_FUNCTION_KEY( 3 ),
DIKS_F4 = DFB_FUNCTION_KEY( 4 ), DIKS_F4 = DFB_FUNCTION_KEY( 4 ),
DIKS_F5 = DFB_FUNCTION_KEY( 5 ), DIKS_F5 = DFB_FUNCTION_KEY( 5 ),
 End of changes. 1 change blocks. 
0 lines changed or deleted 7 lines changed or added


 directfb_keynames.h   directfb_keynames.h 
skipping to change at line 219 skipping to change at line 219
{ DIKS_EXIT, "EXIT" }, \ { DIKS_EXIT, "EXIT" }, \
{ DIKS_SETUP, "SETUP" }, \ { DIKS_SETUP, "SETUP" }, \
{ DIKS_CURSOR_LEFT_UP, "CURSOR_LEFT_UP" }, \ { DIKS_CURSOR_LEFT_UP, "CURSOR_LEFT_UP" }, \
{ DIKS_CURSOR_LEFT_DOWN, "CURSOR_LEFT_DOWN" }, \ { DIKS_CURSOR_LEFT_DOWN, "CURSOR_LEFT_DOWN" }, \
{ DIKS_CURSOR_UP_RIGHT, "CURSOR_UP_RIGHT" }, \ { DIKS_CURSOR_UP_RIGHT, "CURSOR_UP_RIGHT" }, \
{ DIKS_CURSOR_DOWN_RIGHT, "CURSOR_DOWN_RIGHT" }, \ { DIKS_CURSOR_DOWN_RIGHT, "CURSOR_DOWN_RIGHT" }, \
{ DIKS_PIP, "PIP" }, \ { DIKS_PIP, "PIP" }, \
{ DIKS_SWAP, "SWAP" }, \ { DIKS_SWAP, "SWAP" }, \
{ DIKS_FREEZE, "FREEZE" }, \ { DIKS_FREEZE, "FREEZE" }, \
{ DIKS_MOVE, "MOVE" }, \ { DIKS_MOVE, "MOVE" }, \
{ DIKS_CALL, "CALL" }, \
{ DIKS_SPEAKER, "SPEAKER" }, \
{ DIKS_SAVE, "SAVE" }, \
{ DIKS_REDIAL, "REDIAL" }, \
{ DIKS_FLASH, "FLASH" }, \
{ DIKS_HOLD, "HOLD" }, \
{ DIKS_F1, "F1" }, \ { DIKS_F1, "F1" }, \
{ DIKS_F2, "F2" }, \ { DIKS_F2, "F2" }, \
{ DIKS_F3, "F3" }, \ { DIKS_F3, "F3" }, \
{ DIKS_F4, "F4" }, \ { DIKS_F4, "F4" }, \
{ DIKS_F5, "F5" }, \ { DIKS_F5, "F5" }, \
{ DIKS_F6, "F6" }, \ { DIKS_F6, "F6" }, \
{ DIKS_F7, "F7" }, \ { DIKS_F7, "F7" }, \
{ DIKS_F8, "F8" }, \ { DIKS_F8, "F8" }, \
{ DIKS_F9, "F9" }, \ { DIKS_F9, "F9" }, \
{ DIKS_F10, "F10" }, \ { DIKS_F10, "F10" }, \
 End of changes. 1 change blocks. 
0 lines changed or deleted 6 lines changed or added


 directfb_strings.h   directfb_strings.h 
#ifndef __DIRECTFB_STRINGS_H__ #ifndef __DIRECTFB_STRINGS_H__
#define __DIRECTFB_STRINGS_H__ #define __DIRECTFB_STRINGS_H__
#include <directfb.h> #include <directfb.h>
#include <directfb_water.h>
struct DFBPixelFormatName { struct DFBPixelFormatName {
DFBSurfacePixelFormat format; DFBSurfacePixelFormat format;
const char *name; const char *name;
}; };
#define DirectFBPixelFormatNames(Identifier) struct DFBPixelFormatName Iden tifier[] = { \ #define DirectFBPixelFormatNames(Identifier) struct DFBPixelFormatName Iden tifier[] = { \
{ DSPF_ARGB1555, "ARGB1555" }, \ { DSPF_ARGB1555, "ARGB1555" }, \
{ DSPF_RGB16, "RGB16" }, \ { DSPF_RGB16, "RGB16" }, \
{ DSPF_RGB24, "RGB24" }, \ { DSPF_RGB24, "RGB24" }, \
skipping to change at line 555 skipping to change at line 554
{ DFXL_FILLQUADRANGLE, "FILLQUADRANGLE" }, \ { DFXL_FILLQUADRANGLE, "FILLQUADRANGLE" }, \
{ DFXL_DRAWMONOGLYPH, "DRAWMONOGLYPH" }, \ { DFXL_DRAWMONOGLYPH, "DRAWMONOGLYPH" }, \
{ DFXL_BLIT, "BLIT" }, \ { DFXL_BLIT, "BLIT" }, \
{ DFXL_STRETCHBLIT, "STRETCHBLIT" }, \ { DFXL_STRETCHBLIT, "STRETCHBLIT" }, \
{ DFXL_TEXTRIANGLES, "TEXTRIANGLES" }, \ { DFXL_TEXTRIANGLES, "TEXTRIANGLES" }, \
{ DFXL_BLIT2, "BLIT2" }, \ { DFXL_BLIT2, "BLIT2" }, \
{ DFXL_DRAWSTRING, "DRAWSTRING" }, \ { DFXL_DRAWSTRING, "DRAWSTRING" }, \
{ DFXL_NONE, "NONE" } \ { DFXL_NONE, "NONE" } \
}; };
struct DFBWaterElementTypeName {
WaterElementType type;
const char *name;
};
#define DirectFBWaterElementTypeNames(Identifier) struct DFBWaterElementTyp
eName Identifier[] = { \
{ WET_POINT, "POINT" }, \
{ WET_SPAN, "SPAN" }, \
{ WET_LINE, "LINE" }, \
{ WET_LINE_STRIP, "LINE_STRIP" }, \
{ WET_LINE_LOOP, "LINE_LOOP" }, \
{ WET_TRIANGLE, "TRIANGLE" }, \
{ WET_TRIANGLE_FAN, "TRIANGLE_FAN" }, \
{ WET_TRIANGLE_STRIP, "TRIANGLE_STRIP" }, \
{ WET_RECTANGLE, "RECTANGLE" }, \
{ WET_RECTANGLE_STRIP, "RECTANGLE_STRIP" }, \
{ WET_TRAPEZOID, "TRAPEZOID" }, \
{ WET_TRAPEZOID_STRIP, "TRAPEZOID_STRIP" }, \
{ WET_QUADRANGLE, "QUADRANGLE" }, \
{ WET_QUADRANGLE_STRIP, "QUADRANGLE_STRIP" }, \
{ WET_POLYGON, "POLYGON" }, \
{ WET_CIRCLE, "CIRCLE" }, \
{ WET_ELLIPSE, "ELLIPSE" }, \
{ WET_ARC_CIRCLE, "ARC_CIRCLE" }, \
{ WET_ARC_ELLIPSE, "ARC_ELLIPSE" }, \
{ WET_QUAD_CURVE, "QUAD_CURVE" }, \
{ WET_QUAD_CURVE_STRIP, "QUAD_CURVE_STRIP" }, \
{ WET_CUBIC_CURVE, "CUBIC_CURVE" }, \
{ WET_CUBIC_CURVE_STRIP, "CUBIC_CURVE_STRIP" }, \
{ WET_UNKNOWN, "UNKNOWN" } \
};
#endif #endif
 End of changes. 2 change blocks. 
34 lines changed or deleted 0 lines changed or added


 directfb_version.h   directfb_version.h 
skipping to change at line 34 skipping to change at line 34
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __DIRECTFB_VERSION_H__ #ifndef __DIRECTFB_VERSION_H__
#define __DIRECTFB_VERSION_H__ #define __DIRECTFB_VERSION_H__
#define DIRECTFB_MAJOR_VERSION (1) #define DIRECTFB_MAJOR_VERSION (1)
#define DIRECTFB_MINOR_VERSION (6) #define DIRECTFB_MINOR_VERSION (6)
#define DIRECTFB_MICRO_VERSION (2) #define DIRECTFB_MICRO_VERSION (3)
#define DIRECTFB_BINARY_AGE (2) #define DIRECTFB_BINARY_AGE (3)
#define DIRECTFB_INTERFACE_AGE (0) #define DIRECTFB_INTERFACE_AGE (0)
#endif /* __DIRECTFB_VERSION_H__ */ #endif /* __DIRECTFB_VERSION_H__ */
 End of changes. 1 change blocks. 
2 lines changed or deleted 2 lines changed or added


 directfb_water.h   directfb_water.h 
skipping to change at line 83 skipping to change at line 83
* Type of scalar [4] * Type of scalar [4]
* *
* See also WaterScalar * See also WaterScalar
*/ */
typedef enum { typedef enum {
WST_UNKNOWN = 0x0, /* Unknown/invalid scalar type */ WST_UNKNOWN = 0x0, /* Unknown/invalid scalar type */
WST_INTEGER = 0x1, /* Ordinary (pure) integer value (32 bit ) */ WST_INTEGER = 0x1, /* Ordinary (pure) integer value (32 bit ) */
WST_FIXED_16_16 = 0x2, /* Fixed point with 16 <b>sign</b>+<b>in tegral</b> and 16 <b>fractional</b> bits */ WST_FIXED_16_16 = 0x2, /* Fixed point with 16 <b>sign</b>+<b>in tegral</b> and 16 <b>fractional</b> bits */
WST_FIXED_24_8 = 0x3, /* Fixed point with 24 <b>sign</b>+<b>in tegral</b> and 8 <b>fractional</b> bits */ WST_FIXED_24_8 = 0x3, /* Fixed point with 24 <b>sign</b>+<b>in tegral</b> and 8 <b>fractional</b> bits */
WST_FLOAT = 0x4, /* Single precision floating point value (32 bit) */ WST_FLOAT = 0x4 /* Single precision floating point value (32 bit) */
} WaterScalarType; } WaterScalarType;
/* /*
* Macro determines if scalar is an ordinary (pure) integer or fixed point integer * Macro determines if scalar is an ordinary (pure) integer or fixed point integer
*/ */
#define WATER_SCALAR_TYPE_IS_INT(type) ((type) >= 0x1 && (type) <= 0x 3) #define WATER_SCALAR_TYPE_IS_INT(type) ((type) >= 0x1 && (type) <= 0x 3)
/* /*
* Macro determines if scalar is a single precision float * Macro determines if scalar is a single precision float
*/ */
skipping to change at line 105 skipping to change at line 105
/* /*
* The way values are applied [4] * The way values are applied [4]
*/ */
typedef enum { typedef enum {
WOP_SET = 0x0, /* Set the value */ WOP_SET = 0x0, /* Set the value */
WOP_ADD = 0x1, /* Add the value */ WOP_ADD = 0x1, /* Add the value */
WOP_SUB = 0x2, /* Subtract the value */ WOP_SUB = 0x2, /* Subtract the value */
WOP_MUL = 0x3, /* Multiply with the value */ WOP_MUL = 0x3, /* Multiply with the value */
WOP_DIV = 0x4, /* Divide by the value */ WOP_DIV = 0x4 /* Divide by the value */
} WaterOperator; } WaterOperator;
/************************************************************************** ********************************************* /************************************************************************** *********************************************
** Transformation ** Transformation
*/ */
/* /*
* Flags choosing predefined or free transformation and other things [8] * Flags choosing predefined or free transformation and other things [8]
*/ */
typedef enum { typedef enum {
skipping to change at line 129 skipping to change at line 129
WTF_MATRIX = 0x02, /* The <b>matrix</b> is filled with all 3x3 values */ WTF_MATRIX = 0x02, /* The <b>matrix</b> is filled with all 3x3 values */
WTF_REPLACE = 0x10, /* Replace previous transform completely , otherwise append to it */ WTF_REPLACE = 0x10, /* Replace previous transform completely , otherwise append to it */
WTF_ALL = 0x13 /* All of these */ WTF_ALL = 0x13 /* All of these */
} WaterTransformFlags; } WaterTransformFlags;
/* /*
* Common types of transformations [16] * Common types of transformations [16]
*/ */
typedef enum { typedef enum {
WTT_NONE = 0x0000, /* No specific type, arbitrary transform */ WTT_IDENTITY = 0x0000, /* No specific type, arbitrary transform */
WTT_ZERO = 0x0001, WTT_UNKNOWN = 0x0001,
WTT_IDENTITY = 0x0002, WTT_ZERO = 0x0002,
WTT_TRANSLATE_X = 0x0004, WTT_TRANSLATE_X = 0x0004,
WTT_TRANSLATE_Y = 0x0008, WTT_TRANSLATE_Y = 0x0008,
WTT_TRANSLATE_MASK = 0x000C, WTT_TRANSLATE_MASK = 0x000C,
WTT_SCALE_X = 0x0010, WTT_SCALE_X = 0x0010,
WTT_SCALE_Y = 0x0020, WTT_SCALE_Y = 0x0020,
WTT_SCALE_MASK = 0x0030, WTT_SCALE_MASK = 0x0030,
skipping to change at line 164 skipping to change at line 164
WTT_ROTATE_Q_90 = 0x1000, WTT_ROTATE_Q_90 = 0x1000,
WTT_ROTATE_Q_180 = 0x2000, WTT_ROTATE_Q_180 = 0x2000,
WTT_ROTATE_Q_270 = 0x4000, WTT_ROTATE_Q_270 = 0x4000,
WTT_ROTATE_Q_MASK = 0x7000, WTT_ROTATE_Q_MASK = 0x7000,
WTT_ROTATE_FREE = 0x8000, WTT_ROTATE_FREE = 0x8000,
WTT_ROTATE_MASK = 0xF000, WTT_ROTATE_MASK = 0xF000,
WTT_ALL = 0xF3FF, WTT_ALL = 0xF3FF
} WaterTransformType; } WaterTransformType;
/* /*
* Transform * Transform
*/ */
typedef struct { typedef struct {
WaterTransformFlags flags : 8; /* Transformation flags */ WaterTransformFlags flags : 8; /* Transformation flags */
WaterScalarType scalar : 4; /* Set scalar type for matrix entri es */ WaterScalarType scalar : 4; /* Set scalar type for matrix entri es */
unsigned int _rsrv1 : 4; /* <i>reserved bits</i> */ unsigned int _rsrv1 : 4; /* <i>reserved bits</i> */
skipping to change at line 239 skipping to change at line 239
typedef enum { typedef enum {
WTM_NONE = 0x0, /* Single tile, output bound by pattern/ mask limits */ WTM_NONE = 0x0, /* Single tile, output bound by pattern/ mask limits */
WTM_SCALE = 0x1, /* Single tile, but scaled to cover all of the destination. */ WTM_SCALE = 0x1, /* Single tile, but scaled to cover all of the destination. */
WTM_COLOR = 0x2, /* Single tile, but the area that is not covered is filled with a color, see also WTM_COLOR = 0x2, /* Single tile, but the area that is not covered is filled with a color, see also
WaterAttributeType::WAT_DRAW_TILECOLO R, WaterAttributeType::WAT_FILL_TILECOLOR. */ WaterAttributeType::WAT_DRAW_TILECOLO R, WaterAttributeType::WAT_FILL_TILECOLOR. */
WTM_REPEAT = 0x3, /* Tiles are simply repeated */ WTM_REPEAT = 0x3, /* Tiles are simply repeated */
WTM_FLIP_X = 0x4, /* Tiles are repeated, but flipped horiz ontally each column */ WTM_FLIP_X = 0x4, /* Tiles are repeated, but flipped horiz ontally each column */
WTM_FLIP_Y = 0x5, /* Tiles are repeated, but flipped verti cally each row */ WTM_FLIP_Y = 0x5, /* Tiles are repeated, but flipped verti cally each row */
WTM_FLIP_XY = 0x6, /* Tiles are flipped horizontally/vertic ally each column/row */ WTM_FLIP_XY = 0x6 /* Tiles are flipped horizontally/vertic ally each column/row */
} WaterTileMode; } WaterTileMode;
/* /*
* Quality levels [4] * Quality levels [4]
*/ */
typedef enum { typedef enum {
WQL_FAIR = 0x0, /* Performance should be OK, quality sti ll acceptable (use best possible and fast) */ WQL_FAIR = 0x0, /* Performance should be OK, quality sti ll acceptable (use best possible and fast) */
WQL_FAST = 0x1, /* Performance should be best, quality i s secondary (use best possible at fastest) */ WQL_FAST = 0x1, /* Performance should be best, quality i s secondary (use best possible at fastest) */
WQL_BEST = 0x2, /* Quality should be best, no matter wha t performance will */ WQL_BEST = 0x2, /* Quality should be best, no matter wha t performance will */
WQL_OFF = 0x3, /* Disable setting, always using worst q uality */ WQL_OFF = 0x3 /* Disable setting, always using worst q uality */
} WaterQualityLevel; } WaterQualityLevel;
/* /*
* Blend modes [8] * Blend modes [8]
*/ */
typedef enum { typedef enum {
WBM_SRC = 0x00, /* The source is copied to the destinati on. The destination is not used as input. */ WBM_SRC = 0x00, /* The source is copied to the destinati on. The destination is not used as input. */
WBM_DST = 0x01, /* The destination is left untouched. */ WBM_DST = 0x01, /* The destination is left untouched. */
WBM_SRCOVER = 0x02, /* The source is composited over the des tination. */ WBM_SRCOVER = 0x02, /* The source is composited over the des tination. */
skipping to change at line 298 skipping to change at line 298
WBM_HARDLIGHT = 0x15, /* Multiplies or screens the colors, dep endent on the source color value. */ WBM_HARDLIGHT = 0x15, /* Multiplies or screens the colors, dep endent on the source color value. */
WBM_SOFTLIGHT = 0x16, /* Darkens or lightens the colors, depen dent on the source color value. */ WBM_SOFTLIGHT = 0x16, /* Darkens or lightens the colors, depen dent on the source color value. */
WBM_DIFFERENCE = 0x17, /* Subtracts the darker of the two const ituent colors from the lighter. */ WBM_DIFFERENCE = 0x17, /* Subtracts the darker of the two const ituent colors from the lighter. */
WBM_EXCLUSION = 0x18, /* Produces an effect similar to that of 'difference', but appears as lower contrast. */ WBM_EXCLUSION = 0x18, /* Produces an effect similar to that of 'difference', but appears as lower contrast. */
WBM_HSL_HUE = 0x19, /* */ WBM_HSL_HUE = 0x19, /* */
WBM_HSL_SATURATION = 0x1A, /* */ WBM_HSL_SATURATION = 0x1A, /* */
WBM_HSL_COLOR = 0x1B, /* */ WBM_HSL_COLOR = 0x1B, /* */
WBM_HSL_LUMINOSITY = 0x1C, /* */ WBM_HSL_LUMINOSITY = 0x1C /* */
} WaterBlendMode; } WaterBlendMode;
/* /*
* Fill rules [4] * Fill rules [4]
*/ */
typedef enum { typedef enum {
WFR_NONZERO = 0x0, /* This rule determines the "insideness" of a point on the canvas by drawing a ray WFR_NONZERO = 0x0, /* This rule determines the "insideness" of a point on the canvas by drawing a ray
from that point to infinity in any di rection and then examining the places where from that point to infinity in any di rection and then examining the places where
a segment of the shape crosses the ra y. */ a segment of the shape crosses the ra y. */
WFR_EVENODD = 0x1, /* This rule determines the "insideness" of a point on the canvas by drawing a ray WFR_EVENODD = 0x1 /* This rule determines the "insideness" of a point on the canvas by drawing a ray
from that point to infinity in any di rection and counting the number of path from that point to infinity in any di rection and counting the number of path
segments from the given shape that th e ray crosses. */ segments from the given shape that th e ray crosses. */
} WaterFillRule; } WaterFillRule;
/* /*
* Style of line end points [4] * Style of line end points [4]
* *
* See also WaterAttributeType::WAT_LINE_STYLE and WaterAttributeType::WAT_ LINE_CAP_STYLE * See also WaterAttributeType::WAT_LINE_STYLE and WaterAttributeType::WAT_ LINE_CAP_STYLE
*/ */
typedef enum { typedef enum {
skipping to change at line 450 skipping to change at line 450
WAT_FILL_TRANSFORM = 0x2C, /* Set the transformation from the source, see WaterTransform */ WAT_FILL_TRANSFORM = 0x2C, /* Set the transformation from the source, see WaterTransform */
WAT_FILL_COLORKEY = 0x2D, /* Colorkey for <b>filling</b>, see WaterColor */ WAT_FILL_COLORKEY = 0x2D, /* Colorkey for <b>filling</b>, see WaterColor */
/* /*
* Line Attributes (drawing) * Line Attributes (drawing)
*/ */
WAT_LINE_WIDTH = 0x30, /* Set <b>line width</b> for stroke s, see WaterScalar */ WAT_LINE_WIDTH = 0x30, /* Set <b>line width</b> for stroke s, see WaterScalar */
WAT_LINE_CAPSTYLE = 0x31, /* Change <b>line cap</b> style, se e WaterLineCapStyle */ WAT_LINE_CAPSTYLE = 0x31, /* Change <b>line cap</b> style, se e WaterLineCapStyle */
WAT_LINE_JOINSTYLE = 0x32, /* Change <b>line join</b> style, s ee WaterLineJoinStyle */ WAT_LINE_JOINSTYLE = 0x32, /* Change <b>line join</b> style, s ee WaterLineJoinStyle */
WAT_LINE_MITER = 0x33, /* Change <b>miter limit</b>, see W aterScalar */ WAT_LINE_MITER = 0x33, /* Change <b>miter limit</b>, see W aterScalar */
WAT_LINE_DASHES = 0x34, /* Change <b>dashes</b> */ WAT_LINE_DASHES = 0x34 /* Change <b>dashes</b> */
} WaterAttributeType; } WaterAttributeType;
/* /*
* Flags per attribute [8] * Flags per attribute [8]
*/ */
typedef enum { typedef enum {
WAF_NONE = 0x00, /* None of these */ WAF_NONE = 0x00, /* None of these */
WAF_OPERATOR = 0x01, /* Indicates that a WaterOperator i s set in <b>op</b> */ WAF_OPERATOR = 0x01, /* Indicates that a WaterOperator i s set in <b>op</b> */
WAF_ALL = 0x01, /* All of these */ WAF_ALL = 0x01 /* All of these */
} WaterAttributeFlags; } WaterAttributeFlags;
/* /*
* Header of an attribute in a stream or array * Header of an attribute in a stream or array
*/ */
typedef struct { typedef struct {
WaterAttributeType type : 8; /* Attribute type */ WaterAttributeType type : 8; /* Attribute type */
WaterAttributeFlags flags : 8; /* Attribute flags */ WaterAttributeFlags flags : 8; /* Attribute flags */
WaterScalarType scalar : 4; /* Set scalar type for value s (if required) */ WaterScalarType scalar : 4; /* Set scalar type for value s (if required) */
WaterOperator operatOr : 4; /* Choose way of applying th e value(s) */ WaterOperator operatOr : 4; /* Choose way of applying th e value(s) */
skipping to change at line 492 skipping to change at line 492
*/ */
/* /*
* Gradient Types [4] * Gradient Types [4]
*/ */
typedef enum { typedef enum {
WGT_NONE = 0x0, WGT_NONE = 0x0,
WGT_LINEAR = 0x1, /* Linear gradient values: x 1 y1 x2 y2 [x color] */ WGT_LINEAR = 0x1, /* Linear gradient values: x 1 y1 x2 y2 [x color] */
WGT_RADIAL = 0x2, /* Radial gradient values: x 1 y1 r1 x2 y2 r2 [x color] */ WGT_RADIAL = 0x2, /* Radial gradient values: x 1 y1 r1 x2 y2 r2 [x color] */
WGT_CONICAL = 0x3, /* Conical gradient values: x y a [x color] */ WGT_CONICAL = 0x3 /* Conical gradient values: x y a [x color] */
} WaterGradientType; } WaterGradientType;
/* /*
* Gradient Flags [4] * Gradient Flags [4]
*/ */
typedef enum { typedef enum {
WGF_NONE = 0x00, WGF_NONE = 0x00,
WGF_ALL = 0x00 WGF_ALL = 0x00
} WaterGradientFlags; } WaterGradientFlags;
skipping to change at line 528 skipping to change at line 528
} WaterGradient; } WaterGradient;
/************************************************************************** ********************************************* /************************************************************************** *********************************************
** Patterns ** Patterns
*/ */
/* /*
* Pattern Types [4] * Pattern Types [4]
*/ */
typedef enum { typedef enum {
WPT_SURFACE = 0x0, /* Surface pattern values: id */ WPT_SURFACE = 0x0 /* Surface pattern values: id */
} WaterPatternType; } WaterPatternType;
/* /*
* Pattern Flags [4] * Pattern Flags [4]
*/ */
typedef enum { typedef enum {
WPF_NONE WPF_NONE
} WaterPatternFlags; } WaterPatternFlags;
/* /*
skipping to change at line 628 skipping to change at line 628
WET_CIRCLE = WATER_ELEMENT_TYPE( 15, 3, 3 ), /* x y r */ WET_CIRCLE = WATER_ELEMENT_TYPE( 15, 3, 3 ), /* x y r */
WET_ELLIPSE = WATER_ELEMENT_TYPE( 16, 4, 4 ), /* x y rx r y */ WET_ELLIPSE = WATER_ELEMENT_TYPE( 16, 4, 4 ), /* x y rx r y */
WET_ARC_CIRCLE = WATER_ELEMENT_TYPE( 17, 4, 4 ), /* x y r a f */ WET_ARC_CIRCLE = WATER_ELEMENT_TYPE( 17, 4, 4 ), /* x y r a f */
WET_ARC_ELLIPSE = WATER_ELEMENT_TYPE( 18, 5, 5 ), /* x y rx r y a f */ WET_ARC_ELLIPSE = WATER_ELEMENT_TYPE( 18, 5, 5 ), /* x y rx r y a f */
WET_QUAD_CURVE = WATER_ELEMENT_TYPE( 19, 4, 4 ), /* x y x2 y 2 */ WET_QUAD_CURVE = WATER_ELEMENT_TYPE( 19, 4, 4 ), /* x y x2 y 2 */
WET_QUAD_CURVE_STRIP = WATER_ELEMENT_TYPE( 20, 4, 2 ), /* x y [x2 y2] */ WET_QUAD_CURVE_STRIP = WATER_ELEMENT_TYPE( 20, 4, 2 ), /* x y [x2 y2] */
WET_CUBIC_CURVE = WATER_ELEMENT_TYPE( 21, 6, 6 ), /* x y x2 y 2 x3 y3 */ WET_CUBIC_CURVE = WATER_ELEMENT_TYPE( 21, 6, 6 ), /* x y x2 y 2 x3 y3 */
WET_CUBIC_CURVE_STRIP = WATER_ELEMENT_TYPE( 22, 6, 4 ), /* x y [x2 y2] x3 y3 */ WET_CUBIC_CURVE_STRIP = WATER_ELEMENT_TYPE( 22, 6, 4 ) /* x y [x2 y2] x3 y3 */
} WaterElementType; } WaterElementType;
#define WATER_NUM_ELEMENT_TYPES 23 #define WATER_NUM_ELEMENT_TYPES 23
/* /*
* Flags per element [12] * Flags per element [12]
*/ */
typedef enum { typedef enum {
WEF_NONE = 0x000, /* None of these */ WEF_NONE = 0x000, /* None of these */
WEF_DRAW = 0x001, /* Draw outline (low level flag), s ee also WaterShapeFlags */ WEF_DRAW = 0x001, /* Draw outline (low level flag), s ee also WaterShapeFlags */
WEF_FILL = 0x002, /* Fill area (low level flag), see also WaterShapeFlags */ WEF_FILL = 0x002, /* Fill area (low level flag), see also WaterShapeFlags */
WEF_CONTINUE = 0x010, /* Skip first x/y, using last x/y f rom previous element */ WEF_CONTINUE = 0x010, /* Skip first x/y, using last x/y f rom previous element */
WEF_CLOSE = 0x020, WEF_CLOSE = 0x020,
WEF_ARC_LARGE = 0x100, /* Large arc flag */ WEF_ARC_LARGE = 0x100, /* Large arc flag */
WEF_ARC_SWEEP = 0x200, /* Sweep flag */ WEF_ARC_SWEEP = 0x200, /* Sweep flag */
WEF_ALL = 0x333, /* All of these */ WEF_ALL = 0x333 /* All of these */
} WaterElementFlags; } WaterElementFlags;
/* /*
* Base header of an element in a stream or array * Base header of an element in a stream or array
*/ */
typedef struct { typedef struct {
WaterElementType type : 16; /* Element type */ WaterElementType type : 16; /* Element type */
WaterElementFlags flags : 12; /* Element flags */ WaterElementFlags flags : 12; /* Element flags */
WaterScalarType scalar : 4; /* Scalar type */ WaterScalarType scalar : 4; /* Scalar type */
} WaterElementHeader; } WaterElementHeader;
skipping to change at line 685 skipping to change at line 685
* Flags per shape [8] * Flags per shape [8]
*/ */
typedef enum { typedef enum {
WSF_NONE = 0x00, /* None of these */ WSF_NONE = 0x00, /* None of these */
WSF_STROKE = 0x01, /* Draw along outlines of elements */ WSF_STROKE = 0x01, /* Draw along outlines of elements */
WSF_FILL = 0x02, /* Fill area of shape according to fill rule, see WaterFillRule */ WSF_FILL = 0x02, /* Fill area of shape according to fill rule, see WaterFillRule */
WSF_OPACITY = 0x10, /* Apply opacity to the shape (all joints are lit) */ WSF_OPACITY = 0x10, /* Apply opacity to the shape (all joints are lit) */
WSF_ALL = 0x13, /* All of these */ WSF_ALL = 0x13 /* All of these */
} WaterShapeFlags; } WaterShapeFlags;
typedef struct { typedef struct {
WaterShapeFlags flags : 8; /* Flags for this shape */ WaterShapeFlags flags : 8; /* Flags for this shape */
WaterScalarType scalar : 4; /* Scalar type for opacity */ WaterScalarType scalar : 4; /* Scalar type for opacity */
unsigned int _rsrv1 : 20; /* <i>reserved bits</i> */ unsigned int _rsrv1 : 20; /* <i>reserved bits</i> */
WaterScalar opacity; /* Opacity of shape, applied o nly when WSF_OPACITY is set */ WaterScalar opacity; /* Opacity of shape, applied o nly when WSF_OPACITY is set */
} WaterShapeHeader; } WaterShapeHeader;
 End of changes. 16 change blocks. 
17 lines changed or deleted 17 lines changed or added


 gfxcard.h   gfxcard.h 
skipping to change at line 354 skipping to change at line 354
GDLF_WAIT = 0x00000001, GDLF_WAIT = 0x00000001,
GDLF_SYNC = 0x00000002, GDLF_SYNC = 0x00000002,
GDLF_INVALIDATE = 0x00000004, GDLF_INVALIDATE = 0x00000004,
GDLF_RESET = 0x00000008 GDLF_RESET = 0x00000008
} GraphicsDeviceLockFlags; } GraphicsDeviceLockFlags;
DFBResult dfb_gfxcard_lock( GraphicsDeviceLockFlags flags ); DFBResult dfb_gfxcard_lock( GraphicsDeviceLockFlags flags );
void dfb_gfxcard_unlock( void ); void dfb_gfxcard_unlock( void );
DFBResult dfb_gfxcard_flush( void );
bool dfb_gfxcard_state_check( CardState *state, DFBAccelerationMask accel ) ; bool dfb_gfxcard_state_check( CardState *state, DFBAccelerationMask accel ) ;
void dfb_gfxcard_state_init( CardState *state ); void dfb_gfxcard_state_init( CardState *state );
void dfb_gfxcard_state_destroy( CardState *state ); void dfb_gfxcard_state_destroy( CardState *state );
/* /*
* Signal beginning of a sequence of operations using this state. * Signal beginning of a sequence of operations using this state.
* Any number of states can be 'drawing'. * Any number of states can be 'drawing'.
*/ */
void dfb_gfxcard_start_drawing( CoreGraphicsDevice *device, void dfb_gfxcard_start_drawing( CoreGraphicsDevice *device,
skipping to change at line 566 skipping to change at line 568
FusionSkirmish lock; FusionSkirmish lock;
GraphicsDeviceLockFlags lock_flags; GraphicsDeviceLockFlags lock_flags;
/* /*
* Points to the current state of the graphics card. * Points to the current state of the graphics card.
*/ */
CardState *state; CardState *state;
FusionID holder; /* Fusion ID of state owner. */ FusionID holder; /* Fusion ID of state owner. */
FusionObjectID last_allocation_id; FusionObjectID last_allocation_id;
DFBAccelerationMask last_op;
bool pending_ops; bool pending_ops;
} DFBGraphicsCoreShared; } DFBGraphicsCoreShared;
struct __DFB_DFBGraphicsCore { struct __DFB_DFBGraphicsCore {
int magic; int magic;
CoreDFB *core; CoreDFB *core;
DFBGraphicsCoreShared *shared; DFBGraphicsCoreShared *shared;
 End of changes. 2 change blocks. 
0 lines changed or deleted 3 lines changed or added


 idirectfb.h   idirectfb.h 
skipping to change at line 63 skipping to change at line 63
int width; /* IDirectFB stores window width */ int width; /* IDirectFB stores window width */
int height; /* and height and the pixel dept h */ int height; /* and height and the pixel dept h */
DFBSurfacePixelFormat format; /* from SetVideoMode() parameter s. */ DFBSurfacePixelFormat format; /* from SetVideoMode() parameter s. */
DFBSurfaceColorSpace colorspace; /* from SetVideoMode() paramet ers. */ DFBSurfaceColorSpace colorspace; /* from SetVideoMode() paramet ers. */
CoreWindow *window; /* implicitly created window */ CoreWindow *window; /* implicitly created window */
Reaction reaction; /* for the focus listener */ Reaction reaction; /* for the focus listener */
bool focused; /* primary's window has the focu s */ bool focused; /* primary's window has the focu s */
CoreLayerContext *context; /* context for fullscreen primar y */ CoreLayerContext *context; /* context for fullscreen primar y */
DFBWindowOptions window_options;
} primary; /* Used for DFSCL_NORMAL's prima ry. */ } primary; /* Used for DFSCL_NORMAL's prima ry. */
bool app_focus; bool app_focus;
struct { struct {
CoreLayer *layer; CoreLayer *layer;
CoreLayerContext *context; CoreLayerContext *context;
CoreLayerRegion *region; CoreLayerRegion *region;
CoreSurface *surface; CoreSurface *surface;
CorePalette *palette; CorePalette *palette;
 End of changes. 1 change blocks. 
0 lines changed or deleted 1 lines changed or added


 init.h   init.h 
/* /*
(c) Copyright 2001-2011 The world wide DirectFB Open Source Community ( directfb.org) (c) Copyright 2001-2008 The world wide DirectFB Open Source Community ( directfb.org)
(c) Copyright 2000-2004 Convergence (integrated media) GmbH (c) Copyright 2000-2004 Convergence (integrated media) GmbH
All rights reserved. All rights reserved.
Written by Denis Oliver Kropp <dok@directfb.org>, Written by Denis Oliver Kropp <dok@directfb.org>,
Andreas Hundt <andi@fischlustig.de>, Andreas Hundt <andi@fischlustig.de>,
Sven Neumann <neo@directfb.org>, Sven Neumann <neo@directfb.org>,
Ville Syrjälä <syrjala@sci.fi> and Ville Syrjälä <syrjala@sci.fi> and
Claudio Ciccani <klan@users.sf.net>. Claudio Ciccani <klan@users.sf.net>.
skipping to change at line 29 skipping to change at line 29
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __FUSION__INIT_H__ #ifndef __DIRECT__INIT_H__
#define __FUSION__INIT_H__ #define __DIRECT__INIT_H__
#include <fusion/types.h> #include <direct/types.h>
__constructor__ void __Fusion_init_all ( void ); __constructor__ void __D_init_all ( void );
__destructor__ void __Fusion_deinit_all( void ); __destructor__ void __D_deinit_all( void );
#endif #endif
 End of changes. 4 change blocks. 
6 lines changed or deleted 6 lines changed or added


 lock.h   lock.h 
skipping to change at line 138 skipping to change at line 138
FUSION_SKIRMISH_PERMIT_NONE = 0x00000000, FUSION_SKIRMISH_PERMIT_NONE = 0x00000000,
FUSION_SKIRMISH_PERMIT_PREVAIL = 0x00000001, FUSION_SKIRMISH_PERMIT_PREVAIL = 0x00000001,
FUSION_SKIRMISH_PERMIT_SWOOP = 0x00000002, FUSION_SKIRMISH_PERMIT_SWOOP = 0x00000002,
FUSION_SKIRMISH_PERMIT_DISMISS = 0x00000004, FUSION_SKIRMISH_PERMIT_DISMISS = 0x00000004,
FUSION_SKIRMISH_PERMIT_LOCK_COUNT = 0x00000008, FUSION_SKIRMISH_PERMIT_LOCK_COUNT = 0x00000008,
FUSION_SKIRMISH_PERMIT_WAIT = 0x00000010, FUSION_SKIRMISH_PERMIT_WAIT = 0x00000010,
FUSION_SKIRMISH_PERMIT_NOTIFY = 0x00000020, FUSION_SKIRMISH_PERMIT_NOTIFY = 0x00000020,
FUSION_SKIRMISH_PERMIT_DESTROY = 0x00000040, FUSION_SKIRMISH_PERMIT_DESTROY = 0x00000040,
FUSION_SKIRMISH_PERMIT_ALL = 0x0000007F, FUSION_SKIRMISH_PERMIT_ALL = 0x0000007F
} FusionSkirmishPermissions; } FusionSkirmishPermissions;
/* /*
* Give permissions to another fusionee to use the skirmish. * Give permissions to another fusionee to use the skirmish.
*/ */
DirectResult FUSION_API fusion_skirmish_add_permissions( FusionSkirmish *skimrish, DirectResult FUSION_API fusion_skirmish_add_permissions( FusionSkirmish *skimrish,
FusionID fusion_id, FusionID fusion_id,
FusionSkirmishPer missions permissions ); FusionSkirmishPer missions permissions );
#endif #endif
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 log_domain.h   log_domain.h 
skipping to change at line 120 skipping to change at line 120
DirectLogLevel level ) DirectLogLevel level )
{ {
DirectLogDomainConfig config; DirectLogDomainConfig config;
config.level = level; config.level = level;
config.log = NULL; config.log = NULL;
direct_log_domain_configure( name, &config ); direct_log_domain_configure( name, &config );
} }
bool DIRECT_API direct_log_domain_check( DirectLogDomain *domain ); bool DIRECT_API direct_log_domain_check( DirectLogDomain *domain ); // TO DO: for non-debug builds use macro for better optimisations
/************************************************************************** ********************************************/ /************************************************************************** ********************************************/
#define D_LOG( _Domain, _LEVEL, ... ) \ #define D_LOG( _Domain, _LEVEL, ... ) \
do { \ do { \
direct_log_domain_log( &(_Domain), DIRECT_LOG_ ## _LEVEL, __FUNCT ION__, __FILE__, __LINE__, __VA_ARGS__ ); \ direct_log_domain_log( &(_Domain), DIRECT_LOG_ ## _LEVEL, __FUNCT ION__, __FILE__, __LINE__, __VA_ARGS__ ); \
} while (0) } while (0)
#define D_LOG_( _Domain, _level, ... ) \ #define D_LOG_( _Domain, _level, ... ) \
do { \ do { \
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 reactor.h   reactor.h 
skipping to change at line 224 skipping to change at line 224
*/ */
DirectResult FUSION_API fusion_reactor_direct ( FusionReactor *reactor, DirectResult FUSION_API fusion_reactor_direct ( FusionReactor *reactor,
bool direct ); bool direct );
typedef enum { typedef enum {
FUSION_REACTOR_PERMIT_NONE = 0x00000000, FUSION_REACTOR_PERMIT_NONE = 0x00000000,
FUSION_REACTOR_PERMIT_ATTACH_DETACH = 0x00000001, FUSION_REACTOR_PERMIT_ATTACH_DETACH = 0x00000001,
FUSION_REACTOR_PERMIT_DISPATCH = 0x00000002, FUSION_REACTOR_PERMIT_DISPATCH = 0x00000002,
FUSION_REACTOR_PERMIT_ALL = 0x00000003, FUSION_REACTOR_PERMIT_ALL = 0x00000003
} FusionReactorPermissions; } FusionReactorPermissions;
/* /*
* Give permissions to another fusionee to use the reactor. * Give permissions to another fusionee to use the reactor.
*/ */
DirectResult FUSION_API fusion_reactor_add_permissions( FusionReactor *reactor, DirectResult FUSION_API fusion_reactor_add_permissions( FusionReactor *reactor,
FusionID fusion_id, FusionID fusion_id,
FusionReactorPerm issions permissions ); FusionReactorPerm issions permissions );
#endif #endif
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 ref.h   ref.h 
skipping to change at line 155 skipping to change at line 155
FUSION_REF_PERMIT_REF_UNREF_LOCAL = 0x00000001, FUSION_REF_PERMIT_REF_UNREF_LOCAL = 0x00000001,
FUSION_REF_PERMIT_REF_UNREF_GLOBAL = 0x00000002, FUSION_REF_PERMIT_REF_UNREF_GLOBAL = 0x00000002,
FUSION_REF_PERMIT_ZERO_LOCK_UNLOCK = 0x00000004, FUSION_REF_PERMIT_ZERO_LOCK_UNLOCK = 0x00000004,
FUSION_REF_PERMIT_WATCH = 0x00000008, FUSION_REF_PERMIT_WATCH = 0x00000008,
FUSION_REF_PERMIT_INHERIT = 0x00000010, FUSION_REF_PERMIT_INHERIT = 0x00000010,
FUSION_REF_PERMIT_DESTROY = 0x00000020, FUSION_REF_PERMIT_DESTROY = 0x00000020,
FUSION_REF_PERMIT_CATCH = 0x00000040, FUSION_REF_PERMIT_CATCH = 0x00000040,
FUSION_REF_PERMIT_THROW = 0x00000080, FUSION_REF_PERMIT_THROW = 0x00000080,
FUSION_REF_PERMIT_ALL = 0x000000FF, FUSION_REF_PERMIT_ALL = 0x000000FF
} FusionRefPermissions; } FusionRefPermissions;
/* /*
* Give permissions to another fusionee to use the reference. * Give permissions to another fusionee to use the reference.
*/ */
DirectResult FUSION_API fusion_ref_add_permissions( FusionRef * ref, DirectResult FUSION_API fusion_ref_add_permissions( FusionRef * ref,
FusionID fusion_id, FusionID fusion_id,
FusionRefPermissions permissions ); FusionRefPermissions permissions );
#endif #endif
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 surface.h   surface.h 
skipping to change at line 82 skipping to change at line 82
CoreSurfaceBuffer *buffer_no_access; /* Pointer to associated CoreSur faceBuffer being CoreSurfaceBuffer *buffer_no_access; /* Pointer to associated CoreSur faceBuffer being
destroyed. Do not dereference . */ destroyed. Do not dereference . */
void *surface_data; /* CoreSurface's shared driver s pecific data. */ void *surface_data; /* CoreSurface's shared driver s pecific data. */
int surface_object_id; /* CoreSurface's Fusion ID. */ int surface_object_id; /* CoreSurface's Fusion ID. */
unsigned int flip_count; unsigned int flip_count;
} CoreSurfaceNotification; } CoreSurfaceNotification;
typedef enum { typedef enum {
CSCH_NOTIFICATION, CSCH_NOTIFICATION,
CSCH_EVENT, CSCH_EVENT
} CoreSurfaceChannel; } CoreSurfaceChannel;
typedef enum { typedef enum {
CSCONF_NONE = 0x00000000, CSCONF_NONE = 0x00000000,
CSCONF_SIZE = 0x00000001, CSCONF_SIZE = 0x00000001,
CSCONF_FORMAT = 0x00000002, CSCONF_FORMAT = 0x00000002,
CSCONF_CAPS = 0x00000004, CSCONF_CAPS = 0x00000004,
CSCONF_COLORSPACE = 0x00000008, CSCONF_COLORSPACE = 0x00000008,
skipping to change at line 193 skipping to change at line 193
CSAID_LAYER9 = 0x00000011, CSAID_LAYER9 = 0x00000011,
CSAID_LAYER10 = 0x00000012, CSAID_LAYER10 = 0x00000012,
CSAID_LAYER11 = 0x00000013, CSAID_LAYER11 = 0x00000013,
CSAID_LAYER12 = 0x00000014, CSAID_LAYER12 = 0x00000014,
CSAID_LAYER13 = 0x00000015, CSAID_LAYER13 = 0x00000015,
CSAID_LAYER14 = 0x00000016, CSAID_LAYER14 = 0x00000016,
CSAID_LAYER15 = 0x00000017, CSAID_LAYER15 = 0x00000017,
_CSAID_NUM = 0x00000018, /* number of statically assigned ID s for usage in static arrays */ _CSAID_NUM = 0x00000018, /* number of statically assigned ID s for usage in static arrays */
CSAID_ANY = 0x00000100, /* any other accessor needs to be r egistered using IDs starting from here */ CSAID_ANY = 0x00000100 /* any other accessor needs to be r egistered using IDs starting from here */
} CoreSurfaceAccessorID; } CoreSurfaceAccessorID;
typedef enum { typedef enum {
CSBR_FRONT = 0, CSBR_FRONT = 0,
CSBR_BACK = 1, CSBR_BACK = 1,
CSBR_IDLE = 2 CSBR_IDLE = 2
} CoreSurfaceBufferRole; } CoreSurfaceBufferRole;
typedef enum { typedef enum {
CSSF_NONE = 0x00000000, CSSF_NONE = 0x00000000,
skipping to change at line 295 skipping to change at line 295
DFBResult dfb_surface_init_palette ( CoreDFB *core, DFBResult dfb_surface_init_palette ( CoreDFB *core,
CoreSurface *surface ); CoreSurface *surface );
DFBResult dfb_surface_notify ( CoreSurface *surface , DFBResult dfb_surface_notify ( CoreSurface *surface ,
CoreSurfaceNotificationFlags flags); CoreSurfaceNotificationFlags flags);
DFBResult dfb_surface_notify_display( CoreSurface *surface , DFBResult dfb_surface_notify_display( CoreSurface *surface ,
CoreSurfaceBuffer *buffer) ; CoreSurfaceBuffer *buffer) ;
DFBResult dfb_surface_notify_display2( CoreSurface *surfac
e,
int index
);
DFBResult dfb_surface_notify_frame ( CoreSurface *surface , DFBResult dfb_surface_notify_frame ( CoreSurface *surface ,
unsigned int flip_co unt ); unsigned int flip_co unt );
/* /*
Prepares and sends a notification message that a change is about to ha ppen to the specified Prepares and sends a notification message that a change is about to ha ppen to the specified
surface buffer pool allocation. The notification message will be rece ived by all pocesses surface buffer pool allocation. The notification message will be rece ived by all pocesses
that have listeners attached to the associated CoreSurface's reactor. that have listeners attached to the associated CoreSurface's reactor.
At present, only THE CSNF_BUFFER_ALLOCATION_DESTROY message is handled . At present, only THE CSNF_BUFFER_ALLOCATION_DESTROY message is handled .
*/ */
 End of changes. 3 change blocks. 
2 lines changed or deleted 7 lines changed or added


 surface_allocation.h   surface_allocation.h 
skipping to change at line 95 skipping to change at line 95
CoreSurfaceAllocationFlags flags; /* Pool can return CSALF_ ONEFORALL upon allocation of first buffer. */ CoreSurfaceAllocationFlags flags; /* Pool can return CSALF_ ONEFORALL upon allocation of first buffer. */
const CoreSurfaceAccessFlags *access; /* Possible acc ess flags (pointer to pool description). */ const CoreSurfaceAccessFlags *access; /* Possible acc ess flags (pointer to pool description). */
CoreSurfaceAccessFlags accessed[_CSAID_NUM]; /* Access since last synchronization. */ CoreSurfaceAccessFlags accessed[_CSAID_NUM]; /* Access since last synchronization. */
CoreSurfaceConfig config; /* Configuration of its s urface at the time of the allocation creation */ CoreSurfaceConfig config; /* Configuration of its s urface at the time of the allocation creation */
CoreSurfaceTypeFlags type; CoreSurfaceTypeFlags type;
unsigned long resource_id; /* layer id, window id, o r user specified */ unsigned long resource_id; /* layer id, window id, o r user specified */
CoreGraphicsSerial gfx_serial; CoreGraphicsSerial gfx_serial;
int index;
}; };
#define CORE_SURFACE_ALLOCATION_ASSERT(alloc) \ #define CORE_SURFACE_ALLOCATION_ASSERT(alloc) \
do { \ do { \
D_MAGIC_ASSERT( alloc, CoreSurfaceAllocation ); \ D_MAGIC_ASSERT( alloc, CoreSurfaceAllocation ); \
D_ASSUME( (alloc)->size > 0 ); \ D_ASSUME( (alloc)->size > 0 ); \
D_ASSERT( (alloc)->size >= 0 ); \ D_ASSERT( (alloc)->size >= 0 ); \
D_ASSERT( (alloc)->offset + (alloc)->size <= ((alloc)->pool->desc .size ?:~0UL) ); \ D_ASSERT( (alloc)->offset + (alloc)->size <= ((alloc)->pool->desc .size ?:~0UL) ); \
D_FLAGS_ASSERT( (alloc)->access[CSAID_CPU], CSAF_ALL ); \ D_FLAGS_ASSERT( (alloc)->access[CSAID_CPU], CSAF_ALL ); \
D_FLAGS_ASSERT( (alloc)->access[CSAID_GPU], CSAF_ALL ); \ D_FLAGS_ASSERT( (alloc)->access[CSAID_GPU], CSAF_ALL ); \
 End of changes. 1 change blocks. 
0 lines changed or deleted 2 lines changed or added


 surface_buffer.h   surface_buffer.h 
skipping to change at line 78 skipping to change at line 78
CoreSurfaceAccessFlags access; /* " */ CoreSurfaceAccessFlags access; /* " */
CoreSurfaceBuffer *buffer; /* Set by dfb_surface_poo l_lock() */ CoreSurfaceBuffer *buffer; /* Set by dfb_surface_poo l_lock() */
CoreSurfaceAllocation *allocation; /* " */ CoreSurfaceAllocation *allocation; /* " */
void *addr; /* " */ void *addr; /* " */
unsigned long phys; /* " */ unsigned long phys; /* " */
unsigned long offset; /* " */ unsigned long offset; /* " */
unsigned int pitch; /* " */ unsigned int pitch; /* " */
void* handle; /* " */ void *handle; /* " */
}; };
static inline void static inline void
dfb_surface_buffer_lock_reset( CoreSurfaceBufferLock *lock ) dfb_surface_buffer_lock_reset( CoreSurfaceBufferLock *lock )
{ {
D_MAGIC_ASSERT( lock, CoreSurfaceBufferLock ); D_MAGIC_ASSERT( lock, CoreSurfaceBufferLock );
lock->buffer = NULL; lock->buffer = NULL;
lock->allocation = NULL; lock->allocation = NULL;
lock->addr = NULL; lock->addr = NULL;
skipping to change at line 160 skipping to change at line 160
CoreSurfacePolicy policy; CoreSurfacePolicy policy;
CoreSurfaceBufferFlags flags; /* Configuration and State fla gs. */ CoreSurfaceBufferFlags flags; /* Configuration and State fla gs. */
DFBSurfacePixelFormat format; /* Pixel format of buffer data . */ DFBSurfacePixelFormat format; /* Pixel format of buffer data . */
FusionVector allocs; /* Allocations within Surface Pools. */ FusionVector allocs; /* Allocations within Surface Pools. */
CoreSurfaceConfig config; /* Configuration of its surfac e at the time of the buffer creation */ CoreSurfaceConfig config; /* Configuration of its surfac e at the time of the buffer creation */
CoreSurfaceTypeFlags type; CoreSurfaceTypeFlags type;
unsigned long resource_id; /* layer id, window id, or use r specified */ unsigned long resource_id; /* layer id, window id, or use r specified */
int index;
}; };
#define CORE_SURFACE_BUFFER_ASSERT(buffer) \ #define CORE_SURFACE_BUFFER_ASSERT(buffer) \
do { \ do { \
D_MAGIC_ASSERT( buffer, CoreSurfaceBuffer ); \ D_MAGIC_ASSERT( buffer, CoreSurfaceBuffer ); \
} while (0) } while (0)
DFBResult dfb_surface_buffer_create ( CoreDFB *core, DFBResult dfb_surface_buffer_create ( CoreDFB *core,
CoreSurface *surface, CoreSurface *surface,
CoreSurfaceBufferFlags flags, CoreSurfaceBufferFlags flags,
int index,
CoreSurfaceBuffer **ret_buffer ) ; CoreSurfaceBuffer **ret_buffer ) ;
DFBResult dfb_surface_buffer_decouple( CoreSurfaceBuffer *buffer ); DFBResult dfb_surface_buffer_decouple( CoreSurfaceBuffer *buffer );
DFBResult dfb_surface_buffer_deallocate( CoreSurfaceBuffer *buffer ); DFBResult dfb_surface_buffer_deallocate( CoreSurfaceBuffer *buffer );
DFBResult dfb_surface_buffer_lock ( CoreSurfaceBuffer *buffer, DFBResult dfb_surface_buffer_lock ( CoreSurfaceBuffer *buffer,
CoreSurfaceAccessorID accessor, CoreSurfaceAccessorID accessor,
CoreSurfaceAccessFlags access, CoreSurfaceAccessFlags access,
CoreSurfaceBufferLock *ret_lock ); CoreSurfaceBufferLock *ret_lock );
skipping to change at line 206 skipping to change at line 209
CoreSurfaceAllocation * CoreSurfaceAllocation *
dfb_surface_buffer_find_allocation( CoreSurfaceBuffer *buffer, dfb_surface_buffer_find_allocation( CoreSurfaceBuffer *buffer,
CoreSurfaceAccessorID accessor, CoreSurfaceAccessorID accessor,
CoreSurfaceAccessFlags flags, CoreSurfaceAccessFlags flags,
bool lock ); bool lock );
static inline int static inline int
dfb_surface_buffer_index( CoreSurfaceBuffer *buffer ) dfb_surface_buffer_index( CoreSurfaceBuffer *buffer )
{ {
int index;
CoreSurface *surface;
D_MAGIC_ASSERT( buffer, CoreSurfaceBuffer ); D_MAGIC_ASSERT( buffer, CoreSurfaceBuffer );
surface = buffer->surface; return buffer->index;
D_MAGIC_ASSERT( surface, CoreSurface );
for (index=0; index<MAX_SURFACE_BUFFERS; index++) {
if (surface->left_buffers[index] == buffer)
return index;
if (surface->config.caps & DSCAPS_STEREO)
if (surface->right_buffers[index] == buffer)
return index;
}
D_ASSERT( index<MAX_SURFACE_BUFFERS );
return 0;
} }
FUSION_OBJECT_METHODS( CoreSurfaceBuffer, dfb_surface_buffer ) FUSION_OBJECT_METHODS( CoreSurfaceBuffer, dfb_surface_buffer )
FusionObjectPool *dfb_surface_buffer_pool_create( const FusionWorld *world ); FusionObjectPool *dfb_surface_buffer_pool_create( const FusionWorld *world );
#endif #endif
 End of changes. 5 change blocks. 
19 lines changed or deleted 5 lines changed or added


 types.h   types.h 
/* /*
(c) Copyright 2001-2008 The world wide DirectFB Open Source Community ( directfb.org) (c) Copyright 2001-2009 The world wide DirectFB Open Source Community ( directfb.org)
(c) Copyright 2000-2004 Convergence (integrated media) GmbH (c) Copyright 2000-2004 Convergence (integrated media) GmbH
All rights reserved. All rights reserved.
Written by Denis Oliver Kropp <dok@directfb.org>, Written by Denis Oliver Kropp <dok@directfb.org>,
Andreas Hundt <andi@fischlustig.de>, Andreas Hundt <andi@fischlustig.de>,
Sven Neumann <neo@directfb.org>, Sven Neumann <neo@directfb.org>,
Ville Syrjälä <syrjala@sci.fi> and Ville Syrjälä <syrjala@sci.fi> and
Claudio Ciccani <klan@users.sf.net>. Claudio Ciccani <klan@users.sf.net>.
skipping to change at line 29 skipping to change at line 29
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details. Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the License along with this library; if not, write to the
Free Software Foundation, Inc., 59 Temple Place - Suite 330, Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. Boston, MA 02111-1307, USA.
*/ */
#ifndef __DIRECT__TYPES_H__ #ifndef __FUSION__TYPES_H__
#define __DIRECT__TYPES_H__ #define __FUSION__TYPES_H__
#include <direct/os/types.h> #include <fusion/build.h>
#include <direct/types.h>
#ifdef WIN32 #ifdef WIN32
// The following ifdef block is the standard way of creating macros which m ake exporting // The following ifdef block is the standard way of creating macros which m ake exporting
// from a DLL simpler. All files within this DLL are compiled with the DIRE CT_EXPORTS // from a DLL simpler. All files within this DLL are compiled with the FUSI ON_EXPORTS
// symbol defined on the command line. This symbol should not be defined on any project // symbol defined on the command line. This symbol should not be defined on any project
// that uses this DLL. This way any other project whose source files includ e this file see // that uses this DLL. This way any other project whose source files includ e this file see
// DIRECT_API functions as being imported from a DLL, whereas this DLL sees symbols // FUSION_API functions as being imported from a DLL, whereas this DLL sees symbols
// defined with this macro as being exported. // defined with this macro as being exported.
#ifdef DIRECT_EXPORTS #ifdef FUSION_EXPORTS
#define DIRECT_API __declspec(dllexport) #define FUSION_API __declspec(dllexport)
#else #else
#define DIRECT_API __declspec(dllimport) #define FUSION_API __declspec(dllimport)
#endif #endif
#else #else
#define DIRECT_API #define FUSION_API
#endif #endif
#include <direct/result.h> #if FUSION_BUILD_MULTI && FUSION_BUILD_KERNEL
/************************************************************************** #include <sys/types.h>
********************************************/ #include <linux/fusion.h>
#define FUSION_API_MAJOR_REQUIRED 9
#define FUSION_API_MINOR_REQUIRED 0
#if FUSION_API_MAJOR_REQUIRED > FUSION_API_MAJOR_PROVIDED
#error Major version of Fusion Kernel Module too low! Upgrade your kernel.
#else
#if FUSION_API_MAJOR_REQUIRED == FUSION_API_MAJOR_PROVIDED
#if FUSION_API_MINOR_REQUIRED > FUSION_API_MINOR_PROVIDED
#error Minor version of Fusion Kernel Module too low! Upgrade your kernel.
#endif
#endif
#endif
#if FUSION_API_MAJOR_PROVIDED == 8 && FUSION_API_MINOR_PROVIDED == 8 && FUS
ION_API_MICRO_PROVIDED == 0
#define FCEF_QUEUE (0)
#endif
#else
typedef unsigned long FusionID;
#define FUSION_ID_MASTER 1L
/*
* Return value of enumeration callbacks
*/
typedef enum { typedef enum {
DENUM_OK = 0x00000000, /* Proceed with enumeration */ FCEF_NONE = 0x00000000,
DENUM_CANCEL = 0x00000001 /* Cancel enumeration */ FCEF_ONEWAY = 0x00000001,
} DirectEnumerationResult; FCEF_QUEUE = 0x00000002,
FCEF_ALL = 0x00000003
typedef struct __D_DirectCleanupHandler DirectCleanupHandler; } FusionCallExecFlags;
typedef struct __D_DirectConfig DirectConfig;
typedef struct __D_DirectFifo DirectFifo; #endif
typedef struct __D_DirectFifoItem DirectFifoItem;
typedef struct __D_DirectFile DirectFile; #define FCEF_NODIRECT 0x80000000
typedef struct __D_DirectHash DirectHash;
typedef struct __D_DirectOnce DirectOnce; #include <direct/types.h>
typedef struct __D_DirectLink DirectLink;
typedef struct __D_DirectLog DirectLog; typedef struct __Fusion_FusionConfig FusionConfig;
typedef struct __D_DirectMap DirectMap;
typedef struct __D_DirectModuleDir DirectModuleDir; typedef struct __Fusion_FusionArena FusionArena;
typedef struct __D_DirectModuleEntry DirectModuleEntry; typedef struct __Fusion_FusionReactor FusionReactor;
typedef struct __D_DirectMutex DirectMutex; typedef struct __Fusion_FusionWorld FusionWorld;
typedef struct __D_DirectProcessor DirectProcessor; typedef struct __Fusion_FusionWorldShared FusionWorldShared;
typedef struct __D_DirectSerial DirectSerial;
typedef struct __D_DirectSignalHandler DirectSignalHandler; typedef struct __Fusion_FusionObject FusionObject;
typedef struct __D_DirectStream DirectStream; typedef struct __Fusion_FusionObjectPool FusionObjectPool;
typedef struct __D_DirectTLS DirectTLS;
typedef struct __D_DirectTraceBuffer DirectTraceBuffer; typedef struct __Fusion_FusionSHM FusionSHM;
typedef struct __D_DirectTree DirectTree; typedef struct __Fusion_FusionSHMShared FusionSHMShared;
typedef struct __D_DirectThread DirectThread;
typedef struct __D_DirectThreadHandle DirectThreadHandle; typedef struct __Fusion_FusionSHMPool FusionSHMPool;
typedef struct __D_DirectThreadInitHandler DirectThreadInitHandler; typedef struct __Fusion_FusionSHMPoolShared FusionSHMPoolShared;
typedef struct __D_DirectWaitQueue DirectWaitQueue; typedef struct __Fusion_FusionHash FusionHash;
#endif #endif
 End of changes. 12 change blocks. 
44 lines changed or deleted 66 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/