239 lines
8.8 KiB
C
239 lines
8.8 KiB
C
/*
|
|
* Copyright (c) 1993-1995 Argonaut Technologies Limited. All rights reserved.
|
|
*
|
|
* $Id: brddi_p.h 1.3 1998/11/12 13:14:55 johng Exp $
|
|
* $Locker: $
|
|
*
|
|
* Prototypes for functions that are exposed to device drivers
|
|
*/
|
|
#ifndef _BRDDI_P_H_
|
|
#define _BRDDI_P_H_
|
|
#ifndef _NO_PROTOTYPES
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
br_boolean BR_RESIDENT_ENTRY BrNamePatternMatch(char *p, char *s);
|
|
|
|
/*
|
|
* Debugging printf
|
|
*/
|
|
int BR_RESIDENT_ENTRY BrLogPrintf(char *fmt,...);
|
|
|
|
/*
|
|
* resource.c
|
|
*/
|
|
br_uint_32 BR_RESIDENT_ENTRY BrResCheck(void *vres, int no_tag);
|
|
void BR_RESIDENT_ENTRY BrResDump(void *vres, br_putline_cbfn *putline, void *arg);
|
|
|
|
/*
|
|
* brexcept.c
|
|
*/
|
|
br_exception_handler * BR_RESIDENT_ENTRY _BrExceptionBegin(void);
|
|
void BR_RESIDENT_ENTRY _BrExceptionEnd(void);
|
|
void BR_RESIDENT_ENTRY _BrExceptionThrow(br_int_32 type, void *value);
|
|
br_exception BR_RESIDENT_ENTRY _BrExceptionValueFetch(br_exception type, void **evp);
|
|
void * BR_RESIDENT_ENTRY _BrExceptionResource(void);
|
|
|
|
/*
|
|
* error.c
|
|
*/
|
|
void BR_RESIDENT_ENTRY BrLastErrorSet(br_error type, void *value);
|
|
br_error BR_RESIDENT_ENTRY BrLastErrorGet(void **valuep);
|
|
|
|
/*
|
|
* token.c
|
|
*/
|
|
br_token BR_RESIDENT_ENTRY BrTokenCreate(char *identifier, br_token type);
|
|
char * BR_RESIDENT_ENTRY BrTokenIdentifier(br_token t);
|
|
br_token BR_RESIDENT_ENTRY BrTokenType(br_token t);
|
|
br_int_32 BR_RESIDENT_ENTRY BrTokenCount(char *pattern);
|
|
br_token BR_RESIDENT_ENTRY BrTokenFind(char *pattern);
|
|
br_int_32 BR_RESIDENT_ENTRY BrTokenFindMany(char *pattern, br_token *tokens, br_int_32 max_tokens);
|
|
|
|
/*
|
|
* tokenval.c
|
|
*/
|
|
br_tv_template * BR_RESIDENT_ENTRY BrTVTemplateAllocate(void *res, br_tv_template_entry *entries, int n_entries);
|
|
|
|
void BR_RESIDENT_ENTRY BrTVTemplateFree(br_tv_template *t);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueQuery(
|
|
br_uint_32 *pvalue, br_uint_32 *extra, br_size_t extra_size,
|
|
br_token t,
|
|
void *block,
|
|
br_tv_template *_template);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueQueryMany(
|
|
br_token_value *tv,
|
|
void *extra, br_size_t extra_size,
|
|
br_int_32 *pcount,
|
|
void *block,
|
|
br_tv_template *_template);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueQueryManySize(
|
|
br_size_t *psize,
|
|
br_token_value *tv,
|
|
void *block,
|
|
br_tv_template *_template);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueQueryAll(
|
|
br_token_value *buffer, br_size_t buffer_size,
|
|
void *block,
|
|
br_tv_template *_template);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueQueryAllSize(
|
|
br_size_t *psize,
|
|
void *block,
|
|
br_tv_template *_template);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueSet(
|
|
void *mem,
|
|
br_uint_32 *pcombined_mask,
|
|
br_token t,
|
|
br_uint_32 value,
|
|
br_tv_template *_template);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrTokenValueSetMany(
|
|
void *mem,
|
|
br_int_32 *pcount,
|
|
br_uint_32 *pcombined_mask,
|
|
br_token_value *tv,
|
|
br_tv_template *_template);
|
|
|
|
void BR_RESIDENT_ENTRY BrTokenValueDump(br_token_value *tv, char *prefix, br_putline_cbfn *putline, void *arg);
|
|
br_error BR_RESIDENT_ENTRY BrStringToTokenValue(br_token_value *buffer, br_size_t buffer_size, char *str);
|
|
br_boolean BR_RESIDENT_ENTRY BrTokenValueCompare(br_token_value *tv1, br_token_value *tv2);
|
|
br_boolean BR_RESIDENT_ENTRY BrTokenValueComparePartial(br_token_value *tv1, br_token_value *tv2, br_token *insignificant);
|
|
|
|
|
|
/*
|
|
* diag.c
|
|
*/
|
|
void BR_RESIDENT_ENTRY _BrAssert(char *condition, char *file, unsigned line);
|
|
void BR_RESIDENT_ENTRY _BrUAssert(char *condition, char *file, unsigned line);
|
|
|
|
/*
|
|
* lexer.c
|
|
*/
|
|
struct br_lexer * BR_RESIDENT_ENTRY BrLexerAllocate(struct br_lexer_keyword *keywords, int nkeywords);
|
|
void BR_RESIDENT_ENTRY BrLexerFree(struct br_lexer * l);
|
|
char BR_RESIDENT_ENTRY BrLexerCommentSet(struct br_lexer * l, char eol_comment);
|
|
br_lexer_error_cbfn * BR_RESIDENT_ENTRY BrLexerErrorSet(struct br_lexer * l, br_lexer_error_cbfn *error);
|
|
br_error BR_RESIDENT_ENTRY BrLexerPushFile(struct br_lexer * l, char *file);
|
|
br_error BR_RESIDENT_ENTRY BrLexerPushString(struct br_lexer * l, char *string, char *name);
|
|
struct br_lexer_source * BR_RESIDENT_ENTRY BrLexerPop(struct br_lexer * l);
|
|
br_error BR_RESIDENT_ENTRY BrLexerDumpSet(struct br_lexer * l, br_putline_cbfn *putline, void *putline_arg);
|
|
void BR_RESIDENT_ENTRY BrLexerTokenError(struct br_lexer * l, br_lexer_token_id t);
|
|
void BR_RESIDENT_ENTRY BrLexerPosition(struct br_lexer * l, char *buf, br_size_t buf_size);
|
|
|
|
br_int_32 BR_RESIDENT_ENTRY BrParseInteger(struct br_lexer * l);
|
|
br_float BR_RESIDENT_ENTRY BrParseFloat(struct br_lexer * l);
|
|
br_fixed_ls BR_RESIDENT_ENTRY BrParseFixed(struct br_lexer * l);
|
|
|
|
br_int_32 BR_RESIDENT_ENTRY BrParseVectorFloat(struct br_lexer * l, br_float *v, br_int_32 max);
|
|
br_int_32 BR_RESIDENT_ENTRY BrParseVectorFixed(struct br_lexer * l, br_fixed_ls *v, br_int_32 max);
|
|
|
|
br_int_32 BR_RESIDENT_ENTRY BrParseMatrixFloat(struct br_lexer * l, br_float *m, br_int_32 width, br_int_32 max_h);
|
|
br_int_32 BR_RESIDENT_ENTRY BrParseMatrixFixed(struct br_lexer * l, br_fixed_ls *m, br_int_32 width, br_int_32 max_h);
|
|
|
|
#if BASED_FIXED
|
|
#define BrParseScalar BrParseFixed
|
|
#define BrParseVector BrParseVectorFixed
|
|
#define BrParseMatrix BrParseMatrixFixed
|
|
#endif
|
|
|
|
#if BASED_FLOAT
|
|
#define BrParseScalar BrParseFloat
|
|
#define BrParseVector BrParseVectorFloat
|
|
#define BrParseMatrix BrParseMatrixFloat
|
|
#endif
|
|
|
|
/*
|
|
* object.c
|
|
*/
|
|
br_error BR_CMETHOD_DECL(br_object,query)(struct br_object *self, br_uint_32 *pvalue, br_token t);
|
|
br_error BR_CMETHOD_DECL(br_object,queryBuffer)
|
|
(struct br_object *self, br_uint_32 *pvalue, br_uint_32 *buffer, br_size_t buffer_size, br_token t);
|
|
br_error BR_CMETHOD_DECL(br_object,queryMany)
|
|
(struct br_object *self, br_token_value *tv, void *extra, br_size_t extra_size, br_int_32 *pcount);
|
|
br_error BR_CMETHOD_DECL(br_object,queryManySize)
|
|
(struct br_object *self, br_size_t *pextra_size, br_token_value *tv);
|
|
br_error BR_CMETHOD_DECL(br_object,queryAll)
|
|
(struct br_object *self, br_token_value *buffer, br_size_t buffer_size);
|
|
br_error BR_CMETHOD_DECL(br_object,queryAllSize)
|
|
(struct br_object *self, br_size_t *psize);
|
|
|
|
/*
|
|
* objectc.c
|
|
*/
|
|
void * BR_RESIDENT_ENTRY BrObjectListAllocate(void *res);
|
|
br_error BR_CMETHOD_DECL(br_object_container, addFront)(struct br_object_container *self, struct br_object *ph);
|
|
br_error BR_CMETHOD_DECL(br_object_container, removeFront)(struct br_object_container *self, struct br_object **ph);
|
|
br_error BR_CMETHOD_DECL(br_object_container, remove)(struct br_object_container *self, struct br_object *ph);
|
|
br_error BR_CMETHOD_DECL(br_object_container, find)(struct br_object_container *self,
|
|
struct br_object **ph, br_token type, char *pattern, br_token_value *tv);
|
|
br_error BR_CMETHOD_DECL(br_object_container, findMany)(struct br_object_container *self,
|
|
struct br_object **objects, br_int_32 max_objects, br_int_32 *num_objects, br_token type, char *pattern, br_token_value *tv);
|
|
br_error BR_CMETHOD_DECL(br_object_container, count)(struct br_object_container *self,
|
|
br_uint_32 *pcount, br_token type, char *pattern, br_token_value *tv);
|
|
|
|
void * BR_CMETHOD_DECL(br_object_container, tokensMatchBegin)
|
|
(struct br_object_container *self, br_token t, br_token_value *tv);
|
|
br_boolean BR_CMETHOD_DECL(br_object_container, tokensMatch)
|
|
(struct br_object_container *self, struct br_object *h, void *arg);
|
|
void BR_CMETHOD_DECL(br_object_container, tokensMatchEnd)
|
|
(struct br_object_container *self, void *arg);
|
|
|
|
br_error BR_RESIDENT_ENTRY BrObjectContainerFree(struct br_object_container *self, br_token type, char *pattern, br_token_value *tv);
|
|
|
|
/*
|
|
* image.c
|
|
*/
|
|
struct br_image * BR_RESIDENT_ENTRY BrImageReference(char *name);
|
|
void BR_RESIDENT_ENTRY BrImageDereference(struct br_image *image);
|
|
void * BR_RESIDENT_ENTRY BrImageLookupName(struct br_image *img, char *name, br_uint_32 hint);
|
|
void * BR_RESIDENT_ENTRY BrImageLookupOrdinal(struct br_image *img, br_uint_32 ordinal);
|
|
|
|
br_boolean BR_RESIDENT_ENTRY BrImageAdd(br_image *ing);
|
|
br_boolean BR_RESIDENT_ENTRY BrImageRemove(br_image *img);
|
|
|
|
/*
|
|
* Entry/exit tracking hooksfor Watcom C++
|
|
*/
|
|
void BR_RESIDENT_ENTRY _EPI(void);
|
|
void BR_RESIDENT_ENTRY _PRO(void);
|
|
|
|
/*
|
|
* Registry lists
|
|
*/
|
|
void *BrRegistryClear(br_registry *reg);
|
|
int BrRegistryAddMany(br_registry *reg, void **item, int n);
|
|
int BrRegistryRemoveMany(br_registry *reg, void **item, int n);
|
|
void *BrRegistryFind(br_registry *reg, char *pattern);
|
|
int BrRegistryFindMany(br_registry *reg, char *pattern, void **item, int n);
|
|
int BrRegistryCount(br_registry *reg, char *pattern);
|
|
int BrRegistryEnum(br_registry *reg, char *pattern,
|
|
br_enum_cbfn *callback, void *arg);
|
|
|
|
void *BrRegistryNew(br_registry *reg);
|
|
void *BrRegistryAdd(br_registry *reg, void *item);
|
|
void *BrRegistryRemove(br_registry *reg, void *item);
|
|
|
|
void *BrRegistryNewStatic(br_registry *reg, br_registry_entry *base, int limit);
|
|
void *BrRegistryAddStatic(br_registry *reg, br_registry_entry *base, void *item);
|
|
void *BrRegistryRemoveStatic(br_registry *reg, void *item);
|
|
|
|
/*
|
|
* Nasty hack for finding out the last pixelmap that DevBegin() was called with
|
|
*/
|
|
br_pixelmap * BrDevLastBeginQuery(void);
|
|
void BrDevLastBeginSet(br_pixelmap *pm);
|
|
|
|
#ifdef __cplusplus
|
|
};
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|