Poshlib
Encyclopedia
Posh is a software framework
Software framework
In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by user code, thus providing application specific software...

 used in cross-platform
Cross-platform
In computing, cross-platform, or multi-platform, is an attribute conferred to computer software or computing methods and concepts that are implemented and inter-operate on multiple computer platforms...

 software development
Computer programming
Computer programming is the process of designing, writing, testing, debugging, and maintaining the source code of computer programs. This source code is written in one or more programming languages. The purpose of programming is to create a program that performs specific operations or exhibits a...

. It was created by Brian Hook. It's BSD licensed and currently at version 1.3.002.

The Posh software framework provides a header file
Header file
Some programming languages use header files. These files allow programmers to separate certain elements of a program's source code into reusable files. Header files commonly contain forward declarations of classes, subroutines, variables, and other identifiers...

 and an optional C
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....

 source file.

Posh does not provide alternatives where a host platform
Platform (computing)
A computing platform includes some sort of hardware architecture and a software framework , where the combination allows software, particularly application software, to run...

 does not offer a feature, but informs through preprocessor
C preprocessor
The C preprocessor is the preprocessor for the C and C++ computer programming languages. The preprocessor handles directives for source file inclusion , macro definitions , and conditional inclusion ....

 macros what's supported and what not. It sets macros to assist in compiling with various compiler
Compiler
A compiler is a computer program that transforms source code written in a programming language into another computer language...

s (such as GCC
GNU Compiler Collection
The GNU Compiler Collection is a compiler system produced by the GNU Project supporting various programming languages. GCC is a key component of the GNU toolchain...

, MSVC
Visual C++
Microsoft Visual C++ is a commercial , integrated development environment product from Microsoft for the C, C++, and C++/CLI programming languages...

 and OpenWatcom
Watcom C compiler
The Watcom C/C++ compiler is a compiler for the computer programming languages C and C++ that produces executable programs for several platforms and operating systems. The code it produces for MS-DOS executes very fast. It was one of the first compilers to support the Intel 80386 "protected mode"...

), and different host endianness
Endianness
In computing, the term endian or endianness refers to the ordering of individually addressable sub-components within the representation of a larger data item as stored in external memory . Each sub-component in the representation has a unique degree of significance, like the place value of digits...

es. In its simplest form, only a single header file is required. In the optional C source file, there are functions
Subroutine
In computer science, a subroutine is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code....

 for byte swapping and in-memory serialisation/deserialisation
Serialization
In computer science, in the context of data storage and transmission, serialization is the process of converting a data structure or object state into a format that can be stored and "resurrected" later in the same or another computer environment...

.

Brian Hook also created SAL (Simple Audio Library) that utilises Posh. Both are featured in his book "Write Portable Code". Posh is also used in Ferret
Ferret search library
Ferret is a search library for Ruby inspired by LuceneThere is a Ruby on Rails plugin called acts_as_ferret.Ferret utilizes Poshlib.- External links :** Ruby on Rails plugin for Ferret...

 and Vega Strike
Vega Strike
Vega Strike is a first-person space trading and combat simulator, developed for Microsoft Windows, POSIX Unix-like operating systems such as Linux, and Mac OS X systems. Many of the core game mechanics of Vega Strike are indirectly inspired by Elite...

.

External links

  • Poshlib - Official website (username: guest, password: guest123)
  • POSH: The Portable Open Source Harness - Doxygen
    Doxygen
    Doxygen is a documentation generator for multiple programming languages.Doxygen is a tool for writing software reference documentation. The documentation is written within code, and is thus relatively easy to keep up to date...

    documentation
  • Simple Audio Library
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK