Applied slightly reworked and updated patch from ticket #1576
by "jarz" to rewrite the last remaining (?) headers in order to get rid of the Be copyright. Thanks a lot and sorry for the long delay. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42958 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -1,51 +1,35 @@
|
||||
/*******************************************************************************
|
||||
/
|
||||
/ File: NetPositive.h
|
||||
/
|
||||
/ Description: Defines all public APIs for communicating with NetPositive
|
||||
/
|
||||
/ Copyright 1998-1999, Be Incorporated, All Rights Reserved
|
||||
/
|
||||
*******************************************************************************/
|
||||
|
||||
/*
|
||||
* Copyright 2011, Haiku Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
*/
|
||||
#ifndef _NETPOSITIVE_H
|
||||
#define _NETPOSITIVE_H
|
||||
|
||||
/*----------------------------------------------------------------*/
|
||||
/*----- message command constants -------------------------------*/
|
||||
|
||||
// Message command constants
|
||||
// These are not supported by WebPositive at this time and only exists for
|
||||
// compile time backwards compatibility.
|
||||
enum {
|
||||
/* Can be sent to the NetPositive application, a window, or a replicant */
|
||||
/* view. Put the URL in a String field named be:url */
|
||||
// This message could be sent to the NetPositive application, a window, or a
|
||||
// replicant view. The receiver expected the URL in a "be:url" string field.
|
||||
B_NETPOSITIVE_OPEN_URL = 'NPOP',
|
||||
|
||||
/* Can be sent to a window or replicant view */
|
||||
// These commands could be sent to a window or replicant view.
|
||||
B_NETPOSITIVE_BACK = 'NPBK',
|
||||
B_NETPOSITIVE_FORWARD = 'NPFW',
|
||||
B_NETPOSITIVE_HOME = 'NPHM',
|
||||
B_NETPOSITIVE_RELOAD = 'NPRL',
|
||||
B_NETPOSITIVE_STOP = 'NPST',
|
||||
B_NETPOSITIVE_STOP = 'NPST',
|
||||
B_NETPOSITIVE_DOWN = 'NPDN',
|
||||
B_NETPOSITIVE_UP = 'NPUP'
|
||||
};
|
||||
|
||||
/*----------------------------------------------------------------*/
|
||||
/*----- NetPositive-related MIME types --------------------------*/
|
||||
|
||||
/* The MIME types for the NetPositive application and its bookmark files */
|
||||
|
||||
// NetPositive related MIME types
|
||||
// The first one is useless on Haiku, unless NetPositive was manually installed,
|
||||
// the second one is still used for URL files saved by WebPositive.
|
||||
#define B_NETPOSITIVE_APP_SIGNATURE "application/x-vnd.Be-NPOS"
|
||||
#define B_NETPOSITIVE_BOOKMARK_SIGNATURE "application/x-vnd.Be-bookmark"
|
||||
|
||||
/* To set up your application to receive notification when the user */
|
||||
/* clicks on a specific type of URL (telnet URL's, for example), see the */
|
||||
/* details in TypeConstants.h. NetPositive will use external handlers */
|
||||
/* for all URL types except for http, https, file, netpositive, and */
|
||||
/* javascript, which it always handles internally. To maintain */
|
||||
/* compatibility with its previous behavior, if NetPositive does not */
|
||||
/* find a handler for mailto URL's, it will instead launch the handler */
|
||||
/* for "text/x-email". */
|
||||
|
||||
/*----------------------------------------------------------------*/
|
||||
/*----------------------------------------------------------------*/
|
||||
|
||||
#endif /* _NETPOSITIVE_H */
|
||||
#endif // _NETPOSITIVE_H
|
||||
|
||||
+48
-47
@@ -1,84 +1,85 @@
|
||||
/*******************************************************************************
|
||||
/
|
||||
/ File: ISA.h
|
||||
/
|
||||
/ Description: Interface to ISA module
|
||||
/
|
||||
/ Copyright 1998, Be Incorporated, All Rights Reserved.
|
||||
/
|
||||
*******************************************************************************/
|
||||
|
||||
/*
|
||||
* Copyright 2010-2011, Haiku Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
*/
|
||||
#ifndef _ISA_H
|
||||
#define _ISA_H
|
||||
|
||||
//#include <SupportDefs.h>
|
||||
|
||||
#include <SupportDefs.h>
|
||||
#include <bus_manager.h>
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* ---
|
||||
ISA scatter/gather dma support.
|
||||
--- */
|
||||
|
||||
typedef struct {
|
||||
ulong address; /* memory address (little endian!) 4 bytes */
|
||||
ushort transfer_count; /* # transfers minus one (little endian!) 2 bytes*/
|
||||
uchar reserved; /* filler, 1byte*/
|
||||
uchar flag; /* end of link flag, 1byte */
|
||||
typedef struct isa_dma_entry {
|
||||
uint32 address;
|
||||
uint16 transfer_count;
|
||||
uchar reserved;
|
||||
uchar flag;
|
||||
} isa_dma_entry;
|
||||
|
||||
#define B_LAST_ISA_DMA_ENTRY 0x80 /* sets end of link flag in isa_dma_entry */
|
||||
|
||||
#define B_LAST_ISA_DMA_ENTRY 0x80
|
||||
|
||||
|
||||
enum {
|
||||
B_8_BIT_TRANSFER,
|
||||
B_16_BIT_TRANSFER
|
||||
};
|
||||
|
||||
|
||||
#define B_MAX_ISA_DMA_COUNT 0x10000
|
||||
|
||||
|
||||
typedef struct isa_module_info isa_module_info;
|
||||
struct isa_module_info {
|
||||
bus_manager_info binfo;
|
||||
|
||||
uint8 (*read_io_8) (int mapped_io_addr);
|
||||
void (*write_io_8) (int mapped_io_addr, uint8 value);
|
||||
uint16 (*read_io_16) (int mapped_io_addr);
|
||||
void (*write_io_16) (int mapped_io_addr, uint16 value);
|
||||
uint32 (*read_io_32) (int mapped_io_addr);
|
||||
void (*write_io_32) (int mapped_io_addr, uint32 value);
|
||||
uint8 (*read_io_8) (int32 mapped_io_addr);
|
||||
void (*write_io_8) (int32 mapped_io_addr, uint8 value);
|
||||
uint16 (*read_io_16) (int32 mapped_io_addr);
|
||||
void (*write_io_16) (int32 mapped_io_addr, uint16 value);
|
||||
uint32 (*read_io_32) (int32 mapped_io_addr);
|
||||
void (*write_io_32) (int32 mapped_io_addr, uint32 value);
|
||||
|
||||
void * (*ram_address) (const void *physical_address_in_system_memory);
|
||||
void* (*ram_address)
|
||||
(const void * physical_address_in_system_memory);
|
||||
|
||||
long (*make_isa_dma_table) (
|
||||
const void *buffer, /* buffer to make a table for */
|
||||
long buffer_size, /* buffer size */
|
||||
ulong num_bits, /* dma transfer size that will be used */
|
||||
isa_dma_entry *table, /* -> caller-supplied scatter/gather table */
|
||||
long num_entries /* max # entries in table */
|
||||
int32 (*make_isa_dma_table) (
|
||||
const void *buffer,
|
||||
int32 buffer_size,
|
||||
uint32 num_bits,
|
||||
isa_dma_entry *table,
|
||||
int32 num_entries
|
||||
);
|
||||
long (*start_isa_dma) (
|
||||
long channel, /* dma channel to use */
|
||||
void *buf, /* buffer to transfer */
|
||||
long transfer_count, /* # transfers */
|
||||
uchar mode, /* mode flags */
|
||||
uchar e_mode /* extended mode flags */
|
||||
int32 (*start_isa_dma) (
|
||||
int32 channel,
|
||||
void *buf,
|
||||
int32 transfer_count,
|
||||
uchar mode,
|
||||
uchar e_mode
|
||||
);
|
||||
long (*start_scattered_isa_dma) (
|
||||
long channel, /* channel # to use */
|
||||
const isa_dma_entry *table, /* physical address of scatter/gather table */
|
||||
uchar mode, /* mode flags */
|
||||
uchar emode /* extended mode flags */
|
||||
int32 (*start_scattered_isa_dma) (
|
||||
int32 channel,
|
||||
const isa_dma_entry* table,
|
||||
uchar mode,
|
||||
uchar emode
|
||||
);
|
||||
long (*lock_isa_dma_channel) (long channel);
|
||||
long (*unlock_isa_dma_channel) (long channel);
|
||||
int32 (*lock_isa_dma_channel) (int32 channel);
|
||||
int32 (*unlock_isa_dma_channel) (int32 channel);
|
||||
};
|
||||
|
||||
|
||||
|
||||
#define B_ISA_MODULE_NAME "bus_managers/isa/v1"
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* _ISA_H */
|
||||
|
||||
+392
-538
File diff suppressed because it is too large
Load Diff
@@ -1,97 +1,47 @@
|
||||
/*******************************************************************************
|
||||
/
|
||||
/ File: atomizer.h
|
||||
/
|
||||
/ Description: Kernel atomizer module API
|
||||
/
|
||||
/ Copyright 1999, Be Incorporated, All Rights Reserved.
|
||||
/
|
||||
*******************************************************************************/
|
||||
|
||||
#ifndef _ATOMIZER_MODULE_H_
|
||||
#define _ATOMIZER_MODULE_H_
|
||||
/*
|
||||
* Copyright 2010, Haiku Inc. All Rights Reserved.
|
||||
* Distributed under the terms of the MIT License.
|
||||
*/
|
||||
#ifndef _ATOMIZER_H
|
||||
#define _ATOMIZER_H
|
||||
|
||||
#include <SupportDefs.h>
|
||||
#include <module.h>
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
An atomizer is a software device that returns a unique token for a
|
||||
null-terminated UTF8 string.
|
||||
|
||||
Each atomizer comprises a separate token space. The same string interned
|
||||
in two different atomizers will generate two distinct tokens.
|
||||
#define B_ATOMIZER_MODULE_NAME "generic/atomizer/v1"
|
||||
#define B_SYSTEM_ATOMIZER_NAME "Haiku System Atomizer"
|
||||
|
||||
Atomizers and the tokens they generate are only guaranteed valid between
|
||||
matched calls to get_module/put_module.
|
||||
|
||||
void * find_or_make_atomizer(const char *string)
|
||||
Returns a token that identifies the named atomizer, creating a new
|
||||
atomizer if the named atomizer does not exist. Pass null, a zero
|
||||
length string, or the value B_SYSTEM_ATOMIZER_NAME for string will
|
||||
return a pointer to the system atomizer. Returns (void *)(0)
|
||||
if the atomizer could not be created (for whatever reason). A return
|
||||
value of (void *)(-1) refers to the system atomizer.
|
||||
|
||||
status_t delete_atomizer(void *atomizer)
|
||||
Delete the atomizer specified. Returns B_OK if successfull, B_ERROR
|
||||
otherwise. An error return usually means that a race condition was
|
||||
detected while destroying the atomizer.
|
||||
|
||||
void * atomize(void *atomizer, const char *string, int create)
|
||||
Return the unique token for the specified string, creating a new token
|
||||
if the string was not previously atomized and create is non-zero. If
|
||||
atomizer is (void *)(-1), use the system atomizer (saving the step of
|
||||
looking it up with find_or_make_atomizer(). Returns (const char *)(0)
|
||||
if there were any errors detected: insufficient memory or a race
|
||||
condition with someone deleting the atomizer.
|
||||
|
||||
const char * string_for_token(void *atomizer, void *atom)
|
||||
Return a pointer to the string described by atom in the provided atomizer.
|
||||
Returns (const char *)(0) if either the atomizer or the atom were invalid.
|
||||
|
||||
status_t get_next_atomizer_info(void **cookie, atomizer_info *info)
|
||||
Returns info about the next atomizer in the list of atomizers by modifying
|
||||
the contents of info. The pointer specified by *cookie should be set to
|
||||
(void *)(0) to retrieve the first atomizer, and should not be modified
|
||||
thereafter. Returns B_ERROR when there are no more atomizers.
|
||||
Adding or deleting atomizers between calls to get_next_atomizer() results
|
||||
in a safe but undefined behavior.
|
||||
|
||||
void * get_next_atom(void *atomizer, uint32 *cookie)
|
||||
Returns the next atom interned in specified atomizer, *cookie
|
||||
should be set to (uint32)(0) to get the first atom. Returns
|
||||
(void *)(0) when there are no more atoms. Adding atoms between
|
||||
calls to get_next_atom() may cause atoms to be skipped.
|
||||
|
||||
Atomizers are SMP-safe. Check return codes for errors!
|
||||
|
||||
*/
|
||||
|
||||
#define B_ATOMIZER_MODULE_NAME "generic/atomizer/v1"
|
||||
#define B_SYSTEM_ATOMIZER_NAME "BeOS System Atomizer"
|
||||
|
||||
typedef struct {
|
||||
void *atomizer; /* An opaque token representing the atomizer. */
|
||||
char name[B_OS_NAME_LENGTH]; /* The first B_OS_NAME_LENGTH bytes of the atomizer name, null terminated. */
|
||||
uint32 atom_count; /* The number of atoms currently interned in this atomizer. */
|
||||
typedef struct atomizer_info {
|
||||
void* atomizer;
|
||||
char name[B_OS_NAME_LENGTH];
|
||||
uint32 atom_count;
|
||||
} atomizer_info;
|
||||
|
||||
typedef struct {
|
||||
|
||||
typedef struct atomizer_module_info {
|
||||
module_info minfo;
|
||||
const void * (*find_or_make_atomizer)(const char *string);
|
||||
status_t (*delete_atomizer)(const void *atomizer);
|
||||
const void * (*atomize)(const void *atomizer, const char *string, int create);
|
||||
const char * (*string_for_token)(const void * atomizer, const void *atom);
|
||||
status_t (*get_next_atomizer_info)(void **cookie, atomizer_info *info);
|
||||
const void * (*get_next_atom)(const void *atomizer, uint32 *cookie);
|
||||
const void* (*find_or_make_atomizer)(const char* string);
|
||||
status_t (*delete_atomizer)(const void* atomizer);
|
||||
const void* (*atomize)
|
||||
(const void* atomizer, const char* string, int create);
|
||||
const char* (*string_for_token)
|
||||
(const void* atomizer, const void* atom);
|
||||
status_t (*get_next_atomizer_info)
|
||||
(void** cookie, atomizer_info* info);
|
||||
const void* (*get_next_atom)(const void* atomizer, uint32* cookie);
|
||||
} atomizer_module_info;
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
#endif /* _ATOMIZER_H */
|
||||
|
||||
Reference in New Issue
Block a user