A Roadmap to the QNX Software Development Platform
  Welcome to the QNX Software Development Platform
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
    What is the QNX Software Development Platform?
      Welcome to the QNX Software Development Platform
      Choice, tools, source, and help
      QNX Momentics at a glance
      Additional components
      QNX Aviage middleware
      Getting started before you have your target
        x86 (PC) target
        x86 non-BIOS target
        Any supported CPU family
          Platform-related issues
      A word about licensing
    Getting Started
      How QNX Momentics is organized
      What's on my desktop?
      Upgrading your software
      Managing source code
      Running QNX Neutrino self-hosted
      Mixing a self-hosted machine with other hosts
      Can different versions of QNX Momentics coexist?
        QWinCfg for Windows hosts
        qconfig utility for non-Windows hosts
        Coexistence and the IDE
      Running QNX Neutrino on a target machine
    How to Get Help
      Overview of the documentation
        QNX Software Development Platform
        QNX Momentics Tool Suite
        QNX Neutrino Realtime Operating System
        Photon microGUI
        Advanced Graphics
        Dinkum C and C++
      Viewing the documentation
        Within the IDE
        The Photon Helpviewer
        Keyword indexes
      What should I read first?
        During development (on your host)
        At runtime (on your target)
      Where key features are documented
      Related reading
        On QNX Neutrino
        On POSIX
        On TCP/IP
      Getting quick help with the use command
      Hover help in the IDE
      Visit http://www.qnx.com
      Support plans
      Training
      Custom engineering and consulting
    Glossary
  Quickstart Guide
    10 Steps to Developing a QNX Program: Quickstart Guide
      1. Requirements
      2. Installing the QNX Software Development Platform on the development host
      3. Installing the QNX Neutrino RTOS on the target system
      4. Networking with QNX Neutrino
      5. Creating a program project
      6. Communicating with QNX Neutrino
      7. Compiling and linking
      8. Preparing to launch the program
      9. Starting and debugging
      10. Making the program your own
  Installation Guide
    About This Guide
      Typographical conventions
      Before you start
      Getting started with the documentation
      Technical support
    QNX Neutrino Hosts
      System requirements
      BIOS settings
      Installing QNX SDP
      Activating QNX SDP
        Activating automatically
        Activating manually
      Commercializing your evaluation software
      Updating disk drivers
      Uninstalling QNX SDP
      Determining your base directory
    Microsoft Windows Hosts
      System requirements
      Installing QNX SDP
      Activating QNX SDP
        Activating automatically
        Activating manually
      Important notes
      Commercializing your evaluation software
      Uninstalling QNX SDP
      Determining your base directory
    Linux Hosts
      System requirements
      Installing QNX SDP
      Activating QNX SDP
        Activating automatically
        Activating manually
      Commercializing your evaluation software
      Uninstalling QNX SDP
      Determining your base directory
  Release Notes
    QNX(R) Software Development Platform 6.5.0: Release Notes
      Contents
      What's new in QNX Neutrino 6.5.0?
        Migrating from earlier releases
        APIC-enabled devices
        What's new: Kernel
        Persistent Publish/Subscribe (PPS)
        What's new: Licensing
        What's new: Installing and booting
        What's new: Startup
        What's new: Core networking
        What's new: Filesystems
          io-blk.so redesign
          Other filesystem changes
        What's new: Graphics
          Advanced Graphics
          Composition Manager
          Photon microGUI
        What's new: Libraries and header files
        What's new: Drivers
          What's new: Audio device drivers (deva-*)
          What's new: Block-oriented drivers (devb-*)
          What's new: Character drivers (devc-*)
          What's new: Graphics drivers (devg-*)
          What's new: Human interface device drivers (devh-*)
          What's new: Network drivers (devn-*, devnp-*)
        What's new: Documentation
        What's new: I/O devices
        What's new: Security
        Using the VMware image of a QNX Neutrino runtime system
      What's new in the QNX Momentics Tool Suite?
        What's new: Compiler, tools, and utilities
        What's new: Integrated Development Environment
        Debugging information for shipped binaries
      Discontinued items
      Experimental items
      Known issues
        Known issues: Installing and uninstalling
        Known issues: Kernel
        Known issues: Libraries and header files
        Known issues: Filesystems
        Known issues: Startup
        Known issues: Adaptive partitioning
        Known issues: Booting
        Known issues: BSPs and DDKs
        Known issues: Compiler, tools, and utilities
        Known issues: Device drivers
          Audio device drivers (deva-*)
          Block-oriented drivers (devb-*)
          Graphics drivers (devg-*)
          Human interface device drivers (devh-*)
          Network drivers (devn-*, devnp-*)
          USB drivers (devu-*)
        Flash filesystems & embedding
        Known issues: IDE
          Known issues: General
          Known issues: Application Profiler perspective
          Known issues: System Profiler perspective
          Known issues: Memory Analysis perspective
          Known issues: System Information perspective
          Known issues: System Builder perspective
          Known issues: C/C++ development
          Known issues: Team/CVS
          Known issues: Debugging
        Known issues: Documentation
        Known issues: Instant Device Activation
        Known issues: I/O devices
        Known issues: Multimedia
        Known issues: Networking
        Known issues: Graphics
          Advanced Graphics
          Photon microGUI
        Known issues: Persistent Publish/Subscribe
        Known issues: Runtime kit
        Known issues: System Analysis Toolkit
        Known issues: Host-specific
          Windows hosts
          Linux hosts
        Known issues: Web browsers
      Getting started with the documentation
      Technical support
      List of fixes
        Software fixes
        Documentation fixes
  Welcome to the QNX Software Development Platform
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
    What is the QNX Software Development Platform?
      Welcome to the QNX Software Development Platform
      Choice, tools, source, and help
      QNX Momentics at a glance
      Additional components
      QNX Aviage middleware
      Getting started before you have your target
        x86 (PC) target
        x86 non-BIOS target
        Any supported CPU family
          Platform-related issues
      A word about licensing
    Getting Started
      How QNX Momentics is organized
      What's on my desktop?
      Upgrading your software
      Managing source code
      Running QNX Neutrino self-hosted
      Mixing a self-hosted machine with other hosts
      Can different versions of QNX Momentics coexist?
        QWinCfg for Windows hosts
        qconfig utility for non-Windows hosts
        Coexistence and the IDE
      Running QNX Neutrino on a target machine
    How to Get Help
      Overview of the documentation
        QNX Software Development Platform
        QNX Momentics Tool Suite
        QNX Neutrino Realtime Operating System
        Photon microGUI
        Advanced Graphics
        Dinkum C and C++
      Viewing the documentation
        Within the IDE
        The Photon Helpviewer
        Keyword indexes
      What should I read first?
        During development (on your host)
        At runtime (on your target)
      Where key features are documented
      Related reading
        On QNX Neutrino
        On POSIX
        On TCP/IP
      Getting quick help with the use command
      Hover help in the IDE
      Visit http://www.qnx.com
      Support plans
      Training
      Custom engineering and consulting
    Glossary
  Quickstart Guide
    10 Steps to Developing a QNX Program: Quickstart Guide
      1. Requirements
      2. Installing the QNX Software Development Platform on the development host
      3. Installing the QNX Neutrino RTOS on the target system
      4. Networking with QNX Neutrino
      5. Creating a program project
      6. Communicating with QNX Neutrino
      7. Compiling and linking
      8. Preparing to launch the program
      9. Starting and debugging
      10. Making the program your own
  Installation Guide
    About This Guide
      Typographical conventions
      Before you start
      Getting started with the documentation
      Technical support
    QNX Neutrino Hosts
      System requirements
      BIOS settings
      Installing QNX SDP
      Activating QNX SDP
        Activating automatically
        Activating manually
      Commercializing your evaluation software
      Updating disk drivers
      Uninstalling QNX SDP
      Determining your base directory
    Microsoft Windows Hosts
      System requirements
      Installing QNX SDP
      Activating QNX SDP
        Activating automatically
        Activating manually
      Important notes
      Commercializing your evaluation software
      Uninstalling QNX SDP
      Determining your base directory
    Linux Hosts
      System requirements
      Installing QNX SDP
      Activating QNX SDP
        Activating automatically
        Activating manually
      Commercializing your evaluation software
      Uninstalling QNX SDP
      Determining your base directory
  Release Notes
    QNX(R) Software Development Platform 6.5.0: Release Notes
      Contents
      What's new in QNX Neutrino 6.5.0?
        Migrating from earlier releases
        APIC-enabled devices
        What's new: Kernel
        Persistent Publish/Subscribe (PPS)
        What's new: Licensing
        What's new: Installing and booting
        What's new: Startup
        What's new: Core networking
        What's new: Filesystems
          io-blk.so redesign
          Other filesystem changes
        What's new: Graphics
          Advanced Graphics
          Composition Manager
          Photon microGUI
        What's new: Libraries and header files
        What's new: Drivers
          What's new: Audio device drivers (deva-*)
          What's new: Block-oriented drivers (devb-*)
          What's new: Character drivers (devc-*)
          What's new: Graphics drivers (devg-*)
          What's new: Human interface device drivers (devh-*)
          What's new: Network drivers (devn-*, devnp-*)
        What's new: Documentation
        What's new: I/O devices
        What's new: Security
        Using the VMware image of a QNX Neutrino runtime system
      What's new in the QNX Momentics Tool Suite?
        What's new: Compiler, tools, and utilities
        What's new: Integrated Development Environment
        Debugging information for shipped binaries
      Discontinued items
      Experimental items
      Known issues
        Known issues: Installing and uninstalling
        Known issues: Kernel
        Known issues: Libraries and header files
        Known issues: Filesystems
        Known issues: Startup
        Known issues: Adaptive partitioning
        Known issues: Booting
        Known issues: BSPs and DDKs
        Known issues: Compiler, tools, and utilities
        Known issues: Device drivers
          Audio device drivers (deva-*)
          Block-oriented drivers (devb-*)
          Graphics drivers (devg-*)
          Human interface device drivers (devh-*)
          Network drivers (devn-*, devnp-*)
          USB drivers (devu-*)
        Flash filesystems & embedding
        Known issues: IDE
          Known issues: General
          Known issues: Application Profiler perspective
          Known issues: System Profiler perspective
          Known issues: Memory Analysis perspective
          Known issues: System Information perspective
          Known issues: System Builder perspective
          Known issues: C/C++ development
          Known issues: Team/CVS
          Known issues: Debugging
        Known issues: Documentation
        Known issues: Instant Device Activation
        Known issues: I/O devices
        Known issues: Multimedia
        Known issues: Networking
        Known issues: Graphics
          Advanced Graphics
          Photon microGUI
        Known issues: Persistent Publish/Subscribe
        Known issues: Runtime kit
        Known issues: System Analysis Toolkit
        Known issues: Host-specific
          Windows hosts
          Linux hosts
        Known issues: Web browsers
      Getting started with the documentation
      Technical support
      List of fixes
        Software fixes
        Documentation fixes
Dinkum Documentation
  Dinkum C++ Library
    Dinkum C++ Library
      Table of Contents
    <algorithm>
      adjacent_find
      binary_search
      copy
      copy_backward
      count
      count_if
      equal
      equal_range
      fill
      fill_n
      find
      find_end
      find_first_of
      find_if
      for_each
      generate
      generate_n
      includes
      inplace_merge
      iter_swap
      lexicographical_compare
      lower_bound
      make_heap
      max
      max_element
      merge
      min
      min_element
      mismatch
      next_permutation
      nth_element
      partial_sort
      partial_sort_copy
      partition
      pop_heap
      prev_permutation
      push_heap
      random_shuffle
      remove
      remove_copy
      remove_copy_if
      remove_if
      replace
      replace_copy
      replace_copy_if
      replace_if
      reverse
      reverse_copy
      rotate
      rotate_copy
      search
      search_n
      set_difference
      set_intersection
      set_symmetric_difference
      set_union
      sort
      sort_heap
      stable_partition
      stable_sort
      swap
      swap_ranges
      transform
      unique
      unique_copy
      upper_bound
    <bitset>
      bitset
        bitset::any
        bitset::bitset
        bitset::count
        bitset::element_type
        bitset::flip
        bitset::none
        bitset::operator!=
        bitset::operator&=
        bitset::operator<<
        bitset::operator<<=
        bitset::operator==
        bitset::operator>>
        bitset::operator>>=
        bitset::operator[]
        bitset::operator^=
        bitset::operator OR=
        bitset::operator~
        bitset::reference
        bitset::reset
        bitset::set
        bitset::size
        bitset::test
        bitset::to_string
        bitset::to_ulong
      operator&
      operator OR
      operator^
      operator<<
      operator>>
    <complex>
      abs
      arg
      complex
        complex::complex
        complex::imag
        complex::operator*=
        complex::operator+=
        complex::operator-=
        complex::operator/=
        complex::operator=
        complex::real
        complex::value_type
      complex<double>
      complex<float>
      complex<long double>
      conj
      cos
      cosh
      exp
      imag
      log
      log10
      norm
      operator!=
      operator*
      operator+
      operator-
      operator/
      operator<<
      operator==
      operator>>
      polar
      pow
      real
      sin
      sinh
      sqrt
      __STD_COMPLEX
      tan
      tanh
    <deque>
      deque
        deque::allocator_type
        deque::assign
        deque::at
        deque::back
        deque::begin
        deque::clear
        deque::const_iterator
        deque::const_pointer
        deque::const_reference
        deque::const_reverse_iterator
        deque::deque
        deque::difference_type
        deque::empty
        deque::end
        deque::erase
        deque::front
        deque::get_allocator
        deque::insert
        deque::iterator
        deque::max_size
        deque::operator[]
        deque::pointer
        deque::pop_back
        deque::pop_front
        deque::push_back
        deque::push_front
        deque::rbegin
        deque::reference
        deque::rend
        deque::resize
        deque::reverse_iterator
        deque::size
        deque::size_type
        deque::swap
        deque::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <exception>
      bad_exception
      exception
      set_terminate
      set_unexpected
      terminate
      terminate_handler
      uncaught_exception
      unexpected
      unexpected_handler
    <fstream>
      basic_filebuf
        basic_filebuf::basic_filebuf
        basic_filebuf::char_type
        basic_filebuf::close
        basic_filebuf::int_type
        basic_filebuf::is_open
        basic_filebuf::off_type
        basic_filebuf::open
        basic_filebuf::overflow
        basic_filebuf::pbackfail
        basic_filebuf::pos_type
        basic_filebuf::seekoff
        basic_filebuf::seekpos
        basic_filebuf::setbuf
        basic_filebuf::sync
        basic_filebuf::traits_type
        basic_filebuf::underflow
      basic_fstream
        basic_fstream::basic_fstream
        basic_fstream::close
        basic_fstream::is_open
        basic_fstream::open
        basic_fstream::rdbuf
      basic_ifstream
        basic_ifstream::basic_ifstream
        basic_ifstream::close
        basic_ifstream::is_open
        basic_ifstream::open
        basic_ifstream::rdbuf
      basic_ofstream
        basic_ofstream::basic_ofstream
        basic_ofstream::close
        basic_ofstream::is_open
        basic_ofstream::open
        basic_ofstream::rdbuf
      filebuf
      fstream
      ifstream
      ofstream
      wfstream
      wifstream
      wofstream
      wfilebuf
    <functional>
      binary_function
      binary_negate
      bind1st
      bind2nd
      binder1st
      binder2nd
      const_mem_fun_t
      const_mem_fun_ref_t
      const_mem_fun1_t
      const_mem_fun1_ref_t
      divides
      equal_to
      greater
      greater_equal
      less
      less_equal
      logical_and
      logical_not
      logical_or
      mem_fun
      mem_fun_ref
      mem_fun_t
      mem_fun_ref_t
      mem_fun1_t
      mem_fun1_ref_t
      minus
      modulus
      multiplies
      negate
      not1
      not2
      not_equal_to
      plus
      ptr_fun
      unary_function
      unary_negate
    <hash_map>
      hash_compare
      hash_map
        hash_map::allocator_type
        hash_map::begin
        hash_map::clear
        hash_map::const_iterator
        hash_map::const_pointer
        hash_map::const_reference
        hash_map::const_reverse_iterator
        hash_map::count
        hash_map::difference_type
        hash_map::empty
        hash_map::end
        hash_map::equal_range
        hash_map::erase
        hash_map::find
        hash_map::get_allocator
        hash_map::hash_map
        hash_map::insert
        hash_map::iterator
        hash_map::key_comp
        hash_map::key_compare
        hash_map::key_type
        hash_map::lower_bound
        hash_map::mapped_type
        hash_map::max_size
        hash_map::operator[]
        hash_map::pointer
        hash_map::rbegin
        hash_map::reference
        hash_map::rend
        hash_map::reverse_iterator
        hash_map::size
        hash_map::size_type
        hash_map::swap
        hash_map::upper_bound
        hash_map::value_comp
        hash_map::value_compare
        hash_map::value_type
      hash_multimap
        hash_multimap::allocator_type
        hash_multimap::begin
        hash_multimap::clear
        hash_multimap::const_iterator
        hash_multimap::const_pointer
        hash_multimap::const_reference
        hash_multimap::const_reverse_iterator
        hash_multimap::count
        hash_multimap::difference_type
        hash_multimap::empty
        hash_multimap::end
        hash_multimap::equal_range
        hash_multimap::erase
        hash_multimap::find
        hash_multimap::get_allocator
        hash_multimap::hash_multimap
        hash_multimap::insert
        hash_multimap::iterator
        hash_multimap::key_comp
        hash_multimap::key_compare
        hash_multimap::key_type
        hash_multimap::lower_bound
        hash_multimap::mapped_type
        hash_multimap::max_size
        hash_multimap::pointer
        hash_multimap::rbegin
        hash_multimap::reference
        hash_multimap::rend
        hash_multimap::reverse_iterator
        hash_multimap::size
        hash_multimap::size_type
        hash_multimap::swap
        hash_multimap::upper_bound
        hash_multimap::value_comp
        hash_multimap::value_compare
        hash_multimap::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <hash_set>
      hash_multiset
        hash_multiset::allocator_type
        hash_multiset::begin
        hash_multiset::clear
        hash_multiset::const_iterator
        hash_multiset::const_pointer
        hash_multiset::const_reference
        hash_multiset::const_reverse_iterator
        hash_multiset::count
        hash_multiset::difference_type
        hash_multiset::empty
        hash_multiset::end
        hash_multiset::equal_range
        hash_multiset::erase
        hash_multiset::find
        hash_multiset::get_allocator
        hash_multiset::hash_multiset
        hash_multiset::insert
        hash_multiset::iterator
        hash_multiset::key_comp
        hash_multiset::key_compare
        hash_multiset::key_type
        hash_multiset::lower_bound
        hash_multiset::max_size
        hash_multiset::pointer
        hash_multiset::rbegin
        hash_multiset::reference
        hash_multiset::rend
        hash_multiset::reverse_iterator
        hash_multiset::size
        hash_multiset::size_type
        hash_multiset::swap
        hash_multiset::upper_bound
        hash_multiset::value_comp
        hash_multiset::value_compare
        hash_multiset::value_type
      hash_set
        hash_set::allocator_type
        hash_set::begin
        hash_set::clear
        hash_set::const_iterator
        hash_set::const_pointer
        hash_set::const_reference
        hash_set::const_reverse_iterator
        hash_set::count
        hash_set::difference_type
        hash_set::empty
        hash_set::end
        hash_set::equal_range
        hash_set::erase
        hash_set::find
        hash_set::get_allocator
        hash_set::hash_set
        hash_set::insert
        hash_set::iterator
        hash_set::key_comp
        hash_set::key_compare
        hash_set::key_type
        hash_set::lower_bound
        hash_set::max_size
        hash_set::pointer
        hash_set::rbegin
        hash_set::reference
        hash_set::rend
        hash_set::reverse_iterator
        hash_set::size
        hash_set::size_type
        hash_set::swap
        hash_set::upper_bound
        hash_set::value_comp
        hash_set::value_compare
        hash_set::value_type
      swap
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
    <iomanip>
      resetiosflags
      setbase
      setfill
      setiosflags
      setprecision
      setw
    <ios>
      basic_ios
        basic_ios::bad
        basic_ios::basic_ios
        basic_ios::char_type
        basic_ios::clear
        basic_ios::copyfmt
        basic_ios::eof
        basic_ios::exceptions
        basic_ios::fail
        basic_ios::fill
        basic_ios::good
        basic_ios::imbue
        basic_ios::init
        basic_ios::int_type
        basic_ios::narrow
        basic_ios::off_type
        basic_ios::operator void *
        basic_ios::operator!
        basic_ios::pos_type
        basic_ios::rdbuf
        basic_ios::rdstate
        basic_ios::setstate
        basic_ios::tie
        basic_ios::traits_type
        basic_ios::widen
      boolalpha
      dec
      fixed
      fpos
        fpos::fpos
        fpos::operator!=
        fpos::operator+
        fpos::operator+=
        fpos::operator-
        fpos::operator-=
        fpos::operator==
        fpos::operator streamoff
        fpos::state
      hex
      internal
      ios
      ios_base
        ios_base::event
        ios_base::failure
        ios_base::flags
        ios_base::fmtflags
        ios_base::getloc
        ios_base::imbue
        ios_base::Init
        ios_base::ios_base
        ios_base::iostate
        ios_base::iword
        ios_base::openmode
        ios_base::operator=
        ios_base::precision
        ios_base::pword
        ios_base::seekdir
        ios_base::setf
        ios_base::streamoff
        ios_base::streampos
        ios_base::sync_with_stdio
        ios_base::unsetf
        ios_base::width
        ios_base::xalloc
      left
      noboolalpha
      noshowbase
      noshowpoint
      noshowpos
      noskipws
      nounitbuf
      nouppercase
      oct
      right
      scientific
      showbase
      showpoint
      showpos
      skipws
      streamoff
      streampos
      streamsize
      unitbuf
      uppercase
      wios
      wstreampos
    <iosfwd>
    <iostream>
      cerr
      cin
      clog
      cout
      wcerr
      wcin
      wclog
      wcout
    <istream>
      basic_iostream
      basic_istream
        basic_istream::basic_istream
        basic_istream::gcount
        basic_istream::get
        basic_istream::getline
        basic_istream::ignore
        basic_istream::operator>>
        basic_istream::peek
        basic_istream::putback
        basic_istream::read
        basic_istream::readsome
        basic_istream::seekg
        basic_istream::sentry
        basic_istream::sync
        basic_istream::tellg
        basic_istream::unget
      iostream
      istream
      operator>>
      wiostream
      wistream
      ws
    <iterator>
      advance
      back_insert_iterator
        back_insert_iterator::back_insert_iterator
        back_insert_iterator::operator*
        back_insert_iterator::operator++
        back_insert_iterator::operator=
      back_inserter
      bidirectional_iterator_tag
      distance
      forward_iterator_tag
      front_insert_iterator
        front_insert_iterator::front_insert_iterator
        front_insert_iterator::operator*
        front_insert_iterator::operator++
        front_insert_iterator::operator=
      front_inserter
      input_iterator_tag
      insert_iterator
        insert_iterator::insert_iterator
        insert_iterator::operator*
        insert_iterator::operator++
        insert_iterator::operator=
      inserter
      istream_iterator
        istream_iterator::char_type
        istream_iterator::istream_iterator
        istream_iterator::istream_type
        istream_iterator::operator*
        istream_iterator::operator++
        istream_iterator::traits_type
      istreambuf_iterator
        istreambuf_iterator::char_type
        istreambuf_iterator::equal
        istreambuf_iterator::int_type
        istreambuf_iterator::istream_type
        istreambuf_iterator::istreambuf_iterator
        istreambuf_iterator::operator*
        istreambuf_iterator::operator++
        istreambuf_iterator::streambuf_type
        istreambuf_iterator::traits_type
      iterator
      iterator_traits
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      operator+
      operator-
      ostream_iterator
        ostream_iterator::char_type
        ostream_iterator::operator*
        ostream_iterator::operator++
        ostream_iterator::operator=
        ostream_iterator::ostream_iterator
        ostream_iterator::ostream_type
        ostream_iterator::traits_type
      ostreambuf_iterator
        ostreambuf_iterator::char_type
        ostreambuf_iterator::failed
        ostreambuf_iterator::operator*
        ostreambuf_iterator::operator++
        ostreambuf_iterator::operator=
        ostreambuf_iterator::ostream_type
        ostreambuf_iterator::ostreambuf_iterator
        ostreambuf_iterator::streambuf_type
        ostreambuf_iterator::traits_type
      output_iterator_tag
      random_access_iterator_tag
      reverse_iterator
        reverse_iterator::base
        reverse_iterator::operator*
        reverse_iterator::operator+
        reverse_iterator::operator++
        reverse_iterator::operator+=
        reverse_iterator::operator-
        reverse_iterator::operator--
        reverse_iterator::operator-=
        reverse_iterator::operator->
        reverse_iterator::operator[]
    <limits>
      float_denorm_style
      float_round_style
      numeric_limits
    <list>
      list
        list::allocator_type
        list::assign
        list::back
        list::begin
        list::clear
        list::const_iterator
        list::const_pointer
        list::const_reference
        list::const_reverse_iterator
        list::difference_type
        list::empty
        list::end
        list::erase
        list::front
        list::get_allocator
        list::insert
        list::iterator
        list::list
        list::max_size
        list::merge
        list::pointer
        list::pop_back
        list::pop_front
        list::push_back
        list::push_front
        list::rbegin
        list::reference
        list::remove
        list::remove_if
        list::rend
        list::resize
        list::reverse
        list::reverse_iterator
        list::size
        list::size_type
        list::sort
        list::splice
        list::swap
        list::unique
        list::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <locale>
      codecvt
        codecvt::always_noconv
        codecvt::codecvt
        codecvt::do_always_noconv
        codecvt::do_encoding
        codecvt::do_in
        codecvt::do_length
        codecvt::do_max_length
        codecvt::do_out
        codecvt::do_unshift
        codecvt::extern_type
        codecvt::in
        codecvt::intern_type
        codecvt::length
        codecvt::encoding
        codecvt::max_length
        codecvt::out
        codecvt::state_type
        codecvt::unshift
      codecvt_base
      codecvt_byname
      collate
        collate::char_type
        collate::collate
        collate::compare
        collate::do_compare
        collate::do_hash
        collate::do_transform
        collate::hash
        collate::string_type
        collate::transform
      collate_byname
      ctype
        ctype::char_type
        ctype::ctype
        ctype::do_is
        ctype::do_narrow
        ctype::do_scan_is
        ctype::do_scan_not
        ctype::do_tolower
        ctype::do_toupper
        ctype::do_widen
        ctype::is
        ctype::narrow
        ctype::scan_is
        ctype::scan_not
        ctype::tolower
        ctype::toupper
        ctype::widen
      ctype<char>
      ctype_base
      ctype_byname
      has_facet
      isalnum
      isalpha
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      locale
        locale::category
        locale::classic
        locale::combine
        locale::facet
        locale::global
        locale::id
        locale::locale
        locale::name
        locale::operator!=
        locale::operator()
        locale::operator==
      messages
        messages::char_type
        messages::close
        messages::do_close
        messages::do_get
        messages::do_open
        messages::get
        messages::messages
        messages::open
        messages::string_type
      messages_base
      messages_byname
      money_base
      money_get
        money_get::char_type
        money_get::do_get
        money_get::get
        money_get::iter_type
        money_get::money_get
        money_get::string_type
      money_put
        money_put::char_type
        money_put::do_put
        money_put::put
        money_put::iter_type
        money_put::money_put
        money_put::string_type
      moneypunct
        moneypunct::char_type
        moneypunct::curr_symbol
        moneypunct::decimal_point
        moneypunct::do_curr_symbol
        moneypunct::do_decimal_point
        moneypunct::do_frac_digits
        moneypunct::do_grouping
        moneypunct::do_neg_format
        moneypunct::do_negative_sign
        moneypunct::do_pos_format
        moneypunct::do_positive_sign
        moneypunct::do_thousands_sep
        moneypunct::frac_digits
        moneypunct::grouping
        moneypunct::moneypunct
        moneypunct::neg_format
        moneypunct::negative_sign
        moneypunct::pos_format
        moneypunct::positive_sign
        moneypunct::string_type
        moneypunct::thousands_sep
      moneypunct_byname
      num_get
        num_get::char_type
        num_get::do_get
        num_get::get
        num_get::iter_type
        num_get::num_get
      num_put
        num_put::char_type
        num_put::do_put
        num_put::put
        num_put::iter_type
        num_put::num_put
      numpunct
        numpunct::char_type
        numpunct::decimal_point
        numpunct::do_decimal_point
        numpunct::do_falsename
        numpunct::do_grouping
        numpunct::do_thousands_sep
        numpunct::do_truename
        numpunct::falsename
        numpunct::grouping
        numpunct::numpunct
        numpunct::string_type
        numpunct::thousands_sep
        numpunct::truename
      numpunct_byname
      time_base
      time_get
        time_get::char_type
        time_get::date_order
        time_get::do_date_order
        time_get::do_get_date
        time_get::do_get_month
        time_get::do_get_time
        time_get::do_get_weekday
        time_get::do_get_year
        time_get::get_date
        time_get::get_month
        time_get::get_time
        time_get::get_weekday
        time_get::get_year
        time_get::iter_type
        time_get::time_get
      time_get_byname
      time_put
        time_put::char_type
        time_put::do_put
        time_put::put
        time_put::iter_type
        time_put::time_put
      time_put_byname
      tolower
      toupper
      use_facet
    <map>
      map
        map::allocator_type
        map::begin
        map::clear
        map::const_iterator
        map::const_pointer
        map::const_reference
        map::const_reverse_iterator
        map::count
        map::difference_type
        map::empty
        map::end
        map::equal_range
        map::erase
        map::find
        map::get_allocator
        map::insert
        map::iterator
        map::key_comp
        map::key_compare
        map::key_type
        map::lower_bound
        map::map
        map::mapped_type
        map::max_size
        map::operator[]
        map::pointer
        map::rbegin
        map::reference
        map::rend
        map::reverse_iterator
        map::size
        map::size_type
        map::swap
        map::upper_bound
        map::value_comp
        map::value_compare
        map::value_type
      multimap
        multimap::allocator_type
        multimap::begin
        multimap::clear
        multimap::const_iterator
        multimap::const_pointer
        multimap::const_reference
        multimap::const_reverse_iterator
        multimap::count
        multimap::difference_type
        multimap::empty
        multimap::end
        multimap::equal_range
        multimap::erase
        multimap::find
        multimap::get_allocator
        multimap::insert
        multimap::iterator
        multimap::key_comp
        multimap::key_compare
        multimap::key_type
        multimap::lower_bound
        multimap::mapped_type
        multimap::max_size
        multimap::multimap
        multimap::pointer
        multimap::rbegin
        multimap::reference
        multimap::rend
        multimap::reverse_iterator
        multimap::size
        multimap::size_type
        multimap::swap
        multimap::upper_bound
        multimap::value_comp
        multimap::value_compare
        multimap::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <memory>
      allocator
        allocator::const_reference
        allocator::construct
        allocator::destroy
        allocator::pointer
        allocator::rebind
        allocator::reference
        allocator::value_type
      allocator<void>
      auto_ptr
        auto_ptr::auto_ptr
        auto_ptr::~auto_ptr
        auto_ptr::element_type
        auto_ptr::get
        auto_ptr::operator=
        auto_ptr::operator*
        auto_ptr::operator->
        auto_ptr::operator auto_ptr<Other>
        auto_ptr::operator auto_ptr_ref<Other>
        auto_ptr::release
        auto_ptr::reset
      auto_ptr_ref
      get_temporary_buffer
      operator!=
      operator==
      uninitialized_copy
      uninitialized_fill
      uninitialized_fill_n
    <new>
      bad_alloc
      new_handler
      nothrow
      nothrow_t
      operator delete
      operator delete[]
      operator new
      operator new[]
      set_new_handler
    <numeric>
      accumulate
      adjacent_difference
      inner_product
      partial_sum
    <ostream>
      basic_ostream
        basic_ostream::basic_ostream
        basic_ostream::flush
        basic_ostream::operator<<
        basic_ostream::put
        basic_ostream::seekp
        basic_ostream::sentry
        basic_ostream::tellp
        basic_ostream::write
      endl
      ends
      flush
      operator<<
      ostream
      wostream
    <queue>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      priority_queue
        priority_queue::container_type
        priority_queue::empty
        priority_queue::pop
        priority_queue::priority_queue
        priority_queue::push
        priority_queue::size
        priority_queue::size_type
        priority_queue::top
        priority_queue::value_type
      queue
        queue::back
        queue::container_type
        queue::empty
        queue::front
        queue::pop
        queue::push
        queue::queue
        queue::size
        queue::size_type
        queue::value_type
    <set>
      multiset
        multiset::allocator_type
        multiset::begin
        multiset::clear
        multiset::const_iterator
        multiset::const_pointer
        multiset::const_reference
        multiset::const_reverse_iterator
        multiset::count
        multiset::difference_type
        multiset::empty
        multiset::end
        multiset::equal_range
        multiset::erase
        multiset::find
        multiset::get_allocator
        multiset::insert
        multiset::iterator
        multiset::key_comp
        multiset::key_compare
        multiset::key_type
        multiset::lower_bound
        multiset::multiset
        multiset::max_size
        multiset::pointer
        multiset::rbegin
        multiset::reference
        multiset::rend
        multiset::reverse_iterator
        multiset::size
        multiset::size_type
        multiset::swap
        multiset::upper_bound
        multiset::value_comp
        multiset::value_compare
        multiset::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      set
        set::allocator_type
        set::begin
        set::clear
        set::const_iterator
        set::const_pointer
        set::const_reference
        set::const_reverse_iterator
        set::count
        set::difference_type
        set::empty
        set::end
        set::equal_range
        set::erase
        set::find
        set::get_allocator
        set::insert
        set::iterator
        set::key_comp
        set::key_compare
        set::key_type
        set::lower_bound
        set::max_size
        set::pointer
        set::rbegin
        set::reference
        set::rend
        set::reverse_iterator
        set::set
        set::size
        set::size_type
        set::swap
        set::upper_bound
        set::value_comp
        set::value_compare
        set::value_type
      swap
    <slist>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      slist
        slist::allocator_type
        slist::assign
        slist::back
        slist::begin
        slist::clear
        slist::const_iterator
        slist::const_pointer
        slist::const_reference
        slist::difference_type
        slist::empty
        slist::end
        slist::erase
        slist::front
        slist::get_allocator
        slist::insert
        slist::iterator
        slist::max_size
        slist::merge
        slist::pointer
        slist::pop_back
        slist::pop_front
        slist::previous
        slist::push_back
        slist::push_front
        slist::reference
        slist::remove
        slist::remove_if
        slist::resize
        slist::reverse
        slist::size
        slist::size_type
        slist::slist
        slist::sort
        slist::splice
        slist::swap
        slist::unique
        slist::value_type
      swap
    <sstream>
      basic_stringbuf
        basic_stringbuf::allocator_type
        basic_stringbuf::basic_stringbuf
        basic_stringbuf::char_type
        basic_stringbuf::int_type
        basic_stringbuf::off_type
        basic_stringbuf::overflow
        basic_stringbuf::pbackfail
        basic_stringbuf::pos_type
        basic_stringbuf::seekoff
        basic_stringbuf::seekpos
        basic_stringbuf::str
        basic_stringbuf::traits_type
        basic_stringbuf::underflow
      basic_istringstream
        basic_istringstream::allocator_type
        basic_istringstream::basic_istringstream
        basic_istringstream::rdbuf
        basic_istringstream::str
      basic_ostringstream
        basic_ostringstream::allocator_type
        basic_ostringstream::basic_ostringstream
        basic_ostringstream::rdbuf
        basic_ostringstream::str
      basic_stringstream
        basic_stringstream::allocator_type
        basic_stringstream::basic_stringstream
        basic_stringstream::rdbuf
        basic_stringstream::str
      istringstream
      ostringstream
      stringbuf
      stringstream
      wistringstream
      wostringstream
      wstringbuf
      wstringstream
    <stack>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      stack
        stack::container_type
        stack::empty
        stack::pop
        stack::push
        stack::size
        stack::size_type
        stack::stack
        stack::top
        stack::value_type
    <stdexcept>
      domain_error
      invalid_argument
      length_error
      logic_error
      out_of_range
      overflow_error
      range_error
      runtime_error
      underflow_error
    <streambuf>
      basic_streambuf
        basic_streambuf::basic_streambuf
        basic_streambuf::char_type
        basic_streambuf::eback
        basic_streambuf::egptr
        basic_streambuf::epptr
        basic_streambuf::gbump
        basic_streambuf::getloc
        basic_streambuf::gptr
        basic_streambuf::imbue
        basic_streambuf::in_avail
        basic_streambuf::int_type
        basic_streambuf::off_type
        basic_streambuf::overflow
        basic_streambuf::pbackfail
        basic_streambuf::pbase
        basic_streambuf::pbump
        basic_streambuf::pos_type
        basic_streambuf::pptr
        basic_streambuf::pubimbue
        basic_streambuf::pubseekoff
        basic_streambuf::pubseekpos
        basic_streambuf::pubsetbuf
        basic_streambuf::pubsync
        basic_streambuf::sbumpc
        basic_streambuf::seekoff
        basic_streambuf::seekpos
        basic_streambuf::setbuf
        basic_streambuf::setg
        basic_streambuf::setp
        basic_streambuf::sgetc
        basic_streambuf::sgetn
        basic_streambuf::showmanyc
        basic_streambuf::snextc
        basic_streambuf::sputbackc
        basic_streambuf::sputc
        basic_streambuf::sputn
        basic_streambuf::stossc
        basic_streambuf::sungetc
        basic_streambuf::sync
        basic_streambuf::traits_type
        basic_streambuf::uflow
        basic_streambuf::underflow
        basic_streambuf::xsgetn
        basic_streambuf::xsputn
      streambuf
      wstreambuf
    <string>
      basic_string
        basic_string::allocator_type
        basic_string::append
        basic_string::assign
        basic_string::at
        basic_string::basic_string
        basic_string::begin
        basic_string::c_str
        basic_string::capacity
        basic_string::clear
        basic_string::compare
        basic_string::const_iterator
        basic_string::const_pointer
        basic_string::const_reference
        basic_string::const_reverse_iterator
        basic_string::copy
        basic_string::data
        basic_string::difference_type
        basic_string::empty
        basic_string::end
        basic_string::erase
        basic_string::find
        basic_string::find_first_not_of
        basic_string::find_first_of
        basic_string::find_last_not_of
        basic_string::find_last_of
        basic_string::get_allocator
        basic_string::insert
        basic_string::iterator
        basic_string::length
        basic_string::max_size
        basic_string::npos
        basic_string::operator+=
        basic_string::operator=
        basic_string::operator[]
        basic_string::pointer
        basic_string::push_back
        basic_string::rbegin
        basic_string::reference
        basic_string::rend
        basic_string::replace
        basic_string::reserve
        basic_string::resize
        basic_string::reverse_iterator
        basic_string::rfind
        basic_string::size
        basic_string::size_type
        basic_string::substr
        basic_string::swap
        basic_string::traits_type
        basic_string::value_type
      char_traits
        char_traits::assign
        char_traits::char_type
        char_traits::compare
        char_traits::copy
        char_traits::eof
        char_traits::eq
        char_traits::eq_int_type
        char_traits::find
        char_traits::int_type
        char_traits::length
        char_traits::lt
        char_traits::move
        char_traits::not_eof
        char_traits::off_type
        char_traits::pos_type
        char_traits::state_type
        char_traits::to_char_type
        char_traits::to_int_type
      char_traits<char>
      char_traits<wchar_t>
      getline
      operator+
      operator!=
      operator==
      operator<
      operator<<
      operator<=
      operator>
      operator>=
      operator>>
      string
      swap
      wstring
    <strstream>
      strstreambuf
        strstreambuf::freeze
        strstreambuf::pcount
        strstreambuf::overflow
        strstreambuf::pbackfail
        strstreambuf::seekoff
        strstreambuf::seekpos
        strstreambuf::str
        strstreambuf::strstreambuf
        strstreambuf::underflow
      istrstream
        istrstream::istrstream
        istrstream::rdbuf
        istrstream::str
      ostrstream
        ostrstream::freeze
        ostrstream::ostrstream
        ostrstream::pcount
        ostrstream::rdbuf
        ostrstream::str
      strstream
        strstream::freeze
        strstream::pcount
        strstream::strstream
        strstream::rdbuf
        strstream::str
    <typeinfo>
      bad_cast
      bad_typeid
      type_info
        type_info::before
        type_info::name
    <utility>
      make_pair
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      pair
    <valarray>
      abs
      acos
      asin
      atan
      atan2
      cos
      cosh
      exp
      gslice
        gslice::gslice
        gslice::size
        gslice::start
        gslice::stride
      gslice_array
      indirect_array
      log
      log10
      mask_array
      operator!=
      operator%
      operator&
      operator&&
      operator>
      operator>>
      operator>=
      operator<
      operator<<
      operator<=
      operator*
      operator+
      operator-
      operator/
      operator==
      operator^
      operator OR
      operator OR OR
      pow
      sin
      sinh
      slice
        slice::slice
        slice::size
        slice::start
        slice::stride
      slice_array
      sqrt
      tan
      tanh
      valarray
        valarray::apply
        valarray::cshift
        valarray::max
        valarray::min
        valarray::operator!
        valarray::operator%=
        valarray::operator&=
        valarray::operator>>=
        valarray::operator<<=
        valarray::operator*=
        valarray::operator+
        valarray::operator+=
        valarray::operator-
        valarray::operator-=
        valarray::operator/=
        valarray::operator=
        valarray::operator[]
        valarray::operator^=
        valarray::operator OR=
        valarray::operator~
        valarray::resize
        valarray::shift
        valarray::size
        valarray::sum
        valarray::valarray
        valarray::value_type
      valarray<bool>
    <vector>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
      vector
        vector::allocator_type
        vector::assign
        vector::at
        vector::back
        vector::begin
        vector::capacity
        vector::clear
        vector::const_iterator
        vector::const_pointer
        vector::const_reference
        vector::const_reverse_iterator
        vector::difference_type
        vector::empty
        vector::end
        vector::erase
        vector::front
        vector::get_allocator
        vector::insert
        vector::iterator
        vector::max_size
        vector::operator[]
        vector::pointer
        vector::pop_back
        vector::push_back
        vector::rbegin
        vector::reference
        vector::rend
        vector::reserve
        vector::resize
        vector::reverse_iterator
        vector::size
        vector::size_type
        vector::swap
        vector::value_type
        vector::vector
    <cassert>
    <cctype>
    <cerrno>
    <cfloat>
    <ciso646>
    <climits>
    <clocale>
    <cmath>
    <csetjmp>
    <csignal>
    <cstdarg>
    <cstddef>
    <cstdio>
    <cstdlib>
    <cstring>
    <ctime>
    <cwchar>
    <cwctype>
    <assert.h>
      assert
    <ctype.h>
      isalnum
      isalpha
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      tolower
      toupper
    <errno.h>
      EDOM
      EILSEQ
      ERANGE
      errno
    <float.h>
      DBL_DIG
      DBL_EPSILON
      DBL_MANT_DIG
      DBL_MAX
      DBL_MAX_10_EXP
      DBL_MAX_EXP
      DBL_MIN
      DBL_MIN_10_EXP
      DBL_MIN_EXP
      FLT_DIG
      FLT_EPSILON
      FLT_MANT_DIG
      FLT_MAX
      FLT_MAX_10_EXP
      FLT_MAX_EXP
      FLT_MIN
      FLT_MIN_10_EXP
      FLT_MIN_EXP
      FLT_RADIX
      FLT_ROUNDS
      LDBL_DIG
      LDBL_EPSILON
      LDBL_MANT_DIG
      LDBL_MAX
      LDBL_MAX_10_EXP
      LDBL_MAX_EXP
      LDBL_MIN
      LDBL_MIN_10_EXP
      LDBL_MIN_EXP
    <iso646.h>
      and
      and_eq
      bitand
      bitor
      compl
      not
      not_eq
      or
      or_eq
      xor
      xor_eq
    <limits.h>
      CHAR_BIT
      CHAR_MAX
      CHAR_MIN
      INT_MAX
      INT_MIN
      LONG_MAX
      LONG_MIN
      MB_LEN_MAX
      SCHAR_MAX
      SCHAR_MIN
      SHRT_MAX
      SHRT_MIN
      UCHAR_MAX
      UINT_MAX
      ULONG_MAX
      USHRT_MAX
    <locale.h>
      LC_ALL
      LC_COLLATE
      LC_CTYPE
      LC_MONETARY
      LC_NUMERIC
      LC_TIME
      lconv
      localeconv
      NULL
      setlocale
    <math.h>
      HUGE_VAL
    <setjmp.h>
      jmp_buf
      longjmp
      setjmp
    <signal.h>
      raise
      sig_atomic_t
      SIGABRT
      SIGFPE
      SIGILL
      SIGINT
      signal
      SIGSEGV
      SIGTERM
      SIG_DFL
      SIG_ERR
      SIG_IGN
    <stdarg.h>
      va_arg
      va_end
      va_list
      va_start
    <stddef.h>
      NULL
      offsetof
      ptrdiff_t
      size_t
      wchar_t
    <stdio.h>
      BUFSIZ
      clearerr
      EOF
      fclose
      feof
      ferror
      fflush
      fgetc
      fgetpos
      fgets
      FILE
      FILENAME_MAX
      fopen
      FOPEN_MAX
      fpos_t
      fprintf
      fputc
      fputs
      fread
      freopen
      fscanf
      fseek
      fsetpos
      ftell
      fwrite
      getc
      getchar
      gets
      _IOFBF
      _IOLBF
      _IONBF
      L_tmpnam
      NULL
      perror
      printf
      putc
      putchar
      puts
      remove
      rename
      rewind
      scanf
      SEEK_CUR
      SEEK_END
      SEEK_SET
      setbuf
      setvbuf
      size_t
      sprintf
      sscanf
      stderr
      stdin
      stdout
      tmpfile
      TMP_MAX
      tmpnam
      ungetc
      vfprintf
      vprintf
      vsprintf
    <stdlib.h>
      abort
      abs
      atexit
      atof
      atoi
      atol
      bsearch
      calloc
      div
      div_t
      exit
      EXIT_FAILURE
      EXIT_SUCCESS
      free
      getenv
      labs
      ldiv
      ldiv_t
      malloc
      MB_CUR_MAX
      mblen
      mbstowcs
      mbtowc
      NULL
      qsort
      rand
      RAND_MAX
      realloc
      size_t
      srand
      strtod
      strtol
      strtoul
      system
      wchar_t
      wcstombs
      wctomb
    <string.h>
      memchr
      memcmp
      memcpy
      memmove
      memset
      NULL
      size_t
      strcat
      strchr
      strcmp
      strcoll
      strcpy
      strcspn
      strerror
      strlen
      strncat
      strncmp
      strncpy
      strpbrk
      strrchr
      strspn
      strstr
      strtok
      strxfrm
    <time.h>
      asctime
      clock
      CLOCKS_PER_SEC
      clock_t
      ctime
      difftime
      gmtime
      localtime
      mktime
      NULL
      size_t
      strftime
      time
      time_t
      tm
    <wchar.h>
      btowc
      fgetwc
      fgetws
      fputwc
      fputws
      fwide
      fwprintf
      fwscanf
      getwc
      getwchar
      mbrlen
      mbrtowc
      mbsinit
      mbsrtowcs
      mbstate_t
      NULL
      putwc
      putwchar
      size_t
      swprintf
      swscanf
      tm
      ungetwc
      vfwprintf
      vswprintf
      vwprintf
      WCHAR_MAX
      WCHAR_MIN
      wchar_t
      wcrtomb
      wcscat
      wcschr
      wcscmp
      wcscoll
      wcscpy
      wcscspn
      wcsftime
      wcslen
      wcsncat
      wcsncmp
      wcsncpy
      wcspbrk
      wcsrchr
      wcsrtombs
      wcsspn
      wcsstr
      wcstod
      wcstok
      wcstol
      wcstoul
      wcsxfrm
      wctob
      WEOF
      wint_t
      wmemchr
      wmemcmp
      wmemcpy
      wmemmove
      wmemset
      wprintf
      wscanf
    <wctype.h>
      WEOF
      iswalnum
      iswalpha
      iswcntrl
      iswctype
      iswdigit
      iswgraph
      iswlower
      iswprint
      iswpunct
      iswspace
      iswupper
      iswxdigit
      towctrans
      towlower
      towupper
      wctrans
      wctrans_t
      wctype
      wctype_t
      wint_t
    <fstream.h>
    <iomanip.h>
    <iostream.h>
    <new.h>
    <stl.h>
    C++ Library Overview
      Using C++ Library Headers
      C++ Library Conventions
      Iostreams Conventions
    C Library Overview
      Using Standard C Headers
      C Library Conventions
    Characters
      Character Sets
      Escape Sequences
      Trigraphs
      Multibyte Characters
    Files and Streams
      Text and Binary Streams
      Byte and Wide Streams
      Controlling Streams
      Stream States
    Formatted Output
      Print Formats
      Print Functions
    Formatted Input
      Scan Formats
      Scan Functions
      Scan Conversion Specifiers
    STL Conventions
      Iterator Conventions
      Algorithm Conventions
    Containers
      Container
        Container::begin
        Container::clear
        Container::const_iterator
        Container::const_reference
        Container::const_reverse_iterator
        Container::difference_type
        Container::empty
        Container::end
        Container::erase
        Container::iterator
        Container::max_size
        Container::rbegin
        Container::reference
        Container::rend
        Container::reverse_iterator
        Container::size
        Container::size_type
        Container::swap
        Container::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    Preprocessing
    Expressions
    Functions
    Index
  Dinkum C99 Library
    Dinkum C99 Library
      Table of Contents
    <assert.h>
      assert
    <complex.h>
      acos, cacos, cacosf, cacosl
      acosh, cacosh, cacoshf, cacoshl
      arg, carg, cargf, cargl
      asin, casin, casinf, casinl
      asinh, casinh, casinhf, casinhl
      atan, catan, catanf, catanl
      atanh, catanh, catanhf, catanhl
      complex
      _Complex_I
      conj, conjf, conjl
      cos, ccos, ccosf, ccosl
      cosh, ccosh, ccoshf, ccoshl
      cproj, cprojf, cprojl
      exp, cexp, cexpf, cexpl
      I
      imag, cimag, cimagf, cimagl
      imaginary
      _Imaginary_I
      log, clog, clogf, clogl
      pow, cpow, cpowf, cpowl
      real, creal, crealf, creall
      sin, csin, csinf, csinl
      sinh, csinh, csinhf, csinhl
      sqrt, csqrt, csqrtf, csqrtl
      tan, ctan, ctanf, ctanl
      tanh, ctanh, ctanhf, ctanhl
    <ctype.h>
      isalnum
      isalpha
      isblank
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      tolower
      toupper
    <errno.h>
      EDOM
      EILSEQ
      ERANGE
      errno
    <fenv.h>
      FE_ALL_EXCEPT
      FE_DFL_ENV
      FE_DIVBYZERO
      FE_DOWNWARD
      FE_INEXACT
      FE_INVALID
      FE_TONEAREST
      FE_TOWARDZERO
      FE_OVERFLOW
      FE_UNDERFLOW
      FE_UPWARD
      fenv_t
      feclearexcept
      fegettrapenable
      fegetenv
      fegetexceptflag
      fegetround
      feholdexcept
      feraiseexcept
      fesettrapenable
      fesetenv
      fesetexceptflag
      fesetround
      fetestexcept
      feupdateenv
      fexcept_t
    <float.h>
      DBL_DIG
      DBL_EPSILON
      DBL_MANT_DIG
      DBL_MAX
      DBL_MAX_10_EXP
      DBL_MAX_EXP
      DBL_MIN
      DBL_MIN_10_EXP
      DBL_MIN_EXP
      DECIMAL_DIG
      FLT_DIG
      FLT_EPSILON
      FLT_EVAL_METHOD
      FLT_MANT_DIG
      FLT_MAX
      FLT_MAX_10_EXP
      FLT_MAX_EXP
      FLT_MIN
      FLT_MIN_10_EXP
      FLT_MIN_EXP
      FLT_RADIX
      FLT_ROUNDS
      LDBL_DIG
      LDBL_EPSILON
      LDBL_MANT_DIG
      LDBL_MAX
      LDBL_MAX_10_EXP
      LDBL_MAX_EXP
      LDBL_MIN
      LDBL_MIN_10_EXP
      LDBL_MIN_EXP
    <inttypes.h>
      imaxabs, abs
      imaxdiv, div
      imaxdiv_t
      PRId8, PRId16, PRId32, PRId64
      PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64
      PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64
      PRIdMAX
      PRIdPTR
      PRIi8, PRIi16, PRIi32, PRIi64
      PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64
      PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64
      PRIiMAX
      PRIiPTR
      PRIo8, PRIo16, PRIo32, PRIo64
      PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64
      PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64
      PRIoMAX
      PRIoPTR
      PRIu8, PRIu16, PRIu32, PRIu64
      PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64
      PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64
      PRIuMAX
      PRIuPTR
      PRIx8, PRIx16, PRIx32, PRIx64
      PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64
      PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64
      PRIxMAX
      PRIxPTR
      PRIX8, PRIX16, PRIX32, PRIX64
      PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64
      PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64
      PRIXMAX
      PRIXPTR
      SCNd8, SCNd16, SCNd32, SCNd64
      SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64
      SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64
      SCNdMAX
      SCNdPTR
      SCNi8, SCNi16, SCNi32, SCNi64
      SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64
      SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64
      SCNiMAX
      SCNiPTR
      SCNo8, SCNo16, SCNo32, SCNo64
      SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64
      SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64
      SCNoMAX
      SCNoPTR
      SCNu8, SCNu16, SCNu32, SCNu64
      SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64
      SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64
      SCNuMAX
      SCNuPTR
      SCNx8, SCNx16, SCNx32, SCNx64
      SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64
      SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64
      SCNxMAX
      SCNxPTR
      SCNX8, SCNX16, SCNX32, SCNX64
      SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64
      SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64
      SCNXMAX
      SCNXPTR
      strtoimax
      strtoumax
      wcstoimax
      wcstoumax
    <iohw.h>
    <iso646.h>
      and
      and_eq
      bitand
      bitor
      compl
      not
      not_eq
      or
      or_eq
      xor
      xor_eq
    <limits.h>
      CHAR_BIT
      CHAR_MAX
      CHAR_MIN
      INT_MAX
      INT_MIN
      LLONG_MAX
      LLONG_MIN
      LONG_MAX
      LONG_MIN
      MB_LEN_MAX
      SCHAR_MAX
      SCHAR_MIN
      SHRT_MAX
      SHRT_MIN
      UCHAR_MAX
      UINT_MAX
      ULLONG_MAX
      ULONG_MAX
      USHRT_MAX
    <locale.h>
      LC_ALL
      LC_COLLATE
      LC_CTYPE
      LC_MONETARY
      LC_NUMERIC
      LC_TIME
      lconv
      localeconv
      NULL
      setlocale
    <math.h>
      abs, fabs, fabsf, fabsl
      acos, acosf, acosl
      acosh, acoshf, acoshl
      asin, asinf, asinl
      asinh, asinhf, asinhl
      atan, atanf, atanl
      atan2, atan2f, atan2l
      atanh, atanhf, atanhl
      cbrt, cbrtf, cbrtl
      ceil, ceilf, ceill
      copysign, copysignf, copysignl
      cos, cosf, cosl
      cosh, coshf, coshl
      double_t
      erf, erff, erfl
      erfc, erfcf, erfcl
      exp, expf, expl
      exp2, exp2f, exp2l
      expm1, expm1f, expm1l
      fdim, fdimf, fdiml
      float_t
      floor, floorf, floorl
      fma, fmaf, fmal
      fmax, fmaxf, fmaxl
      fmin, fminf, fminl
      fmod, fmodf, fmodl
      fpclassify
      FP_FAST_FMA
      FP_FAST_FMAF
      FP_FAST_FMAL
      FP_ILOGB0
      FP_ILOGBNAN
      FP_INFINITE
      FP_NAN
      FP_NORMAL
      FP_SUBNORMAL
      FP_ZERO
      frexp, frexpf, frexpl
      HUGE_VAL
      HUGE_VALF
      HUGE_VALL
      hypot, hypotf, hypotl
      ilogb, ilogbf, ilogbl
      INFINITY
      isfinite
      isgreater
      isgreaterequal
      isinf
      isless
      islessequal
      islessgreater
      isnan
      isnormal
      isunordered
      ldexp, ldexpf, ldexpl
      lgamma, lgammaf, lgammal
      llrint, llrintf, llrintl
      llround, llroundf, llroundl
      log, logf, logl
      log10, log10f, log10l
      log1p, log1pf, log1pl
      log2, log2f, log2l
      logb, logbf, logbl
      lrint, lrintf, lrintl
      lround, lroundf, lroundl
      MATH_ERRNO
      MATH_ERREXCEPT
      math_errhandling
      modf, modff, modfl
      NAN
      nan, nanf, nanl
      nearbyint, nearbyintf, nearbyintl
      nextafter, nextafterf, nextafterl
      nexttoward, nexttowardf, nexttowardl
      pow, powf, powl
      remainder, remainderf, remainderl
      remquo, remquof, remquol
      rint, rintf, rintl
      round, roundf, roundl
      scalbln, scalblnf, scalblnl
      scalbn, scalbnf, scalbnl
      signbit
      sin, sinf, sinl
      sinh, sinhf, sinhl
      sqrt, sqrtf, sqrtl
      tan, tanf, tanl
      tanh, tanhf, tanhl
      tgamma, tgammaf, tgammal
      trunc, truncf, truncl
    <setjmp.h>
      jmp_buf
      longjmp
      setjmp
    <signal.h>
      raise
      sig_atomic_t
      SIGABRT
      SIGFPE
      SIGILL
      SIGINT
      signal
      SIGSEGV
      SIGTERM
      SIG_DFL
      SIG_ERR
      SIG_IGN
    <stdarg.h>
      va_arg
      va_copy
      va_end
      va_list
      va_start
    <stdbool.h>
      __bool_true_false_are_defined
      bool
      false
      true
    <stddef.h>
      NULL
      offsetof
      ptrdiff_t
      size_t
      wchar_t
    <stdint.h>
      INT8_C, INT16_C, INT32_C, INT64_C
      INT8_MAX, INT16_MAX, INT32_MAX, INT64_MAX
      INT8_MIN, INT16_MIN, INT32_MIN, INT64_MIN
      int8_t, int16_t, int32_t, int64_t
      INT_FAST8_MAX, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX
      INT_FAST8_MIN, INT_FAST16_MIN, INT_FAST32_MIN, INT_FAST64_MIN
      int_fast8_t, int_fast16_t, int_fast32_t, int_fast64_t
      INT_LEAST8_MAX, INT_LEAST16_MAX, INT_LEAST32_MAX, INT_LEAST64_MAX
      INT_LEAST8_MIN, INT_LEAST16_MIN, INT_LEAST32_MIN, INT_LEAST64_MIN
      int_least8_t, int_least16_t, int_least32_t, int_least64_t
      INTMAX_C
      INTMAX_MAX
      INTMAX_MIN
      intmax_t
      INTPTR_MAX
      INTPTR_MIN
      intptr_t
      PTRDIFF_MAX
      PTRDIFF_MIN
      SIG_ATOMIC_MAX
      SIG_ATOMIC_MIN
      SIZE_MAX
      UINT8_C, UINT16_C, UINT32_C, UINT64_C
      UINT8_MAX, UINT16_MAX, UINT32_MAX, UINT64_MAX
      uint8_t, uint16_t, uint32_t, uint64_t
      UINT_FAST8_MAX, UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX
      uint_fast8_t, uint_fast16_t, uint_fast32_t, uint_fast64_t
      UINT_LEAST8_MAX, UINT_LEAST16_MAX, UINT_LEAST32_MAX, UINT_LEAST64_MAX
      uint_least8_t, uint_least16_t, uint_least32_t, uint_least64_t
      UINTMAX_C
      UINTMAX_MAX
      uintmax_t
      UINTPTR_MAX
      uintptr_t
      WCHAR_MAX
      WCHAR_MIN
      WINT_MAX
      WINT_MIN
    <stdio.h>
      BUFSIZ
      clearerr
      EOF
      fclose
      feof
      ferror
      fflush
      fgetc
      fgetpos
      fgets
      FILE
      FILENAME_MAX
      fopen
      FOPEN_MAX
      fpos_t
      fprintf
      fputc
      fputs
      fread
      freopen
      fscanf
      fseek
      fsetpos
      ftell
      fwrite
      getc
      getchar
      gets
      _IOFBF
      _IOLBF
      _IONBF
      L_tmpnam
      NULL
      perror
      printf
      putc
      putchar
      puts
      remove
      rename
      rewind
      scanf
      SEEK_CUR
      SEEK_END
      SEEK_SET
      setbuf
      setvbuf
      size_t
      snprintf
      sprintf
      sscanf
      stderr
      stdin
      stdout
      tmpfile
      TMP_MAX
      tmpnam
      ungetc
      vfprintf
      vfscanf
      vprintf
      vscanf
      vsnprintf
      vsprintf
      vsscanf
    <stdlib.h>
      abort
      abs
      atexit
      atof
      atoi
      atol
      atoll
      bsearch
      calloc
      div
      div_t
      exit
      _Exit
      EXIT_FAILURE
      EXIT_SUCCESS
      free
      getenv
      labs
      llabs
      ldiv
      lldiv
      ldiv_t
      lldiv_t
      malloc
      MB_CUR_MAX
      mblen
      mbstowcs
      mbtowc
      NULL
      qsort
      rand
      RAND_MAX
      realloc
      size_t
      srand
      strtod
      strtof
      strtol
      strtold
      strtoll
      strtoul
      strtoull
      system
      wchar_t
      wcstombs
      wctomb
    <string.h>
      memchr
      memcmp
      memcpy
      memmove
      memset
      NULL
      size_t
      strcat
      strchr
      strcmp
      strcoll
      strcpy
      strcspn
      strerror
      strlen
      strncat
      strncmp
      strncpy
      strpbrk
      strrchr
      strspn
      strstr
      strtok
      strxfrm
    <tgmath.h>
      acos
      acosh
      carg
      asin
      asinh
      atan
      atan2
      atanh
      cbrt
      ceil
      cimag
      conj
      copysign
      cos
      cosh
      cproj
      creal
      erf
      erfc
      exp
      exp2
      expm1
      fabs
      fdim
      floor
      fma
      fmax
      fmin
      fmod
      frexp
      hypot
      ilogb
      ldexp
      lgamma
      llrint
      llround
      log
      log10
      log1p
      log2
      logb
      lrint
      lround
      modf
      nearbyint
      nextafter
      nexttoward
      pow
      remainder
      remquo
      rint
      round
      scalbln
      scalbn
      sin
      sinh
      sqrt
      tan
      tanh
      tgamma
      trunc
    <time.h>
      asctime
      clock
      CLOCKS_PER_SEC
      clock_t
      ctime
      difftime
      gmtime
      localtime
      mktime
      NULL
      size_t
      strftime
      time
      time_t
      tm
    <uchar.h>
      c16rtomb
      c32rtomb
      char16_t
      char32_t
      mbrtoc16
      mbrtoc32
      mbstate_t
      NULL
      size_t
      __STDC_UTF_16__
      __STDC_UTF_32__
    <wchar.h>
      btowc
      fgetwc
      fgetws
      fputwc
      fputws
      fwide
      fwprintf
      fwscanf
      getwc
      getwchar
      mbrlen
      mbrtowc
      mbsinit
      mbsrtowcs
      mbstate_t
      NULL
      putwc
      putwchar
      size_t
      swprintf
      swscanf
      tm
      ungetwc
      vfwprintf
      vfwscanf
      vswprintf
      vswscanf
      vwprintf
      vwscanf
      WCHAR_MAX
      WCHAR_MIN
      wchar_t
      wcrtomb
      wcscat
      wcschr
      wcscmp
      wcscoll
      wcscpy
      wcscspn
      wcsftime
      wcslen
      wcsncat
      wcsncmp
      wcsncpy
      wcspbrk
      wcsrchr
      wcsrtombs
      wcsspn
      wcsstr
      wcstod
      wcstof
      wcstok
      wcstol
      wcstold
      wcstoll
      wcstoul
      wcstoull
      wcsxfrm
      wctob
      WEOF
      wint_t
      wmemchr
      wmemcmp
      wmemcpy
      wmemmove
      wmemset
      wprintf
      wscanf
    <wctype.h>
      WEOF
      iswalnum
      iswalpha
      iswblank
      iswcntrl
      iswctype
      iswdigit
      iswgraph
      iswlower
      iswprint
      iswpunct
      iswspace
      iswupper
      iswxdigit
      towctrans
      towlower
      towupper
      wctrans
      wctrans_t
      wctype
      wctype_t
      wint_t
    C Library Overview
      Using Standard C Headers
      C Library Conventions
    Characters
      Character Sets
      Escape Sequences
      Trigraphs
      Multibyte Characters
      Text and Binary Streams
      Byte and Wide Streams
      Controlling Streams
      Stream States
    Formatted Output
      Print Formats
      Print Functions
      Scan Formats
      Scan Functions
      Scan Conversion Specifiers
    Preprocessing
    Expressions
    Functions
    Index
  Dinkum EC++ Library
    Dinkum EC++ Library
      Table of Contents
    <complex>
      abs
      arg
      complex
        complex::complex
        complex::imag
        complex::operator*=
        complex::operator+=
        complex::operator-=
        complex::operator/=
        complex::operator=
        complex::real
        complex::value_type
      conj
      cos
      cosh
      double_complex
      exp
      float_complex
      imag
      log
      log10
      norm
      operator!=
      operator*
      operator+
      operator-
      operator/
      operator<<
      operator==
      operator>>
      polar
      pow
      real
      sin
      sinh
      sqrt
      __STD_COMPLEX
      tan
      tanh
    <exception>
      bad_exception
      exception
      set_terminate
      set_unexpected
      terminate
      terminate_handler
      uncaught_exception
      unexpected
      unexpected_handler
    <fstream>
      filebuf
        filebuf::filebuf
        filebuf::char_type
        filebuf::close
        filebuf::int_type
        filebuf::is_open
        filebuf::off_type
        filebuf::open
        filebuf::overflow
        filebuf::pbackfail
        filebuf::pos_type
        filebuf::seekoff
        filebuf::seekpos
        filebuf::setbuf
        filebuf::sync
        filebuf::traits_type
        filebuf::underflow
      ifstream
        ifstream::ifstream
        ifstream::close
        ifstream::is_open
        ifstream::open
        ifstream::rdbuf
      ofstream
        ofstream::ofstream
        ofstream::close
        ofstream::is_open
        ofstream::open
        ofstream::rdbuf
    <iomanip>
      resetiosflags
      setbase
      setfill
      setiosflags
      setprecision
      setw
    <ios>
      ios
        ios::bad
        ios::ios
        ios::char_type
        ios::clear
        ios::copyfmt
        ios::eof
        ios::exceptions
        ios::fail
        ios::fill
        ios::good
        ios::imbue
        ios::init
        ios::int_type
        ios::narrow
        ios::off_type
        ios::operator void *
        ios::operator!
        ios::pos_type
        ios::rdbuf
        ios::rdstate
        ios::setstate
        ios::tie
        ios::traits_type
        ios::widen
      boolalpha
      dec
      fixed
      fpos
        fpos::fpos
        fpos::operator!=
        fpos::operator+
        fpos::operator+=
        fpos::operator-
        fpos::operator-=
        fpos::operator==
        fpos::operator streamoff
        fpos::state
      hex
      internal
      ios_base
        ios_base::event
        ios_base::failure
        ios_base::flags
        ios_base::fmtflags
        ios_base::getloc
        ios_base::imbue
        ios_base::Init
        ios_base::ios_base
        ios_base::iostate
        ios_base::iword
        ios_base::openmode
        ios_base::operator=
        ios_base::precision
        ios_base::pword
        ios_base::seekdir
        ios_base::setf
        ios_base::streamoff
        ios_base::streampos
        ios_base::sync_with_stdio
        ios_base::unsetf
        ios_base::width
        ios_base::xalloc
      left
      locale
      mbstate_t
      noboolalpha
      noshowbase
      noshowpoint
      noshowpos
      noskipws
      nounitbuf
      nouppercase
      oct
      right
      scientific
      showbase
      showpoint
      showpos
      skipws
      streamoff
      streampos
      streamsize
      unitbuf
      uppercase
    <iosfwd>
    <iostream>
      cin
      cout
    <istream>
      istream
        istream::istream
        istream::gcount
        istream::get
        istream::getline
        istream::ignore
        istream::operator>>
        istream::peek
        istream::putback
        istream::read
        istream::readsome
        istream::seekg
        istream::sentry
        istream::sync
        istream::tellg
        istream::unget
      operator>>
      ws
    <new>
      bad_alloc
      new_handler
      nothrow
      nothrow_t
      operator delete
      operator delete[]
      operator new
      operator new[]
      set_new_handler
    <ostream>
      ostream
        ostream::ostream
        ostream::flush
        ostream::operator<<
        ostream::put
        ostream::seekp
        ostream::sentry
        ostream::tellp
        ostream::write
      endl
      ends
      flush
      operator<<
    <sstream>
      stringbuf
        stringbuf::allocator_type
        stringbuf::stringbuf
        stringbuf::char_type
        stringbuf::int_type
        stringbuf::off_type
        stringbuf::overflow
        stringbuf::pbackfail
        stringbuf::pos_type
        stringbuf::seekoff
        stringbuf::seekpos
        stringbuf::str
        stringbuf::traits_type
        stringbuf::underflow
      istringstream
        istringstream::allocator_type
        istringstream::istringstream
        istringstream::rdbuf
        istringstream::str
      ostringstream
        ostringstream::allocator_type
        ostringstream::ostringstream
        ostringstream::rdbuf
        ostringstream::str
    <stdexcept>
      domain_error
      invalid_argument
      length_error
      logic_error
      out_of_range
      overflow_error
      range_error
      runtime_error
      underflow_error
    <streambuf>
      streambuf
        streambuf::streambuf
        streambuf::char_type
        streambuf::eback
        streambuf::egptr
        streambuf::epptr
        streambuf::gbump
        streambuf::getloc
        streambuf::gptr
        streambuf::imbue
        streambuf::in_avail
        streambuf::int_type
        streambuf::off_type
        streambuf::overflow
        streambuf::pbackfail
        streambuf::pbase
        streambuf::pbump
        streambuf::pos_type
        streambuf::pptr
        streambuf::pubimbue
        streambuf::pubseekoff
        streambuf::pubseekpos
        streambuf::pubsetbuf
        streambuf::pubsync
        streambuf::sbumpc
        streambuf::seekoff
        streambuf::seekpos
        streambuf::setbuf
        streambuf::setg
        streambuf::setp
        streambuf::sgetc
        streambuf::sgetn
        streambuf::showmanyc
        streambuf::snextc
        streambuf::sputbackc
        streambuf::sputc
        streambuf::sputn
        streambuf::stossc
        streambuf::sungetc
        streambuf::sync
        streambuf::traits_type
        streambuf::uflow
        streambuf::underflow
        streambuf::xsgetn
        streambuf::xsputn
    <string>
      string
        string::allocator_type
        string::append
        string::assign
        string::at
        string::string
        string::begin
        string::c_str
        string::capacity
        string::clear
        string::compare
        string::const_iterator
        string::const_pointer
        string::const_reference
        string::const_reverse_iterator
        string::copy
        string::data
        string::difference_type
        string::empty
        string::end
        string::erase
        string::find
        string::find_first_not_of
        string::find_first_of
        string::find_last_not_of
        string::find_last_of
        string::get_allocator
        string::insert
        string::iterator
        string::length
        string::max_size
        string::npos
        string::operator+=
        string::operator=
        string::operator[]
        string::pointer
        string::push_back
        string::rbegin
        string::reference
        string::rend
        string::replace
        string::reserve
        string::resize
        string::reverse_iterator
        string::rfind
        string::size
        string::size_type
        string::substr
        string::swap
        string::traits_type
        string::value_type
      char_allocator
        char_allocator::operator==
      char_traits
        char_traits::assign
        char_traits::char_type
        char_traits::compare
        char_traits::copy
        char_traits::eof
        char_traits::eq
        char_traits::eq_int_type
        char_traits::find
        char_traits::int_type
        char_traits::length
        char_traits::lt
        char_traits::move
        char_traits::not_eof
        char_traits::off_type
        char_traits::pos_type
        char_traits::state_type
        char_traits::to_char_type
        char_traits::to_int_type
      getline
      operator+
      operator!=
      operator==
      operator<
      operator<<
      operator<=
      operator>
      operator>=
      operator>>
      swap
    <strstream>
      strstreambuf
        strstreambuf::freeze
        strstreambuf::pcount
        strstreambuf::overflow
        strstreambuf::pbackfail
        strstreambuf::seekoff
        strstreambuf::seekpos
        strstreambuf::str
        strstreambuf::strstreambuf
        strstreambuf::underflow
      istrstream
        istrstream::istrstream
        istrstream::rdbuf
        istrstream::str
      ostrstream
        ostrstream::freeze
        ostrstream::ostrstream
        ostrstream::pcount
        ostrstream::rdbuf
        ostrstream::str
    <cassert>
    <cctype>
    <cerrno>
    <cfloat>
    <climits>
    <clocale>
    <cmath>
    <csetjmp>
    <csignal>
    <cstdarg>
    <cstddef>
    <cstdio>
    <cstdlib>
    <cstring>
    <ctime>
    <assert.h>
      assert
    <ctype.h>
      isalnum
      isalpha
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      tolower
      toupper
    <errno.h>
      EDOM
      EILSEQ
      ERANGE
      errno
    <float.h>
      DBL_DIG
      DBL_EPSILON
      DBL_MANT_DIG
      DBL_MAX
      DBL_MAX_10_EXP
      DBL_MAX_EXP
      DBL_MIN
      DBL_MIN_10_EXP
      DBL_MIN_EXP
      FLT_DIG
      FLT_EPSILON
      FLT_MANT_DIG
      FLT_MAX
      FLT_MAX_10_EXP
      FLT_MAX_EXP
      FLT_MIN
      FLT_MIN_10_EXP
      FLT_MIN_EXP
      FLT_RADIX
      FLT_ROUNDS
      LDBL_DIG
      LDBL_EPSILON
      LDBL_MANT_DIG
      LDBL_MAX
      LDBL_MAX_10_EXP
      LDBL_MAX_EXP
      LDBL_MIN
      LDBL_MIN_10_EXP
      LDBL_MIN_EXP
    <limits.h>
      CHAR_BIT
      CHAR_MAX
      CHAR_MIN
      INT_MAX
      INT_MIN
      LONG_MAX
      LONG_MIN
      MB_LEN_MAX
      SCHAR_MAX
      SCHAR_MIN
      SHRT_MAX
      SHRT_MIN
      UCHAR_MAX
      UINT_MAX
      ULONG_MAX
      USHRT_MAX
    <locale.h>
      LC_ALL
      LC_COLLATE
      LC_CTYPE
      LC_MONETARY
      LC_NUMERIC
      LC_TIME
      lconv
      localeconv
      NULL
      setlocale
    <math.h>
      HUGE_VAL
    <setjmp.h>
      jmp_buf
      longjmp
      setjmp
    <signal.h>
      raise
      sig_atomic_t
      SIGABRT
      SIGFPE
      SIGILL
      SIGINT
      signal
      SIGSEGV
      SIGTERM
      SIG_DFL
      SIG_ERR
      SIG_IGN
    <stdarg.h>
      va_arg
      va_end
      va_list
      va_start
    <stddef.h>
      NULL
      offsetof
      ptrdiff_t
      size_t
      wchar_t
    <stdio.h>
      BUFSIZ
      clearerr
      EOF
      fclose
      feof
      ferror
      fflush
      fgetc
      fgetpos
      fgets
      FILE
      FILENAME_MAX
      fopen
      FOPEN_MAX
      fpos_t
      fprintf
      fputc
      fputs
      fread
      freopen
      fscanf
      fseek
      fsetpos
      ftell
      fwrite
      getc
      getchar
      gets
      _IOFBF
      _IOLBF
      _IONBF
      L_tmpnam
      NULL
      perror
      printf
      putc
      putchar
      puts
      remove
      rename
      rewind
      scanf
      SEEK_CUR
      SEEK_END
      SEEK_SET
      setbuf
      setvbuf
      size_t
      sprintf
      sscanf
      stderr
      stdin
      stdout
      tmpfile
      TMP_MAX
      tmpnam
      ungetc
      vfprintf
      vprintf
      vsprintf
    <stdlib.h>
      abort
      abs
      atexit
      atof
      atoi
      atol
      bsearch
      calloc
      div
      div_t
      exit
      EXIT_FAILURE
      EXIT_SUCCESS
      free
      getenv
      labs
      ldiv
      ldiv_t
      malloc
      MB_CUR_MAX
      mblen
      mbstowcs
      mbtowc
      NULL
      qsort
      rand
      RAND_MAX
      realloc
      size_t
      srand
      strtod
      strtol
      strtoul
      system
      wchar_t
      wcstombs
      wctomb
    <string.h>
      memchr
      memcmp
      memcpy
      memmove
      memset
      NULL
      size_t
      strcat
      strchr
      strcmp
      strcoll
      strcpy
      strcspn
      strerror
      strlen
      strncat
      strncmp
      strncpy
      strpbrk
      strrchr
      strspn
      strstr
      strtok
      strxfrm
    <time.h>
      asctime
      clock
      CLOCKS_PER_SEC
      clock_t
      ctime
      difftime
      gmtime
      localtime
      mktime
      NULL
      size_t
      strftime
      time
      time_t
      tm
    <fstream.h>
    <iomanip.h>
    <iostream.h>
    <new.h>
    C++ Library Overview
      Using C++ Library Headers
      C++ Library Conventions
      Iostreams Conventions
      Exceptions
    C Library Overview
      Using Standard C Headers
      C Library Conventions
    Characters
      Character Sets
      Escape Sequences
      Trigraphs
      Multibyte Characters
    Files and Streams
      Text and Binary Streams
      Controlling Streams
      Stream States
    Formatted Output
      Print Formats
      Print Functions
    Formatted Input
      Scan Formats
      Scan Functions
      Scan Conversion Specifiers
    Preprocessing
    Expressions
    Functions
    Index
  Dinkum C++ Library
    Dinkum C++ Library
      Table of Contents
    <algorithm>
      adjacent_find
      binary_search
      copy
      copy_backward
      count
      count_if
      equal
      equal_range
      fill
      fill_n
      find
      find_end
      find_first_of
      find_if
      for_each
      generate
      generate_n
      includes
      inplace_merge
      iter_swap
      lexicographical_compare
      lower_bound
      make_heap
      max
      max_element
      merge
      min
      min_element
      mismatch
      next_permutation
      nth_element
      partial_sort
      partial_sort_copy
      partition
      pop_heap
      prev_permutation
      push_heap
      random_shuffle
      remove
      remove_copy
      remove_copy_if
      remove_if
      replace
      replace_copy
      replace_copy_if
      replace_if
      reverse
      reverse_copy
      rotate
      rotate_copy
      search
      search_n
      set_difference
      set_intersection
      set_symmetric_difference
      set_union
      sort
      sort_heap
      stable_partition
      stable_sort
      swap
      swap_ranges
      transform
      unique
      unique_copy
      upper_bound
    <bitset>
      bitset
        bitset::any
        bitset::bitset
        bitset::count
        bitset::element_type
        bitset::flip
        bitset::none
        bitset::operator!=
        bitset::operator&=
        bitset::operator<<
        bitset::operator<<=
        bitset::operator==
        bitset::operator>>
        bitset::operator>>=
        bitset::operator[]
        bitset::operator^=
        bitset::operator OR=
        bitset::operator~
        bitset::reference
        bitset::reset
        bitset::set
        bitset::size
        bitset::test
        bitset::to_string
        bitset::to_ulong
      operator&
      operator OR
      operator^
      operator<<
      operator>>
    <complex>
      abs
      arg
      complex
        complex::complex
        complex::imag
        complex::operator*=
        complex::operator+=
        complex::operator-=
        complex::operator/=
        complex::operator=
        complex::real
        complex::value_type
      complex<double>
      complex<float>
      complex<long double>
      conj
      cos
      cosh
      exp
      imag
      log
      log10
      norm
      operator!=
      operator*
      operator+
      operator-
      operator/
      operator<<
      operator==
      operator>>
      polar
      pow
      real
      sin
      sinh
      sqrt
      __STD_COMPLEX
      tan
      tanh
    <deque>
      deque
        deque::allocator_type
        deque::assign
        deque::at
        deque::back
        deque::begin
        deque::clear
        deque::const_iterator
        deque::const_pointer
        deque::const_reference
        deque::const_reverse_iterator
        deque::deque
        deque::difference_type
        deque::empty
        deque::end
        deque::erase
        deque::front
        deque::get_allocator
        deque::insert
        deque::iterator
        deque::max_size
        deque::operator[]
        deque::pointer
        deque::pop_back
        deque::pop_front
        deque::push_back
        deque::push_front
        deque::rbegin
        deque::reference
        deque::rend
        deque::resize
        deque::reverse_iterator
        deque::size
        deque::size_type
        deque::swap
        deque::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <exception>
      bad_exception
      exception
      set_terminate
      set_unexpected
      terminate
      terminate_handler
      uncaught_exception
      unexpected
      unexpected_handler
    <fstream>
      basic_filebuf
        basic_filebuf::basic_filebuf
        basic_filebuf::char_type
        basic_filebuf::close
        basic_filebuf::int_type
        basic_filebuf::is_open
        basic_filebuf::off_type
        basic_filebuf::open
        basic_filebuf::overflow
        basic_filebuf::pbackfail
        basic_filebuf::pos_type
        basic_filebuf::seekoff
        basic_filebuf::seekpos
        basic_filebuf::setbuf
        basic_filebuf::sync
        basic_filebuf::traits_type
        basic_filebuf::underflow
      basic_fstream
        basic_fstream::basic_fstream
        basic_fstream::close
        basic_fstream::is_open
        basic_fstream::open
        basic_fstream::rdbuf
      basic_ifstream
        basic_ifstream::basic_ifstream
        basic_ifstream::close
        basic_ifstream::is_open
        basic_ifstream::open
        basic_ifstream::rdbuf
      basic_ofstream
        basic_ofstream::basic_ofstream
        basic_ofstream::close
        basic_ofstream::is_open
        basic_ofstream::open
        basic_ofstream::rdbuf
      filebuf
      fstream
      ifstream
      ofstream
      wfstream
      wifstream
      wofstream
      wfilebuf
    <functional>
      binary_function
      binary_negate
      bind1st
      bind2nd
      binder1st
      binder2nd
      const_mem_fun_t
      const_mem_fun_ref_t
      const_mem_fun1_t
      const_mem_fun1_ref_t
      divides
      equal_to
      greater
      greater_equal
      less
      less_equal
      logical_and
      logical_not
      logical_or
      mem_fun
      mem_fun_ref
      mem_fun_t
      mem_fun_ref_t
      mem_fun1_t
      mem_fun1_ref_t
      minus
      modulus
      multiplies
      negate
      not1
      not2
      not_equal_to
      plus
      ptr_fun
      unary_function
      unary_negate
    <hash_map>
      hash_compare
      hash_map
        hash_map::allocator_type
        hash_map::begin
        hash_map::clear
        hash_map::const_iterator
        hash_map::const_pointer
        hash_map::const_reference
        hash_map::const_reverse_iterator
        hash_map::count
        hash_map::difference_type
        hash_map::empty
        hash_map::end
        hash_map::equal_range
        hash_map::erase
        hash_map::find
        hash_map::get_allocator
        hash_map::hash_map
        hash_map::insert
        hash_map::iterator
        hash_map::key_comp
        hash_map::key_compare
        hash_map::key_type
        hash_map::lower_bound
        hash_map::mapped_type
        hash_map::max_size
        hash_map::operator[]
        hash_map::pointer
        hash_map::rbegin
        hash_map::reference
        hash_map::rend
        hash_map::reverse_iterator
        hash_map::size
        hash_map::size_type
        hash_map::swap
        hash_map::upper_bound
        hash_map::value_comp
        hash_map::value_compare
        hash_map::value_type
      hash_multimap
        hash_multimap::allocator_type
        hash_multimap::begin
        hash_multimap::clear
        hash_multimap::const_iterator
        hash_multimap::const_pointer
        hash_multimap::const_reference
        hash_multimap::const_reverse_iterator
        hash_multimap::count
        hash_multimap::difference_type
        hash_multimap::empty
        hash_multimap::end
        hash_multimap::equal_range
        hash_multimap::erase
        hash_multimap::find
        hash_multimap::get_allocator
        hash_multimap::hash_multimap
        hash_multimap::insert
        hash_multimap::iterator
        hash_multimap::key_comp
        hash_multimap::key_compare
        hash_multimap::key_type
        hash_multimap::lower_bound
        hash_multimap::mapped_type
        hash_multimap::max_size
        hash_multimap::pointer
        hash_multimap::rbegin
        hash_multimap::reference
        hash_multimap::rend
        hash_multimap::reverse_iterator
        hash_multimap::size
        hash_multimap::size_type
        hash_multimap::swap
        hash_multimap::upper_bound
        hash_multimap::value_comp
        hash_multimap::value_compare
        hash_multimap::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <hash_set>
      hash_multiset
        hash_multiset::allocator_type
        hash_multiset::begin
        hash_multiset::clear
        hash_multiset::const_iterator
        hash_multiset::const_pointer
        hash_multiset::const_reference
        hash_multiset::const_reverse_iterator
        hash_multiset::count
        hash_multiset::difference_type
        hash_multiset::empty
        hash_multiset::end
        hash_multiset::equal_range
        hash_multiset::erase
        hash_multiset::find
        hash_multiset::get_allocator
        hash_multiset::hash_multiset
        hash_multiset::insert
        hash_multiset::iterator
        hash_multiset::key_comp
        hash_multiset::key_compare
        hash_multiset::key_type
        hash_multiset::lower_bound
        hash_multiset::max_size
        hash_multiset::pointer
        hash_multiset::rbegin
        hash_multiset::reference
        hash_multiset::rend
        hash_multiset::reverse_iterator
        hash_multiset::size
        hash_multiset::size_type
        hash_multiset::swap
        hash_multiset::upper_bound
        hash_multiset::value_comp
        hash_multiset::value_compare
        hash_multiset::value_type
      hash_set
        hash_set::allocator_type
        hash_set::begin
        hash_set::clear
        hash_set::const_iterator
        hash_set::const_pointer
        hash_set::const_reference
        hash_set::const_reverse_iterator
        hash_set::count
        hash_set::difference_type
        hash_set::empty
        hash_set::end
        hash_set::equal_range
        hash_set::erase
        hash_set::find
        hash_set::get_allocator
        hash_set::hash_set
        hash_set::insert
        hash_set::iterator
        hash_set::key_comp
        hash_set::key_compare
        hash_set::key_type
        hash_set::lower_bound
        hash_set::max_size
        hash_set::pointer
        hash_set::rbegin
        hash_set::reference
        hash_set::rend
        hash_set::reverse_iterator
        hash_set::size
        hash_set::size_type
        hash_set::swap
        hash_set::upper_bound
        hash_set::value_comp
        hash_set::value_compare
        hash_set::value_type
      swap
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
    <iomanip>
      resetiosflags
      setbase
      setfill
      setiosflags
      setprecision
      setw
    <ios>
      basic_ios
        basic_ios::bad
        basic_ios::basic_ios
        basic_ios::char_type
        basic_ios::clear
        basic_ios::copyfmt
        basic_ios::eof
        basic_ios::exceptions
        basic_ios::fail
        basic_ios::fill
        basic_ios::good
        basic_ios::imbue
        basic_ios::init
        basic_ios::int_type
        basic_ios::narrow
        basic_ios::off_type
        basic_ios::operator void *
        basic_ios::operator!
        basic_ios::pos_type
        basic_ios::rdbuf
        basic_ios::rdstate
        basic_ios::setstate
        basic_ios::tie
        basic_ios::traits_type
        basic_ios::widen
      boolalpha
      dec
      fixed
      fpos
        fpos::fpos
        fpos::operator!=
        fpos::operator+
        fpos::operator+=
        fpos::operator-
        fpos::operator-=
        fpos::operator==
        fpos::operator streamoff
        fpos::state
      hex
      internal
      ios
      ios_base
        ios_base::event
        ios_base::failure
        ios_base::flags
        ios_base::fmtflags
        ios_base::getloc
        ios_base::imbue
        ios_base::Init
        ios_base::ios_base
        ios_base::iostate
        ios_base::iword
        ios_base::openmode
        ios_base::operator=
        ios_base::precision
        ios_base::pword
        ios_base::seekdir
        ios_base::setf
        ios_base::streamoff
        ios_base::streampos
        ios_base::sync_with_stdio
        ios_base::unsetf
        ios_base::width
        ios_base::xalloc
      left
      noboolalpha
      noshowbase
      noshowpoint
      noshowpos
      noskipws
      nounitbuf
      nouppercase
      oct
      right
      scientific
      showbase
      showpoint
      showpos
      skipws
      streamoff
      streampos
      streamsize
      unitbuf
      uppercase
      wios
      wstreampos
    <iosfwd>
    <iostream>
      cerr
      cin
      clog
      cout
      wcerr
      wcin
      wclog
      wcout
    <istream>
      basic_iostream
      basic_istream
        basic_istream::basic_istream
        basic_istream::gcount
        basic_istream::get
        basic_istream::getline
        basic_istream::ignore
        basic_istream::operator>>
        basic_istream::peek
        basic_istream::putback
        basic_istream::read
        basic_istream::readsome
        basic_istream::seekg
        basic_istream::sentry
        basic_istream::sync
        basic_istream::tellg
        basic_istream::unget
      iostream
      istream
      operator>>
      wiostream
      wistream
      ws
    <iterator>
      advance
      back_insert_iterator
        back_insert_iterator::back_insert_iterator
        back_insert_iterator::operator*
        back_insert_iterator::operator++
        back_insert_iterator::operator=
      back_inserter
      bidirectional_iterator_tag
      distance
      forward_iterator_tag
      front_insert_iterator
        front_insert_iterator::front_insert_iterator
        front_insert_iterator::operator*
        front_insert_iterator::operator++
        front_insert_iterator::operator=
      front_inserter
      input_iterator_tag
      insert_iterator
        insert_iterator::insert_iterator
        insert_iterator::operator*
        insert_iterator::operator++
        insert_iterator::operator=
      inserter
      istream_iterator
        istream_iterator::char_type
        istream_iterator::istream_iterator
        istream_iterator::istream_type
        istream_iterator::operator*
        istream_iterator::operator++
        istream_iterator::traits_type
      istreambuf_iterator
        istreambuf_iterator::char_type
        istreambuf_iterator::equal
        istreambuf_iterator::int_type
        istreambuf_iterator::istream_type
        istreambuf_iterator::istreambuf_iterator
        istreambuf_iterator::operator*
        istreambuf_iterator::operator++
        istreambuf_iterator::streambuf_type
        istreambuf_iterator::traits_type
      iterator
      iterator_traits
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      operator+
      operator-
      ostream_iterator
        ostream_iterator::char_type
        ostream_iterator::operator*
        ostream_iterator::operator++
        ostream_iterator::operator=
        ostream_iterator::ostream_iterator
        ostream_iterator::ostream_type
        ostream_iterator::traits_type
      ostreambuf_iterator
        ostreambuf_iterator::char_type
        ostreambuf_iterator::failed
        ostreambuf_iterator::operator*
        ostreambuf_iterator::operator++
        ostreambuf_iterator::operator=
        ostreambuf_iterator::ostream_type
        ostreambuf_iterator::ostreambuf_iterator
        ostreambuf_iterator::streambuf_type
        ostreambuf_iterator::traits_type
      output_iterator_tag
      random_access_iterator_tag
      reverse_iterator
        reverse_iterator::base
        reverse_iterator::operator*
        reverse_iterator::operator+
        reverse_iterator::operator++
        reverse_iterator::operator+=
        reverse_iterator::operator-
        reverse_iterator::operator--
        reverse_iterator::operator-=
        reverse_iterator::operator->
        reverse_iterator::operator[]
    <limits>
      float_denorm_style
      float_round_style
      numeric_limits
    <list>
      list
        list::allocator_type
        list::assign
        list::back
        list::begin
        list::clear
        list::const_iterator
        list::const_pointer
        list::const_reference
        list::const_reverse_iterator
        list::difference_type
        list::empty
        list::end
        list::erase
        list::front
        list::get_allocator
        list::insert
        list::iterator
        list::list
        list::max_size
        list::merge
        list::pointer
        list::pop_back
        list::pop_front
        list::push_back
        list::push_front
        list::rbegin
        list::reference
        list::remove
        list::remove_if
        list::rend
        list::resize
        list::reverse
        list::reverse_iterator
        list::size
        list::size_type
        list::sort
        list::splice
        list::swap
        list::unique
        list::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <locale>
      codecvt
        codecvt::always_noconv
        codecvt::codecvt
        codecvt::do_always_noconv
        codecvt::do_encoding
        codecvt::do_in
        codecvt::do_length
        codecvt::do_max_length
        codecvt::do_out
        codecvt::do_unshift
        codecvt::extern_type
        codecvt::in
        codecvt::intern_type
        codecvt::length
        codecvt::encoding
        codecvt::max_length
        codecvt::out
        codecvt::state_type
        codecvt::unshift
      codecvt_base
      codecvt_byname
      collate
        collate::char_type
        collate::collate
        collate::compare
        collate::do_compare
        collate::do_hash
        collate::do_transform
        collate::hash
        collate::string_type
        collate::transform
      collate_byname
      ctype
        ctype::char_type
        ctype::ctype
        ctype::do_is
        ctype::do_narrow
        ctype::do_scan_is
        ctype::do_scan_not
        ctype::do_tolower
        ctype::do_toupper
        ctype::do_widen
        ctype::is
        ctype::narrow
        ctype::scan_is
        ctype::scan_not
        ctype::tolower
        ctype::toupper
        ctype::widen
      ctype<char>
      ctype_base
      ctype_byname
      has_facet
      isalnum
      isalpha
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      locale
        locale::category
        locale::classic
        locale::combine
        locale::facet
        locale::global
        locale::id
        locale::locale
        locale::name
        locale::operator!=
        locale::operator()
        locale::operator==
      messages
        messages::char_type
        messages::close
        messages::do_close
        messages::do_get
        messages::do_open
        messages::get
        messages::messages
        messages::open
        messages::string_type
      messages_base
      messages_byname
      money_base
      money_get
        money_get::char_type
        money_get::do_get
        money_get::get
        money_get::iter_type
        money_get::money_get
        money_get::string_type
      money_put
        money_put::char_type
        money_put::do_put
        money_put::put
        money_put::iter_type
        money_put::money_put
        money_put::string_type
      moneypunct
        moneypunct::char_type
        moneypunct::curr_symbol
        moneypunct::decimal_point
        moneypunct::do_curr_symbol
        moneypunct::do_decimal_point
        moneypunct::do_frac_digits
        moneypunct::do_grouping
        moneypunct::do_neg_format
        moneypunct::do_negative_sign
        moneypunct::do_pos_format
        moneypunct::do_positive_sign
        moneypunct::do_thousands_sep
        moneypunct::frac_digits
        moneypunct::grouping
        moneypunct::moneypunct
        moneypunct::neg_format
        moneypunct::negative_sign
        moneypunct::pos_format
        moneypunct::positive_sign
        moneypunct::string_type
        moneypunct::thousands_sep
      moneypunct_byname
      num_get
        num_get::char_type
        num_get::do_get
        num_get::get
        num_get::iter_type
        num_get::num_get
      num_put
        num_put::char_type
        num_put::do_put
        num_put::put
        num_put::iter_type
        num_put::num_put
      numpunct
        numpunct::char_type
        numpunct::decimal_point
        numpunct::do_decimal_point
        numpunct::do_falsename
        numpunct::do_grouping
        numpunct::do_thousands_sep
        numpunct::do_truename
        numpunct::falsename
        numpunct::grouping
        numpunct::numpunct
        numpunct::string_type
        numpunct::thousands_sep
        numpunct::truename
      numpunct_byname
      time_base
      time_get
        time_get::char_type
        time_get::date_order
        time_get::do_date_order
        time_get::do_get_date
        time_get::do_get_month
        time_get::do_get_time
        time_get::do_get_weekday
        time_get::do_get_year
        time_get::get_date
        time_get::get_month
        time_get::get_time
        time_get::get_weekday
        time_get::get_year
        time_get::iter_type
        time_get::time_get
      time_get_byname
      time_put
        time_put::char_type
        time_put::do_put
        time_put::put
        time_put::iter_type
        time_put::time_put
      time_put_byname
      tolower
      toupper
      use_facet
    <map>
      map
        map::allocator_type
        map::begin
        map::clear
        map::const_iterator
        map::const_pointer
        map::const_reference
        map::const_reverse_iterator
        map::count
        map::difference_type
        map::empty
        map::end
        map::equal_range
        map::erase
        map::find
        map::get_allocator
        map::insert
        map::iterator
        map::key_comp
        map::key_compare
        map::key_type
        map::lower_bound
        map::map
        map::mapped_type
        map::max_size
        map::operator[]
        map::pointer
        map::rbegin
        map::reference
        map::rend
        map::reverse_iterator
        map::size
        map::size_type
        map::swap
        map::upper_bound
        map::value_comp
        map::value_compare
        map::value_type
      multimap
        multimap::allocator_type
        multimap::begin
        multimap::clear
        multimap::const_iterator
        multimap::const_pointer
        multimap::const_reference
        multimap::const_reverse_iterator
        multimap::count
        multimap::difference_type
        multimap::empty
        multimap::end
        multimap::equal_range
        multimap::erase
        multimap::find
        multimap::get_allocator
        multimap::insert
        multimap::iterator
        multimap::key_comp
        multimap::key_compare
        multimap::key_type
        multimap::lower_bound
        multimap::mapped_type
        multimap::max_size
        multimap::multimap
        multimap::pointer
        multimap::rbegin
        multimap::reference
        multimap::rend
        multimap::reverse_iterator
        multimap::size
        multimap::size_type
        multimap::swap
        multimap::upper_bound
        multimap::value_comp
        multimap::value_compare
        multimap::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    <memory>
      allocator
        allocator::const_reference
        allocator::construct
        allocator::destroy
        allocator::pointer
        allocator::rebind
        allocator::reference
        allocator::value_type
      allocator<void>
      auto_ptr
        auto_ptr::auto_ptr
        auto_ptr::~auto_ptr
        auto_ptr::element_type
        auto_ptr::get
        auto_ptr::operator=
        auto_ptr::operator*
        auto_ptr::operator->
        auto_ptr::operator auto_ptr<Other>
        auto_ptr::operator auto_ptr_ref<Other>
        auto_ptr::release
        auto_ptr::reset
      auto_ptr_ref
      get_temporary_buffer
      operator!=
      operator==
      uninitialized_copy
      uninitialized_fill
      uninitialized_fill_n
    <new>
      bad_alloc
      new_handler
      nothrow
      nothrow_t
      operator delete
      operator delete[]
      operator new
      operator new[]
      set_new_handler
    <numeric>
      accumulate
      adjacent_difference
      inner_product
      partial_sum
    <ostream>
      basic_ostream
        basic_ostream::basic_ostream
        basic_ostream::flush
        basic_ostream::operator<<
        basic_ostream::put
        basic_ostream::seekp
        basic_ostream::sentry
        basic_ostream::tellp
        basic_ostream::write
      endl
      ends
      flush
      operator<<
      ostream
      wostream
    <queue>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      priority_queue
        priority_queue::container_type
        priority_queue::empty
        priority_queue::pop
        priority_queue::priority_queue
        priority_queue::push
        priority_queue::size
        priority_queue::size_type
        priority_queue::top
        priority_queue::value_type
      queue
        queue::back
        queue::container_type
        queue::empty
        queue::front
        queue::pop
        queue::push
        queue::queue
        queue::size
        queue::size_type
        queue::value_type
    <set>
      multiset
        multiset::allocator_type
        multiset::begin
        multiset::clear
        multiset::const_iterator
        multiset::const_pointer
        multiset::const_reference
        multiset::const_reverse_iterator
        multiset::count
        multiset::difference_type
        multiset::empty
        multiset::end
        multiset::equal_range
        multiset::erase
        multiset::find
        multiset::get_allocator
        multiset::insert
        multiset::iterator
        multiset::key_comp
        multiset::key_compare
        multiset::key_type
        multiset::lower_bound
        multiset::multiset
        multiset::max_size
        multiset::pointer
        multiset::rbegin
        multiset::reference
        multiset::rend
        multiset::reverse_iterator
        multiset::size
        multiset::size_type
        multiset::swap
        multiset::upper_bound
        multiset::value_comp
        multiset::value_compare
        multiset::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      set
        set::allocator_type
        set::begin
        set::clear
        set::const_iterator
        set::const_pointer
        set::const_reference
        set::const_reverse_iterator
        set::count
        set::difference_type
        set::empty
        set::end
        set::equal_range
        set::erase
        set::find
        set::get_allocator
        set::insert
        set::iterator
        set::key_comp
        set::key_compare
        set::key_type
        set::lower_bound
        set::max_size
        set::pointer
        set::rbegin
        set::reference
        set::rend
        set::reverse_iterator
        set::set
        set::size
        set::size_type
        set::swap
        set::upper_bound
        set::value_comp
        set::value_compare
        set::value_type
      swap
    <slist>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      slist
        slist::allocator_type
        slist::assign
        slist::back
        slist::begin
        slist::clear
        slist::const_iterator
        slist::const_pointer
        slist::const_reference
        slist::difference_type
        slist::empty
        slist::end
        slist::erase
        slist::front
        slist::get_allocator
        slist::insert
        slist::iterator
        slist::max_size
        slist::merge
        slist::pointer
        slist::pop_back
        slist::pop_front
        slist::previous
        slist::push_back
        slist::push_front
        slist::reference
        slist::remove
        slist::remove_if
        slist::resize
        slist::reverse
        slist::size
        slist::size_type
        slist::slist
        slist::sort
        slist::splice
        slist::swap
        slist::unique
        slist::value_type
      swap
    <sstream>
      basic_stringbuf
        basic_stringbuf::allocator_type
        basic_stringbuf::basic_stringbuf
        basic_stringbuf::char_type
        basic_stringbuf::int_type
        basic_stringbuf::off_type
        basic_stringbuf::overflow
        basic_stringbuf::pbackfail
        basic_stringbuf::pos_type
        basic_stringbuf::seekoff
        basic_stringbuf::seekpos
        basic_stringbuf::str
        basic_stringbuf::traits_type
        basic_stringbuf::underflow
      basic_istringstream
        basic_istringstream::allocator_type
        basic_istringstream::basic_istringstream
        basic_istringstream::rdbuf
        basic_istringstream::str
      basic_ostringstream
        basic_ostringstream::allocator_type
        basic_ostringstream::basic_ostringstream
        basic_ostringstream::rdbuf
        basic_ostringstream::str
      basic_stringstream
        basic_stringstream::allocator_type
        basic_stringstream::basic_stringstream
        basic_stringstream::rdbuf
        basic_stringstream::str
      istringstream
      ostringstream
      stringbuf
      stringstream
      wistringstream
      wostringstream
      wstringbuf
      wstringstream
    <stack>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      stack
        stack::container_type
        stack::empty
        stack::pop
        stack::push
        stack::size
        stack::size_type
        stack::stack
        stack::top
        stack::value_type
    <stdexcept>
      domain_error
      invalid_argument
      length_error
      logic_error
      out_of_range
      overflow_error
      range_error
      runtime_error
      underflow_error
    <streambuf>
      basic_streambuf
        basic_streambuf::basic_streambuf
        basic_streambuf::char_type
        basic_streambuf::eback
        basic_streambuf::egptr
        basic_streambuf::epptr
        basic_streambuf::gbump
        basic_streambuf::getloc
        basic_streambuf::gptr
        basic_streambuf::imbue
        basic_streambuf::in_avail
        basic_streambuf::int_type
        basic_streambuf::off_type
        basic_streambuf::overflow
        basic_streambuf::pbackfail
        basic_streambuf::pbase
        basic_streambuf::pbump
        basic_streambuf::pos_type
        basic_streambuf::pptr
        basic_streambuf::pubimbue
        basic_streambuf::pubseekoff
        basic_streambuf::pubseekpos
        basic_streambuf::pubsetbuf
        basic_streambuf::pubsync
        basic_streambuf::sbumpc
        basic_streambuf::seekoff
        basic_streambuf::seekpos
        basic_streambuf::setbuf
        basic_streambuf::setg
        basic_streambuf::setp
        basic_streambuf::sgetc
        basic_streambuf::sgetn
        basic_streambuf::showmanyc
        basic_streambuf::snextc
        basic_streambuf::sputbackc
        basic_streambuf::sputc
        basic_streambuf::sputn
        basic_streambuf::stossc
        basic_streambuf::sungetc
        basic_streambuf::sync
        basic_streambuf::traits_type
        basic_streambuf::uflow
        basic_streambuf::underflow
        basic_streambuf::xsgetn
        basic_streambuf::xsputn
      streambuf
      wstreambuf
    <string>
      basic_string
        basic_string::allocator_type
        basic_string::append
        basic_string::assign
        basic_string::at
        basic_string::basic_string
        basic_string::begin
        basic_string::c_str
        basic_string::capacity
        basic_string::clear
        basic_string::compare
        basic_string::const_iterator
        basic_string::const_pointer
        basic_string::const_reference
        basic_string::const_reverse_iterator
        basic_string::copy
        basic_string::data
        basic_string::difference_type
        basic_string::empty
        basic_string::end
        basic_string::erase
        basic_string::find
        basic_string::find_first_not_of
        basic_string::find_first_of
        basic_string::find_last_not_of
        basic_string::find_last_of
        basic_string::get_allocator
        basic_string::insert
        basic_string::iterator
        basic_string::length
        basic_string::max_size
        basic_string::npos
        basic_string::operator+=
        basic_string::operator=
        basic_string::operator[]
        basic_string::pointer
        basic_string::push_back
        basic_string::rbegin
        basic_string::reference
        basic_string::rend
        basic_string::replace
        basic_string::reserve
        basic_string::resize
        basic_string::reverse_iterator
        basic_string::rfind
        basic_string::size
        basic_string::size_type
        basic_string::substr
        basic_string::swap
        basic_string::traits_type
        basic_string::value_type
      char_traits
        char_traits::assign
        char_traits::char_type
        char_traits::compare
        char_traits::copy
        char_traits::eof
        char_traits::eq
        char_traits::eq_int_type
        char_traits::find
        char_traits::int_type
        char_traits::length
        char_traits::lt
        char_traits::move
        char_traits::not_eof
        char_traits::off_type
        char_traits::pos_type
        char_traits::state_type
        char_traits::to_char_type
        char_traits::to_int_type
      char_traits<char>
      char_traits<wchar_t>
      getline
      operator+
      operator!=
      operator==
      operator<
      operator<<
      operator<=
      operator>
      operator>=
      operator>>
      string
      swap
      wstring
    <strstream>
      strstreambuf
        strstreambuf::freeze
        strstreambuf::pcount
        strstreambuf::overflow
        strstreambuf::pbackfail
        strstreambuf::seekoff
        strstreambuf::seekpos
        strstreambuf::str
        strstreambuf::strstreambuf
        strstreambuf::underflow
      istrstream
        istrstream::istrstream
        istrstream::rdbuf
        istrstream::str
      ostrstream
        ostrstream::freeze
        ostrstream::ostrstream
        ostrstream::pcount
        ostrstream::rdbuf
        ostrstream::str
      strstream
        strstream::freeze
        strstream::pcount
        strstream::strstream
        strstream::rdbuf
        strstream::str
    <typeinfo>
      bad_cast
      bad_typeid
      type_info
        type_info::before
        type_info::name
    <utility>
      make_pair
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      pair
    <valarray>
      abs
      acos
      asin
      atan
      atan2
      cos
      cosh
      exp
      gslice
        gslice::gslice
        gslice::size
        gslice::start
        gslice::stride
      gslice_array
      indirect_array
      log
      log10
      mask_array
      operator!=
      operator%
      operator&
      operator&&
      operator>
      operator>>
      operator>=
      operator<
      operator<<
      operator<=
      operator*
      operator+
      operator-
      operator/
      operator==
      operator^
      operator OR
      operator OR OR
      pow
      sin
      sinh
      slice
        slice::slice
        slice::size
        slice::start
        slice::stride
      slice_array
      sqrt
      tan
      tanh
      valarray
        valarray::apply
        valarray::cshift
        valarray::max
        valarray::min
        valarray::operator!
        valarray::operator%=
        valarray::operator&=
        valarray::operator>>=
        valarray::operator<<=
        valarray::operator*=
        valarray::operator+
        valarray::operator+=
        valarray::operator-
        valarray::operator-=
        valarray::operator/=
        valarray::operator=
        valarray::operator[]
        valarray::operator^=
        valarray::operator OR=
        valarray::operator~
        valarray::resize
        valarray::shift
        valarray::size
        valarray::sum
        valarray::valarray
        valarray::value_type
      valarray<bool>
    <vector>
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
      vector
        vector::allocator_type
        vector::assign
        vector::at
        vector::back
        vector::begin
        vector::capacity
        vector::clear
        vector::const_iterator
        vector::const_pointer
        vector::const_reference
        vector::const_reverse_iterator
        vector::difference_type
        vector::empty
        vector::end
        vector::erase
        vector::front
        vector::get_allocator
        vector::insert
        vector::iterator
        vector::max_size
        vector::operator[]
        vector::pointer
        vector::pop_back
        vector::push_back
        vector::rbegin
        vector::reference
        vector::rend
        vector::reserve
        vector::resize
        vector::reverse_iterator
        vector::size
        vector::size_type
        vector::swap
        vector::value_type
        vector::vector
    <cassert>
    <cctype>
    <cerrno>
    <cfloat>
    <ciso646>
    <climits>
    <clocale>
    <cmath>
    <csetjmp>
    <csignal>
    <cstdarg>
    <cstddef>
    <cstdio>
    <cstdlib>
    <cstring>
    <ctime>
    <cwchar>
    <cwctype>
    <assert.h>
      assert
    <ctype.h>
      isalnum
      isalpha
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      tolower
      toupper
    <errno.h>
      EDOM
      EILSEQ
      ERANGE
      errno
    <float.h>
      DBL_DIG
      DBL_EPSILON
      DBL_MANT_DIG
      DBL_MAX
      DBL_MAX_10_EXP
      DBL_MAX_EXP
      DBL_MIN
      DBL_MIN_10_EXP
      DBL_MIN_EXP
      FLT_DIG
      FLT_EPSILON
      FLT_MANT_DIG
      FLT_MAX
      FLT_MAX_10_EXP
      FLT_MAX_EXP
      FLT_MIN
      FLT_MIN_10_EXP
      FLT_MIN_EXP
      FLT_RADIX
      FLT_ROUNDS
      LDBL_DIG
      LDBL_EPSILON
      LDBL_MANT_DIG
      LDBL_MAX
      LDBL_MAX_10_EXP
      LDBL_MAX_EXP
      LDBL_MIN
      LDBL_MIN_10_EXP
      LDBL_MIN_EXP
    <iso646.h>
      and
      and_eq
      bitand
      bitor
      compl
      not
      not_eq
      or
      or_eq
      xor
      xor_eq
    <limits.h>
      CHAR_BIT
      CHAR_MAX
      CHAR_MIN
      INT_MAX
      INT_MIN
      LONG_MAX
      LONG_MIN
      MB_LEN_MAX
      SCHAR_MAX
      SCHAR_MIN
      SHRT_MAX
      SHRT_MIN
      UCHAR_MAX
      UINT_MAX
      ULONG_MAX
      USHRT_MAX
    <locale.h>
      LC_ALL
      LC_COLLATE
      LC_CTYPE
      LC_MONETARY
      LC_NUMERIC
      LC_TIME
      lconv
      localeconv
      NULL
      setlocale
    <math.h>
      HUGE_VAL
    <setjmp.h>
      jmp_buf
      longjmp
      setjmp
    <signal.h>
      raise
      sig_atomic_t
      SIGABRT
      SIGFPE
      SIGILL
      SIGINT
      signal
      SIGSEGV
      SIGTERM
      SIG_DFL
      SIG_ERR
      SIG_IGN
    <stdarg.h>
      va_arg
      va_end
      va_list
      va_start
    <stddef.h>
      NULL
      offsetof
      ptrdiff_t
      size_t
      wchar_t
    <stdio.h>
      BUFSIZ
      clearerr
      EOF
      fclose
      feof
      ferror
      fflush
      fgetc
      fgetpos
      fgets
      FILE
      FILENAME_MAX
      fopen
      FOPEN_MAX
      fpos_t
      fprintf
      fputc
      fputs
      fread
      freopen
      fscanf
      fseek
      fsetpos
      ftell
      fwrite
      getc
      getchar
      gets
      _IOFBF
      _IOLBF
      _IONBF
      L_tmpnam
      NULL
      perror
      printf
      putc
      putchar
      puts
      remove
      rename
      rewind
      scanf
      SEEK_CUR
      SEEK_END
      SEEK_SET
      setbuf
      setvbuf
      size_t
      sprintf
      sscanf
      stderr
      stdin
      stdout
      tmpfile
      TMP_MAX
      tmpnam
      ungetc
      vfprintf
      vprintf
      vsprintf
    <stdlib.h>
      abort
      abs
      atexit
      atof
      atoi
      atol
      bsearch
      calloc
      div
      div_t
      exit
      EXIT_FAILURE
      EXIT_SUCCESS
      free
      getenv
      labs
      ldiv
      ldiv_t
      malloc
      MB_CUR_MAX
      mblen
      mbstowcs
      mbtowc
      NULL
      qsort
      rand
      RAND_MAX
      realloc
      size_t
      srand
      strtod
      strtol
      strtoul
      system
      wchar_t
      wcstombs
      wctomb
    <string.h>
      memchr
      memcmp
      memcpy
      memmove
      memset
      NULL
      size_t
      strcat
      strchr
      strcmp
      strcoll
      strcpy
      strcspn
      strerror
      strlen
      strncat
      strncmp
      strncpy
      strpbrk
      strrchr
      strspn
      strstr
      strtok
      strxfrm
    <time.h>
      asctime
      clock
      CLOCKS_PER_SEC
      clock_t
      ctime
      difftime
      gmtime
      localtime
      mktime
      NULL
      size_t
      strftime
      time
      time_t
      tm
    <wchar.h>
      btowc
      fgetwc
      fgetws
      fputwc
      fputws
      fwide
      fwprintf
      fwscanf
      getwc
      getwchar
      mbrlen
      mbrtowc
      mbsinit
      mbsrtowcs
      mbstate_t
      NULL
      putwc
      putwchar
      size_t
      swprintf
      swscanf
      tm
      ungetwc
      vfwprintf
      vswprintf
      vwprintf
      WCHAR_MAX
      WCHAR_MIN
      wchar_t
      wcrtomb
      wcscat
      wcschr
      wcscmp
      wcscoll
      wcscpy
      wcscspn
      wcsftime
      wcslen
      wcsncat
      wcsncmp
      wcsncpy
      wcspbrk
      wcsrchr
      wcsrtombs
      wcsspn
      wcsstr
      wcstod
      wcstok
      wcstol
      wcstoul
      wcsxfrm
      wctob
      WEOF
      wint_t
      wmemchr
      wmemcmp
      wmemcpy
      wmemmove
      wmemset
      wprintf
      wscanf
    <wctype.h>
      WEOF
      iswalnum
      iswalpha
      iswcntrl
      iswctype
      iswdigit
      iswgraph
      iswlower
      iswprint
      iswpunct
      iswspace
      iswupper
      iswxdigit
      towctrans
      towlower
      towupper
      wctrans
      wctrans_t
      wctype
      wctype_t
      wint_t
    <fstream.h>
    <iomanip.h>
    <iostream.h>
    <new.h>
    <stl.h>
    C++ Library Overview
      Using C++ Library Headers
      C++ Library Conventions
      Iostreams Conventions
    C Library Overview
      Using Standard C Headers
      C Library Conventions
    Characters
      Character Sets
      Escape Sequences
      Trigraphs
      Multibyte Characters
    Files and Streams
      Text and Binary Streams
      Byte and Wide Streams
      Controlling Streams
      Stream States
    Formatted Output
      Print Formats
      Print Functions
    Formatted Input
      Scan Formats
      Scan Functions
      Scan Conversion Specifiers
    STL Conventions
      Iterator Conventions
      Algorithm Conventions
    Containers
      Container
        Container::begin
        Container::clear
        Container::const_iterator
        Container::const_reference
        Container::const_reverse_iterator
        Container::difference_type
        Container::empty
        Container::end
        Container::erase
        Container::iterator
        Container::max_size
        Container::rbegin
        Container::reference
        Container::rend
        Container::reverse_iterator
        Container::size
        Container::size_type
        Container::swap
        Container::value_type
      operator!=
      operator==
      operator<
      operator<=
      operator>
      operator>=
      swap
    Preprocessing
    Expressions
    Functions
    Index
  Dinkum C99 Library
    Dinkum C99 Library
      Table of Contents
    <assert.h>
      assert
    <complex.h>
      acos, cacos, cacosf, cacosl
      acosh, cacosh, cacoshf, cacoshl
      arg, carg, cargf, cargl
      asin, casin, casinf, casinl
      asinh, casinh, casinhf, casinhl
      atan, catan, catanf, catanl
      atanh, catanh, catanhf, catanhl
      complex
      _Complex_I
      conj, conjf, conjl
      cos, ccos, ccosf, ccosl
      cosh, ccosh, ccoshf, ccoshl
      cproj, cprojf, cprojl
      exp, cexp, cexpf, cexpl
      I
      imag, cimag, cimagf, cimagl
      imaginary
      _Imaginary_I
      log, clog, clogf, clogl
      pow, cpow, cpowf, cpowl
      real, creal, crealf, creall
      sin, csin, csinf, csinl
      sinh, csinh, csinhf, csinhl
      sqrt, csqrt, csqrtf, csqrtl
      tan, ctan, ctanf, ctanl
      tanh, ctanh, ctanhf, ctanhl
    <ctype.h>
      isalnum
      isalpha
      isblank
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      tolower
      toupper
    <errno.h>
      EDOM
      EILSEQ
      ERANGE
      errno
    <fenv.h>
      FE_ALL_EXCEPT
      FE_DFL_ENV
      FE_DIVBYZERO
      FE_DOWNWARD
      FE_INEXACT
      FE_INVALID
      FE_TONEAREST
      FE_TOWARDZERO
      FE_OVERFLOW
      FE_UNDERFLOW
      FE_UPWARD
      fenv_t
      feclearexcept
      fegettrapenable
      fegetenv
      fegetexceptflag
      fegetround
      feholdexcept
      feraiseexcept
      fesettrapenable
      fesetenv
      fesetexceptflag
      fesetround
      fetestexcept
      feupdateenv
      fexcept_t
    <float.h>
      DBL_DIG
      DBL_EPSILON
      DBL_MANT_DIG
      DBL_MAX
      DBL_MAX_10_EXP
      DBL_MAX_EXP
      DBL_MIN
      DBL_MIN_10_EXP
      DBL_MIN_EXP
      DECIMAL_DIG
      FLT_DIG
      FLT_EPSILON
      FLT_EVAL_METHOD
      FLT_MANT_DIG
      FLT_MAX
      FLT_MAX_10_EXP
      FLT_MAX_EXP
      FLT_MIN
      FLT_MIN_10_EXP
      FLT_MIN_EXP
      FLT_RADIX
      FLT_ROUNDS
      LDBL_DIG
      LDBL_EPSILON
      LDBL_MANT_DIG
      LDBL_MAX
      LDBL_MAX_10_EXP
      LDBL_MAX_EXP
      LDBL_MIN
      LDBL_MIN_10_EXP
      LDBL_MIN_EXP
    <inttypes.h>
      imaxabs, abs
      imaxdiv, div
      imaxdiv_t
      PRId8, PRId16, PRId32, PRId64
      PRIdFAST8, PRIdFAST16, PRIdFAST32, PRIdFAST64
      PRIdLEAST8, PRIdLEAST16, PRIdLEAST32, PRIdLEAST64
      PRIdMAX
      PRIdPTR
      PRIi8, PRIi16, PRIi32, PRIi64
      PRIiFAST8, PRIiFAST16, PRIiFAST32, PRIiFAST64
      PRIiLEAST8, PRIiLEAST16, PRIiLEAST32, PRIiLEAST64
      PRIiMAX
      PRIiPTR
      PRIo8, PRIo16, PRIo32, PRIo64
      PRIoFAST8, PRIoFAST16, PRIoFAST32, PRIoFAST64
      PRIoLEAST8, PRIoLEAST16, PRIoLEAST32, PRIoLEAST64
      PRIoMAX
      PRIoPTR
      PRIu8, PRIu16, PRIu32, PRIu64
      PRIuFAST8, PRIuFAST16, PRIuFAST32, PRIuFAST64
      PRIuLEAST8, PRIuLEAST16, PRIuLEAST32, PRIuLEAST64
      PRIuMAX
      PRIuPTR
      PRIx8, PRIx16, PRIx32, PRIx64
      PRIxFAST8, PRIxFAST16, PRIxFAST32, PRIxFAST64
      PRIxLEAST8, PRIxLEAST16, PRIxLEAST32, PRIxLEAST64
      PRIxMAX
      PRIxPTR
      PRIX8, PRIX16, PRIX32, PRIX64
      PRIXFAST8, PRIXFAST16, PRIXFAST32, PRIXFAST64
      PRIXLEAST8, PRIXLEAST16, PRIXLEAST32, PRIXLEAST64
      PRIXMAX
      PRIXPTR
      SCNd8, SCNd16, SCNd32, SCNd64
      SCNdFAST8, SCNdFAST16, SCNdFAST32, SCNdFAST64
      SCNdLEAST8, SCNdLEAST16, SCNdLEAST32, SCNdLEAST64
      SCNdMAX
      SCNdPTR
      SCNi8, SCNi16, SCNi32, SCNi64
      SCNiFAST8, SCNiFAST16, SCNiFAST32, SCNiFAST64
      SCNiLEAST8, SCNiLEAST16, SCNiLEAST32, SCNiLEAST64
      SCNiMAX
      SCNiPTR
      SCNo8, SCNo16, SCNo32, SCNo64
      SCNoFAST8, SCNoFAST16, SCNoFAST32, SCNoFAST64
      SCNoLEAST8, SCNoLEAST16, SCNoLEAST32, SCNoLEAST64
      SCNoMAX
      SCNoPTR
      SCNu8, SCNu16, SCNu32, SCNu64
      SCNuFAST8, SCNuFAST16, SCNuFAST32, SCNuFAST64
      SCNuLEAST8, SCNuLEAST16, SCNuLEAST32, SCNuLEAST64
      SCNuMAX
      SCNuPTR
      SCNx8, SCNx16, SCNx32, SCNx64
      SCNxFAST8, SCNxFAST16, SCNxFAST32, SCNxFAST64
      SCNxLEAST8, SCNxLEAST16, SCNxLEAST32, SCNxLEAST64
      SCNxMAX
      SCNxPTR
      SCNX8, SCNX16, SCNX32, SCNX64
      SCNXFAST8, SCNXFAST16, SCNXFAST32, SCNXFAST64
      SCNXLEAST8, SCNXLEAST16, SCNXLEAST32, SCNXLEAST64
      SCNXMAX
      SCNXPTR
      strtoimax
      strtoumax
      wcstoimax
      wcstoumax
    <iohw.h>
    <iso646.h>
      and
      and_eq
      bitand
      bitor
      compl
      not
      not_eq
      or
      or_eq
      xor
      xor_eq
    <limits.h>
      CHAR_BIT
      CHAR_MAX
      CHAR_MIN
      INT_MAX
      INT_MIN
      LLONG_MAX
      LLONG_MIN
      LONG_MAX
      LONG_MIN
      MB_LEN_MAX
      SCHAR_MAX
      SCHAR_MIN
      SHRT_MAX
      SHRT_MIN
      UCHAR_MAX
      UINT_MAX
      ULLONG_MAX
      ULONG_MAX
      USHRT_MAX
    <locale.h>
      LC_ALL
      LC_COLLATE
      LC_CTYPE
      LC_MONETARY
      LC_NUMERIC
      LC_TIME
      lconv
      localeconv
      NULL
      setlocale
    <math.h>
      abs, fabs, fabsf, fabsl
      acos, acosf, acosl
      acosh, acoshf, acoshl
      asin, asinf, asinl
      asinh, asinhf, asinhl
      atan, atanf, atanl
      atan2, atan2f, atan2l
      atanh, atanhf, atanhl
      cbrt, cbrtf, cbrtl
      ceil, ceilf, ceill
      copysign, copysignf, copysignl
      cos, cosf, cosl
      cosh, coshf, coshl
      double_t
      erf, erff, erfl
      erfc, erfcf, erfcl
      exp, expf, expl
      exp2, exp2f, exp2l
      expm1, expm1f, expm1l
      fdim, fdimf, fdiml
      float_t
      floor, floorf, floorl
      fma, fmaf, fmal
      fmax, fmaxf, fmaxl
      fmin, fminf, fminl
      fmod, fmodf, fmodl
      fpclassify
      FP_FAST_FMA
      FP_FAST_FMAF
      FP_FAST_FMAL
      FP_ILOGB0
      FP_ILOGBNAN
      FP_INFINITE
      FP_NAN
      FP_NORMAL
      FP_SUBNORMAL
      FP_ZERO
      frexp, frexpf, frexpl
      HUGE_VAL
      HUGE_VALF
      HUGE_VALL
      hypot, hypotf, hypotl
      ilogb, ilogbf, ilogbl
      INFINITY
      isfinite
      isgreater
      isgreaterequal
      isinf
      isless
      islessequal
      islessgreater
      isnan
      isnormal
      isunordered
      ldexp, ldexpf, ldexpl
      lgamma, lgammaf, lgammal
      llrint, llrintf, llrintl
      llround, llroundf, llroundl
      log, logf, logl
      log10, log10f, log10l
      log1p, log1pf, log1pl
      log2, log2f, log2l
      logb, logbf, logbl
      lrint, lrintf, lrintl
      lround, lroundf, lroundl
      MATH_ERRNO
      MATH_ERREXCEPT
      math_errhandling
      modf, modff, modfl
      NAN
      nan, nanf, nanl
      nearbyint, nearbyintf, nearbyintl
      nextafter, nextafterf, nextafterl
      nexttoward, nexttowardf, nexttowardl
      pow, powf, powl
      remainder, remainderf, remainderl
      remquo, remquof, remquol
      rint, rintf, rintl
      round, roundf, roundl
      scalbln, scalblnf, scalblnl
      scalbn, scalbnf, scalbnl
      signbit
      sin, sinf, sinl
      sinh, sinhf, sinhl
      sqrt, sqrtf, sqrtl
      tan, tanf, tanl
      tanh, tanhf, tanhl
      tgamma, tgammaf, tgammal
      trunc, truncf, truncl
    <setjmp.h>
      jmp_buf
      longjmp
      setjmp
    <signal.h>
      raise
      sig_atomic_t
      SIGABRT
      SIGFPE
      SIGILL
      SIGINT
      signal
      SIGSEGV
      SIGTERM
      SIG_DFL
      SIG_ERR
      SIG_IGN
    <stdarg.h>
      va_arg
      va_copy
      va_end
      va_list
      va_start
    <stdbool.h>
      __bool_true_false_are_defined
      bool
      false
      true
    <stddef.h>
      NULL
      offsetof
      ptrdiff_t
      size_t
      wchar_t
    <stdint.h>
      INT8_C, INT16_C, INT32_C, INT64_C
      INT8_MAX, INT16_MAX, INT32_MAX, INT64_MAX
      INT8_MIN, INT16_MIN, INT32_MIN, INT64_MIN
      int8_t, int16_t, int32_t, int64_t
      INT_FAST8_MAX, INT_FAST16_MAX, INT_FAST32_MAX, INT_FAST64_MAX
      INT_FAST8_MIN, INT_FAST16_MIN, INT_FAST32_MIN, INT_FAST64_MIN
      int_fast8_t, int_fast16_t, int_fast32_t, int_fast64_t
      INT_LEAST8_MAX, INT_LEAST16_MAX, INT_LEAST32_MAX, INT_LEAST64_MAX
      INT_LEAST8_MIN, INT_LEAST16_MIN, INT_LEAST32_MIN, INT_LEAST64_MIN
      int_least8_t, int_least16_t, int_least32_t, int_least64_t
      INTMAX_C
      INTMAX_MAX
      INTMAX_MIN
      intmax_t
      INTPTR_MAX
      INTPTR_MIN
      intptr_t
      PTRDIFF_MAX
      PTRDIFF_MIN
      SIG_ATOMIC_MAX
      SIG_ATOMIC_MIN
      SIZE_MAX
      UINT8_C, UINT16_C, UINT32_C, UINT64_C
      UINT8_MAX, UINT16_MAX, UINT32_MAX, UINT64_MAX
      uint8_t, uint16_t, uint32_t, uint64_t
      UINT_FAST8_MAX, UINT_FAST16_MAX, UINT_FAST32_MAX, UINT_FAST64_MAX
      uint_fast8_t, uint_fast16_t, uint_fast32_t, uint_fast64_t
      UINT_LEAST8_MAX, UINT_LEAST16_MAX, UINT_LEAST32_MAX, UINT_LEAST64_MAX
      uint_least8_t, uint_least16_t, uint_least32_t, uint_least64_t
      UINTMAX_C
      UINTMAX_MAX
      uintmax_t
      UINTPTR_MAX
      uintptr_t
      WCHAR_MAX
      WCHAR_MIN
      WINT_MAX
      WINT_MIN
    <stdio.h>
      BUFSIZ
      clearerr
      EOF
      fclose
      feof
      ferror
      fflush
      fgetc
      fgetpos
      fgets
      FILE
      FILENAME_MAX
      fopen
      FOPEN_MAX
      fpos_t
      fprintf
      fputc
      fputs
      fread
      freopen
      fscanf
      fseek
      fsetpos
      ftell
      fwrite
      getc
      getchar
      gets
      _IOFBF
      _IOLBF
      _IONBF
      L_tmpnam
      NULL
      perror
      printf
      putc
      putchar
      puts
      remove
      rename
      rewind
      scanf
      SEEK_CUR
      SEEK_END
      SEEK_SET
      setbuf
      setvbuf
      size_t
      snprintf
      sprintf
      sscanf
      stderr
      stdin
      stdout
      tmpfile
      TMP_MAX
      tmpnam
      ungetc
      vfprintf
      vfscanf
      vprintf
      vscanf
      vsnprintf
      vsprintf
      vsscanf
    <stdlib.h>
      abort
      abs
      atexit
      atof
      atoi
      atol
      atoll
      bsearch
      calloc
      div
      div_t
      exit
      _Exit
      EXIT_FAILURE
      EXIT_SUCCESS
      free
      getenv
      labs
      llabs
      ldiv
      lldiv
      ldiv_t
      lldiv_t
      malloc
      MB_CUR_MAX
      mblen
      mbstowcs
      mbtowc
      NULL
      qsort
      rand
      RAND_MAX
      realloc
      size_t
      srand
      strtod
      strtof
      strtol
      strtold
      strtoll
      strtoul
      strtoull
      system
      wchar_t
      wcstombs
      wctomb
    <string.h>
      memchr
      memcmp
      memcpy
      memmove
      memset
      NULL
      size_t
      strcat
      strchr
      strcmp
      strcoll
      strcpy
      strcspn
      strerror
      strlen
      strncat
      strncmp
      strncpy
      strpbrk
      strrchr
      strspn
      strstr
      strtok
      strxfrm
    <tgmath.h>
      acos
      acosh
      carg
      asin
      asinh
      atan
      atan2
      atanh
      cbrt
      ceil
      cimag
      conj
      copysign
      cos
      cosh
      cproj
      creal
      erf
      erfc
      exp
      exp2
      expm1
      fabs
      fdim
      floor
      fma
      fmax
      fmin
      fmod
      frexp
      hypot
      ilogb
      ldexp
      lgamma
      llrint
      llround
      log
      log10
      log1p
      log2
      logb
      lrint
      lround
      modf
      nearbyint
      nextafter
      nexttoward
      pow
      remainder
      remquo
      rint
      round
      scalbln
      scalbn
      sin
      sinh
      sqrt
      tan
      tanh
      tgamma
      trunc
    <time.h>
      asctime
      clock
      CLOCKS_PER_SEC
      clock_t
      ctime
      difftime
      gmtime
      localtime
      mktime
      NULL
      size_t
      strftime
      time
      time_t
      tm
    <uchar.h>
      c16rtomb
      c32rtomb
      char16_t
      char32_t
      mbrtoc16
      mbrtoc32
      mbstate_t
      NULL
      size_t
      __STDC_UTF_16__
      __STDC_UTF_32__
    <wchar.h>
      btowc
      fgetwc
      fgetws
      fputwc
      fputws
      fwide
      fwprintf
      fwscanf
      getwc
      getwchar
      mbrlen
      mbrtowc
      mbsinit
      mbsrtowcs
      mbstate_t
      NULL
      putwc
      putwchar
      size_t
      swprintf
      swscanf
      tm
      ungetwc
      vfwprintf
      vfwscanf
      vswprintf
      vswscanf
      vwprintf
      vwscanf
      WCHAR_MAX
      WCHAR_MIN
      wchar_t
      wcrtomb
      wcscat
      wcschr
      wcscmp
      wcscoll
      wcscpy
      wcscspn
      wcsftime
      wcslen
      wcsncat
      wcsncmp
      wcsncpy
      wcspbrk
      wcsrchr
      wcsrtombs
      wcsspn
      wcsstr
      wcstod
      wcstof
      wcstok
      wcstol
      wcstold
      wcstoll
      wcstoul
      wcstoull
      wcsxfrm
      wctob
      WEOF
      wint_t
      wmemchr
      wmemcmp
      wmemcpy
      wmemmove
      wmemset
      wprintf
      wscanf
    <wctype.h>
      WEOF
      iswalnum
      iswalpha
      iswblank
      iswcntrl
      iswctype
      iswdigit
      iswgraph
      iswlower
      iswprint
      iswpunct
      iswspace
      iswupper
      iswxdigit
      towctrans
      towlower
      towupper
      wctrans
      wctrans_t
      wctype
      wctype_t
      wint_t
    C Library Overview
      Using Standard C Headers
      C Library Conventions
    Characters
      Character Sets
      Escape Sequences
      Trigraphs
      Multibyte Characters
      Text and Binary Streams
      Byte and Wide Streams
      Controlling Streams
      Stream States
    Formatted Output
      Print Formats
      Print Functions
      Scan Formats
      Scan Functions
      Scan Conversion Specifiers
    Preprocessing
    Expressions
    Functions
    Index
  Dinkum EC++ Library
    Dinkum EC++ Library
      Table of Contents
    <complex>
      abs
      arg
      complex
        complex::complex
        complex::imag
        complex::operator*=
        complex::operator+=
        complex::operator-=
        complex::operator/=
        complex::operator=
        complex::real
        complex::value_type
      conj
      cos
      cosh
      double_complex
      exp
      float_complex
      imag
      log
      log10
      norm
      operator!=
      operator*
      operator+
      operator-
      operator/
      operator<<
      operator==
      operator>>
      polar
      pow
      real
      sin
      sinh
      sqrt
      __STD_COMPLEX
      tan
      tanh
    <exception>
      bad_exception
      exception
      set_terminate
      set_unexpected
      terminate
      terminate_handler
      uncaught_exception
      unexpected
      unexpected_handler
    <fstream>
      filebuf
        filebuf::filebuf
        filebuf::char_type
        filebuf::close
        filebuf::int_type
        filebuf::is_open
        filebuf::off_type
        filebuf::open
        filebuf::overflow
        filebuf::pbackfail
        filebuf::pos_type
        filebuf::seekoff
        filebuf::seekpos
        filebuf::setbuf
        filebuf::sync
        filebuf::traits_type
        filebuf::underflow
      ifstream
        ifstream::ifstream
        ifstream::close
        ifstream::is_open
        ifstream::open
        ifstream::rdbuf
      ofstream
        ofstream::ofstream
        ofstream::close
        ofstream::is_open
        ofstream::open
        ofstream::rdbuf
    <iomanip>
      resetiosflags
      setbase
      setfill
      setiosflags
      setprecision
      setw
    <ios>
      ios
        ios::bad
        ios::ios
        ios::char_type
        ios::clear
        ios::copyfmt
        ios::eof
        ios::exceptions
        ios::fail
        ios::fill
        ios::good
        ios::imbue
        ios::init
        ios::int_type
        ios::narrow
        ios::off_type
        ios::operator void *
        ios::operator!
        ios::pos_type
        ios::rdbuf
        ios::rdstate
        ios::setstate
        ios::tie
        ios::traits_type
        ios::widen
      boolalpha
      dec
      fixed
      fpos
        fpos::fpos
        fpos::operator!=
        fpos::operator+
        fpos::operator+=
        fpos::operator-
        fpos::operator-=
        fpos::operator==
        fpos::operator streamoff
        fpos::state
      hex
      internal
      ios_base
        ios_base::event
        ios_base::failure
        ios_base::flags
        ios_base::fmtflags
        ios_base::getloc
        ios_base::imbue
        ios_base::Init
        ios_base::ios_base
        ios_base::iostate
        ios_base::iword
        ios_base::openmode
        ios_base::operator=
        ios_base::precision
        ios_base::pword
        ios_base::seekdir
        ios_base::setf
        ios_base::streamoff
        ios_base::streampos
        ios_base::sync_with_stdio
        ios_base::unsetf
        ios_base::width
        ios_base::xalloc
      left
      locale
      mbstate_t
      noboolalpha
      noshowbase
      noshowpoint
      noshowpos
      noskipws
      nounitbuf
      nouppercase
      oct
      right
      scientific
      showbase
      showpoint
      showpos
      skipws
      streamoff
      streampos
      streamsize
      unitbuf
      uppercase
    <iosfwd>
    <iostream>
      cin
      cout
    <istream>
      istream
        istream::istream
        istream::gcount
        istream::get
        istream::getline
        istream::ignore
        istream::operator>>
        istream::peek
        istream::putback
        istream::read
        istream::readsome
        istream::seekg
        istream::sentry
        istream::sync
        istream::tellg
        istream::unget
      operator>>
      ws
    <new>
      bad_alloc
      new_handler
      nothrow
      nothrow_t
      operator delete
      operator delete[]
      operator new
      operator new[]
      set_new_handler
    <ostream>
      ostream
        ostream::ostream
        ostream::flush
        ostream::operator<<
        ostream::put
        ostream::seekp
        ostream::sentry
        ostream::tellp
        ostream::write
      endl
      ends
      flush
      operator<<
    <sstream>
      stringbuf
        stringbuf::allocator_type
        stringbuf::stringbuf
        stringbuf::char_type
        stringbuf::int_type
        stringbuf::off_type
        stringbuf::overflow
        stringbuf::pbackfail
        stringbuf::pos_type
        stringbuf::seekoff
        stringbuf::seekpos
        stringbuf::str
        stringbuf::traits_type
        stringbuf::underflow
      istringstream
        istringstream::allocator_type
        istringstream::istringstream
        istringstream::rdbuf
        istringstream::str
      ostringstream
        ostringstream::allocator_type
        ostringstream::ostringstream
        ostringstream::rdbuf
        ostringstream::str
    <stdexcept>
      domain_error
      invalid_argument
      length_error
      logic_error
      out_of_range
      overflow_error
      range_error
      runtime_error
      underflow_error
    <streambuf>
      streambuf
        streambuf::streambuf
        streambuf::char_type
        streambuf::eback
        streambuf::egptr
        streambuf::epptr
        streambuf::gbump
        streambuf::getloc
        streambuf::gptr
        streambuf::imbue
        streambuf::in_avail
        streambuf::int_type
        streambuf::off_type
        streambuf::overflow
        streambuf::pbackfail
        streambuf::pbase
        streambuf::pbump
        streambuf::pos_type
        streambuf::pptr
        streambuf::pubimbue
        streambuf::pubseekoff
        streambuf::pubseekpos
        streambuf::pubsetbuf
        streambuf::pubsync
        streambuf::sbumpc
        streambuf::seekoff
        streambuf::seekpos
        streambuf::setbuf
        streambuf::setg
        streambuf::setp
        streambuf::sgetc
        streambuf::sgetn
        streambuf::showmanyc
        streambuf::snextc
        streambuf::sputbackc
        streambuf::sputc
        streambuf::sputn
        streambuf::stossc
        streambuf::sungetc
        streambuf::sync
        streambuf::traits_type
        streambuf::uflow
        streambuf::underflow
        streambuf::xsgetn
        streambuf::xsputn
    <string>
      string
        string::allocator_type
        string::append
        string::assign
        string::at
        string::string
        string::begin
        string::c_str
        string::capacity
        string::clear
        string::compare
        string::const_iterator
        string::const_pointer
        string::const_reference
        string::const_reverse_iterator
        string::copy
        string::data
        string::difference_type
        string::empty
        string::end
        string::erase
        string::find
        string::find_first_not_of
        string::find_first_of
        string::find_last_not_of
        string::find_last_of
        string::get_allocator
        string::insert
        string::iterator
        string::length
        string::max_size
        string::npos
        string::operator+=
        string::operator=
        string::operator[]
        string::pointer
        string::push_back
        string::rbegin
        string::reference
        string::rend
        string::replace
        string::reserve
        string::resize
        string::reverse_iterator
        string::rfind
        string::size
        string::size_type
        string::substr
        string::swap
        string::traits_type
        string::value_type
      char_allocator
        char_allocator::operator==
      char_traits
        char_traits::assign
        char_traits::char_type
        char_traits::compare
        char_traits::copy
        char_traits::eof
        char_traits::eq
        char_traits::eq_int_type
        char_traits::find
        char_traits::int_type
        char_traits::length
        char_traits::lt
        char_traits::move
        char_traits::not_eof
        char_traits::off_type
        char_traits::pos_type
        char_traits::state_type
        char_traits::to_char_type
        char_traits::to_int_type
      getline
      operator+
      operator!=
      operator==
      operator<
      operator<<
      operator<=
      operator>
      operator>=
      operator>>
      swap
    <strstream>
      strstreambuf
        strstreambuf::freeze
        strstreambuf::pcount
        strstreambuf::overflow
        strstreambuf::pbackfail
        strstreambuf::seekoff
        strstreambuf::seekpos
        strstreambuf::str
        strstreambuf::strstreambuf
        strstreambuf::underflow
      istrstream
        istrstream::istrstream
        istrstream::rdbuf
        istrstream::str
      ostrstream
        ostrstream::freeze
        ostrstream::ostrstream
        ostrstream::pcount
        ostrstream::rdbuf
        ostrstream::str
    <cassert>
    <cctype>
    <cerrno>
    <cfloat>
    <climits>
    <clocale>
    <cmath>
    <csetjmp>
    <csignal>
    <cstdarg>
    <cstddef>
    <cstdio>
    <cstdlib>
    <cstring>
    <ctime>
    <assert.h>
      assert
    <ctype.h>
      isalnum
      isalpha
      iscntrl
      isdigit
      isgraph
      islower
      isprint
      ispunct
      isspace
      isupper
      isxdigit
      tolower
      toupper
    <errno.h>
      EDOM
      EILSEQ
      ERANGE
      errno
    <float.h>
      DBL_DIG
      DBL_EPSILON
      DBL_MANT_DIG
      DBL_MAX
      DBL_MAX_10_EXP
      DBL_MAX_EXP
      DBL_MIN
      DBL_MIN_10_EXP
      DBL_MIN_EXP
      FLT_DIG
      FLT_EPSILON
      FLT_MANT_DIG
      FLT_MAX
      FLT_MAX_10_EXP
      FLT_MAX_EXP
      FLT_MIN
      FLT_MIN_10_EXP
      FLT_MIN_EXP
      FLT_RADIX
      FLT_ROUNDS
      LDBL_DIG
      LDBL_EPSILON
      LDBL_MANT_DIG
      LDBL_MAX
      LDBL_MAX_10_EXP
      LDBL_MAX_EXP
      LDBL_MIN
      LDBL_MIN_10_EXP
      LDBL_MIN_EXP
    <limits.h>
      CHAR_BIT
      CHAR_MAX
      CHAR_MIN
      INT_MAX
      INT_MIN
      LONG_MAX
      LONG_MIN
      MB_LEN_MAX
      SCHAR_MAX
      SCHAR_MIN
      SHRT_MAX
      SHRT_MIN
      UCHAR_MAX
      UINT_MAX
      ULONG_MAX
      USHRT_MAX
    <locale.h>
      LC_ALL
      LC_COLLATE
      LC_CTYPE
      LC_MONETARY
      LC_NUMERIC
      LC_TIME
      lconv
      localeconv
      NULL
      setlocale
    <math.h>
      HUGE_VAL
    <setjmp.h>
      jmp_buf
      longjmp
      setjmp
    <signal.h>
      raise
      sig_atomic_t
      SIGABRT
      SIGFPE
      SIGILL
      SIGINT
      signal
      SIGSEGV
      SIGTERM
      SIG_DFL
      SIG_ERR
      SIG_IGN
    <stdarg.h>
      va_arg
      va_end
      va_list
      va_start
    <stddef.h>
      NULL
      offsetof
      ptrdiff_t
      size_t
      wchar_t
    <stdio.h>
      BUFSIZ
      clearerr
      EOF
      fclose
      feof
      ferror
      fflush
      fgetc
      fgetpos
      fgets
      FILE
      FILENAME_MAX
      fopen
      FOPEN_MAX
      fpos_t
      fprintf
      fputc
      fputs
      fread
      freopen
      fscanf
      fseek
      fsetpos
      ftell
      fwrite
      getc
      getchar
      gets
      _IOFBF
      _IOLBF
      _IONBF
      L_tmpnam
      NULL
      perror
      printf
      putc
      putchar
      puts
      remove
      rename
      rewind
      scanf
      SEEK_CUR
      SEEK_END
      SEEK_SET
      setbuf
      setvbuf
      size_t
      sprintf
      sscanf
      stderr
      stdin
      stdout
      tmpfile
      TMP_MAX
      tmpnam
      ungetc
      vfprintf
      vprintf
      vsprintf
    <stdlib.h>
      abort
      abs
      atexit
      atof
      atoi
      atol
      bsearch
      calloc
      div
      div_t
      exit
      EXIT_FAILURE
      EXIT_SUCCESS
      free
      getenv
      labs
      ldiv
      ldiv_t
      malloc
      MB_CUR_MAX
      mblen
      mbstowcs
      mbtowc
      NULL
      qsort
      rand
      RAND_MAX
      realloc
      size_t
      srand
      strtod
      strtol
      strtoul
      system
      wchar_t
      wcstombs
      wctomb
    <string.h>
      memchr
      memcmp
      memcpy
      memmove
      memset
      NULL
      size_t
      strcat
      strchr
      strcmp
      strcoll
      strcpy
      strcspn
      strerror
      strlen
      strncat
      strncmp
      strncpy
      strpbrk
      strrchr
      strspn
      strstr
      strtok
      strxfrm
    <time.h>
      asctime
      clock
      CLOCKS_PER_SEC
      clock_t
      ctime
      difftime
      gmtime
      localtime
      mktime
      NULL
      size_t
      strftime
      time
      time_t
      tm
    <fstream.h>
    <iomanip.h>
    <iostream.h>
    <new.h>
    C++ Library Overview
      Using C++ Library Headers
      C++ Library Conventions
      Iostreams Conventions
      Exceptions
    C Library Overview
      Using Standard C Headers
      C Library Conventions
    Characters
      Character Sets
      Escape Sequences
      Trigraphs
      Multibyte Characters
    Files and Streams
      Text and Binary Streams
      Controlling Streams
      Stream States
    Formatted Output
      Print Formats
      Print Functions
    Formatted Input
      Scan Formats
      Scan Functions
      Scan Conversion Specifiers
    Preprocessing
    Expressions
    Functions
    Index
QNX Database for QNX Neutrino
  Developer's Guide
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction
    Starting QDB
      Database directory
      Schema files
      Starting the QDB server
        Temporary storage filesystem
        Auto-attaching databases
          Incorrect
          Correct
          Correct
        Database integrity testing
        Testing SQL statements
        The configuration file
        Sharing connections between clients
        Shared caching
          Advantages of shared caching
        Database recovery
        Busy timeout
        Handling corrupt databases
          Sample script
        Maintenance Commands
    The QDB Client qdbc
      Description
    QDB Administration
      Backing up and restoring databases
    QDB Examples
      Connecting to the database
      Executing a Statement
      Getting the result of a query
      Using a result
      Disconnecting from the Server
      Example
    Datatypes in QDB
      Storage classes
      Column affinity
        Determination of column affinity
        Column affinity example
      Comparison expressions
        A comparison example
      Operators
      Sorting, grouping and compound SELECTs
      Other affinity modes
      User-defined collation sequences
        Assigning Collation Sequences from SQL
        Collation Sequences Example
    QDB Virtual Machine Opcodes
      Viewing programs generated by QDB
      The opcodes
    Writing User-Defined Functions
      User scalar/aggregate functions
      User collation routines
      Example
      SQLite C/C++ API
        sqlite3_result_*
        sqlite3_value_*
        sqlite3_user_data
    QDB Client API Reference
      Functions
      qdb_backup
        Description:
      qdb_bkcancel
        Description:
      qdb_cell
        Description:
      qdb_cell_length
        Description:
      qdb_cell_type
        Description:
      qdb_collation
        Description:
      qdb_column_index
        Description:
      qdb_column_name
        Description:
      qdb_columns
        Description:
      qdb_connect
        Description:
          Using asynchronous mode
      qdb_data_source
        Description:
      qdb_disconnect
        Description:
      qdb_freeresult
        Description:
      qdb_getdbsize
        Description:
      qdb_geterrmsg
        Description:
      qdb_getoption
        Description:
      qdb_getresult
        Description:
      qdb_gettransstate
        Description:
      qdb_last_insert_rowid
        Description:
      qdb_mprintf
        Description:
      qdb_parameters
        Description:
      qdb_printmsg
        Description:
      qdb_query
        Description:
      qdb_rowchanges
        Description:
      qdb_rows
        Description:
      qdb_setbusytimeout
        Description:
      qdb_setoption
        Description:
      qdb_snprintf
        Description:
      qdb_statement
        Description:
      qdb_stmt_exec
        Description:
          The qdb_binding_t structure
        Examples:
      qdb_stmt_free
        Description:
        Examples:
      qdb_stmt_init
        Description:
        Examples:
      qdb_vacuum
        Description:
      qdb_vmprintf
        Description:
    QDB SQL Reference
      General
      Statements
      Row ID and Autoincrement
        Description:
          The AUTOINCREMENT Keyword
      Comment
        Description:
      expressions
        Description:
          Literal values
          Parameters
          LIKE
          GLOB
          Column Names
          SELECT statements
          CAST
          Functions
          Core Functions
          Aggregate Functions
      QDB Keywords
        Description:
          Special names
      ALTER TABLE
        Description:
      ANALYZE
        Description:
      ATTACH DATABASE
        Description:
      CREATE INDEX
        Description:
      CREATE TABLE
        Description:
      CREATE TRIGGER
        Description:
      CREATE VIEW
        Description:
      DELETE
        Description:
      DETACH DATABASE
        Description:
      DROP INDEX
        Description:
      DROP TABLE
        Description:
      DROP TRIGGER
        Description:
      DROP VIEW
        Description:
      EXPLAIN
        Description:
      INSERT
        Description:
      ON CONFLICT
        Description:
      PRAGMA
        Description:
          Auto vacuum
          Cache size
          Case sensitivity
          Count changes
          Default cache size
          Full column names
          Legacy file format
          Page size
          Short column names
          Synchronous
          Temp store
          Foreign key list
          Index info
          Index list
          Table info
          Schema and user version
          Integrity check
      REINDEX
        Description:
      REPLACE
        Description:
      SELECT
        Description:
          DISTINCT keyword
          WHERE clause
          GROUP BY clauses
          ORDER BY clauses
          LIMIT clauses
          Compund SELECT statements
      TRANSACTION
        Description:
          Locks
      UPDATE
        Description:
      VACUUM
        Description:
  Developer's Guide
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction
    Starting QDB
      Database directory
      Schema files
      Starting the QDB server
        Temporary storage filesystem
        Auto-attaching databases
          Incorrect
          Correct
          Correct
        Database integrity testing
        Testing SQL statements
        The configuration file
        Sharing connections between clients
        Shared caching
          Advantages of shared caching
        Database recovery
        Busy timeout
        Handling corrupt databases
          Sample script
        Maintenance Commands
    The QDB Client qdbc
      Description
    QDB Administration
      Backing up and restoring databases
    QDB Examples
      Connecting to the database
      Executing a Statement
      Getting the result of a query
      Using a result
      Disconnecting from the Server
      Example
    Datatypes in QDB
      Storage classes
      Column affinity
        Determination of column affinity
        Column affinity example
      Comparison expressions
        A comparison example
      Operators
      Sorting, grouping and compound SELECTs
      Other affinity modes
      User-defined collation sequences
        Assigning Collation Sequences from SQL
        Collation Sequences Example
    QDB Virtual Machine Opcodes
      Viewing programs generated by QDB
      The opcodes
    Writing User-Defined Functions
      User scalar/aggregate functions
      User collation routines
      Example
      SQLite C/C++ API
        sqlite3_result_*
        sqlite3_value_*
        sqlite3_user_data
    QDB Client API Reference
      Functions
      qdb_backup
        Description:
      qdb_bkcancel
        Description:
      qdb_cell
        Description:
      qdb_cell_length
        Description:
      qdb_cell_type
        Description:
      qdb_collation
        Description:
      qdb_column_index
        Description:
      qdb_column_name
        Description:
      qdb_columns
        Description:
      qdb_connect
        Description:
          Using asynchronous mode
      qdb_data_source
        Description:
      qdb_disconnect
        Description:
      qdb_freeresult
        Description:
      qdb_getdbsize
        Description:
      qdb_geterrmsg
        Description:
      qdb_getoption
        Description:
      qdb_getresult
        Description:
      qdb_gettransstate
        Description:
      qdb_last_insert_rowid
        Description:
      qdb_mprintf
        Description:
      qdb_parameters
        Description:
      qdb_printmsg
        Description:
      qdb_query
        Description:
      qdb_rowchanges
        Description:
      qdb_rows
        Description:
      qdb_setbusytimeout
        Description:
      qdb_setoption
        Description:
      qdb_snprintf
        Description:
      qdb_statement
        Description:
      qdb_stmt_exec
        Description:
          The qdb_binding_t structure
        Examples:
      qdb_stmt_free
        Description:
        Examples:
      qdb_stmt_init
        Description:
        Examples:
      qdb_vacuum
        Description:
      qdb_vmprintf
        Description:
    QDB SQL Reference
      General
      Statements
      Row ID and Autoincrement
        Description:
          The AUTOINCREMENT Keyword
      Comment
        Description:
      expressions
        Description:
          Literal values
          Parameters
          LIKE
          GLOB
          Column Names
          SELECT statements
          CAST
          Functions
          Core Functions
          Aggregate Functions
      QDB Keywords
        Description:
          Special names
      ALTER TABLE
        Description:
      ANALYZE
        Description:
      ATTACH DATABASE
        Description:
      CREATE INDEX
        Description:
      CREATE TABLE
        Description:
      CREATE TRIGGER
        Description:
      CREATE VIEW
        Description:
      DELETE
        Description:
      DETACH DATABASE
        Description:
      DROP INDEX
        Description:
      DROP TABLE
        Description:
      DROP TRIGGER
        Description:
      DROP VIEW
        Description:
      EXPLAIN
        Description:
      INSERT
        Description:
      ON CONFLICT
        Description:
      PRAGMA
        Description:
          Auto vacuum
          Cache size
          Case sensitivity
          Count changes
          Default cache size
          Full column names
          Legacy file format
          Page size
          Short column names
          Synchronous
          Temp store
          Foreign key list
          Index info
          Index list
          Table info
          Schema and user version
          Integrity check
      REINDEX
        Description:
      REPLACE
        Description:
      SELECT
        Description:
          DISTINCT keyword
          WHERE clause
          GROUP BY clauses
          ORDER BY clauses
          LIMIT clauses
          Compund SELECT statements
      TRANSACTION
        Description:
          Locks
      UPDATE
        Description:
      VACUUM
        Description:
QNX Momentics IDE User's Guide
  Assumptions
  How to use this guide
  IDE Concepts
    What is an IDE?
      Building embedded systems using the IDE
    Perspectives
    Views
    Editors
      Using alternate editors
      Changing editors
      Refreshing the resources
      Disabling automatic syntax annotation highlighting
    Preferences
      Importing preferences
      Exporting preferences
      Setting export options for a BSP
    Projects in the IDE
      Considerations for project development
      How the IDE characterizes projects using natures
    The IDE Workspace
      Specifying a workspace location
    Host and target machines
      Target agent (the qconn daemon)
      Launcher
      Resources
      Wizards
      Keyboard shortcuts
    Version coexistence
      Environment variables
      Coexistence and PhAB
      Specifying which OS version to build for
  Getting Started
    Starting the IDE
      The IDE welcomes you
      Starting the IDE for the first time
      Starting the IDE from the command line
    Using the workbench
    Using the QNX help system
      Opening the online help from the IDE
      Navigating the online help
      Creating help bookmarks
      Tips and Tricks
    Creating a project
      Creating a simple project
      Creating a C/C++ project
        How to create a C/C++ project
      Creating a C Makefile project
      Creating a make project
      Creating a make project that can be launched outside the IDE
      Creating a target system project
      Converting projects
        Converting a QNX project to a managed make C/C++ project
        Converting a regular project to a managed make C/C++ project
        Converting to a QNX project
        Completing the conversion of a project to a different type
        Post-build actions
        Adding a post-build action
      Importing projects
        Importing an existing container project into a workspace
        Importing an existing project into a workspace
        Importing external features
          Importing external plugins and fragments
        Importing a file system
        Importing GCC coverage data from a project
        Importing a QNX Source Package
        Importing a QNX mkifs Buildfile
        Importing a QNX source package
        Importing a team project set
        Importing an archive file
        Breakpoints
        Launch configurations
      Renaming a project
    Troubleshooting in the IDE
  Project and Wizard Properties Reference
    Introduction
    Wizard properties
      Options tab
      Build Variants tab
      General tab
      Library tab
      Compiler tab
      Linker tab
        General options
        Extra library paths
        Extra libraries
        Extra object files
    Make Builder tab
    Error Parsers tab
    Project properties
      Projects tab
      Resource options
      Builders options panel
      C/C++ Build panel
      Behaviour tab
      Discovery options tab
      Environment tab
      Settings panel
        Tool settings tab
        Build steps tab
        Build artifact tab
        Binary Parser tab
        Error parsers tab
      Indexer tab
  Preparing Your Target
    Host-target communications
      IP communications
      Serial communications
        Configuring a target for serial communication
      qconn over Qnet
      Installing the qconn update
      Copying a new version of qconn to a target system.
    Networking QNX Neutrino using PPP
      Verifying a serial connection
      Preparing an embedded system for a Windows target
      QNX Networking
      Linking an embedded system running QNX Neutrino to a Windows network connection
      Verifying a network connection
    Connecting with Phindows
      Starting a remote Photon session
      Running a Photon program in a remote Photon session
  Developing C/C++ Programs
    The C/C++ perspective
    Understanding projects in the IDE
      The IDE project model
      Supported project types in the IDE
        Container project
      Scenarios for creating a project for the first time
      Checking out a partial source tree
      Sharing projects
      Checking out existing projects
      Setting build properties for a project
    Developing projects in the IDE
      Creating a simple project
      Creating a make project
      Managed make projects
        Creating a Makefile to build outside of the IDE
      Choosing an indexer
    Working with projects
      Opening files
      Creating files from scratch
      Filtering files
      Opening projects
      Closing projects
      Viewing outlines of source and binary files
    Writing code
      C/C++ editor layout
      Finishing function names
      Accessing source files for functions
      Using code templates
        Inserting code templates
        Creating a custom template
        Editing a code template
      Adding include directives
      Using hover help
      Adding and removing comments in code
      Customizing the C/C++ editor
        Changing fonts, background color, or the visibility of line numbers
        Changing tabs into spaces, highlighting, and folding options
        Setting Content Assist options
      Using other editors
        Using an external editor outside of the IDE
        Using another editor within the IDE
    Building projects
      Enabling the autobuild feature for QNX C/C++ projects
      Enabling the autobuild feature for non QNX C/C++ projects
      Configuring automated builds
        Example #1: the Makefile is in the root
      Building all projects
        Configuring the project build order
      Building a single project
      Building selected projects
      Building from the command line
      Cleaning and rebuilding all projects
      Cleaning selected projects
      Autosave before building
      Creating custom options
        Building a project with a custom make target
        Removing a make target
      Adding a use message
        Adding a usage message when using a QNX C/C++ Project
        Adding a usage message when using a Standard Project
      Creating a QNX target system Project
      Creating a launch configuration
    Running binaries for a project
    Deleting a project
    More development features
      Tracking remaining work
        Error markers
        Jumping to errors
        Filtering errors
        Tracking tasks
        Setting reminders
        Associating tasks with resources
        Removing a task
      Code synopsis
        Toolbar icons
        Outline view icons
        Filtering and grouping in the Outline view
        Using Working Sets
      Checking your build
        Customizing the Console view
      Opening headers
        Setting the include paths and define directives (C/C++ Make project)
      Navigating: Go To Type
  Managing Source Code
    SVN and the IDE
    CVS and the IDE
    Local history feature
    Project files (.project and .cproject)
    Using the core Eclipse source control documentation in the IDE
      SVN documentation
      CVS documentation
    Importing existing source code into the IDE
      Projects within projects
        Step 1: Creating a project for your source code
        Step 2: Creating a new project for each existing project or component in your source code tree
        Step 3: Linking the projects to a directory in the source tree
        Step 4: Building the component project in the linked folder
      Filesystem drag-and-drop
      Importing code into the IDE
        Importing a C/C++ project from CVS
        Importing C/C++ code that doesn't have the project metadata in CVS
        Importing C/C++ code from CVS into an existing project
        Importing a C/C++ Project from SVN
        Importing C/C++ code that doesn't have the project metadata for SVN
        Importing C/C++ code from SVN into an existing project
      Import wizard
      Adding linked resources
    Using container projects
      Creating a container project
      Setting up a build configuration
      Editing existing configurations
      Editing via project properties
      Editing via the Build Container Configuration item
      Building a container project
    Importing a BSP or other QNX source packages
      QNX BSP perspective
      Importing a BSP package from Foundry27
      Checking out BSP packages directly from the SVN Repositories view
    Exporting projects
      Using the Export command
  Launch Configurations Reference
    What is a launch configuration?
    Types of launch configurations
      Launch Group type
    Running and debugging for the first time
    Debugging a program the first time
    Running and debugging subsequent times
      Launching a selected program (fast)
      Launching from a list of favorites (faster)
      Launching the last-launched program (fastest)
    Setting execution options
      Main tab
      Arguments tab
      Environment tab
      Upload tab
      Debugger tab
      Source tab
      Common tab
      Tools tab
  Debugging in the IDE
    Debugging your program (building an executable for debugging)
      Debugging a child process
    Controlling your debug session
      Debug view
        Debug view icons
        Using the controls
        Toolbar icons
        Using hotkeys
        Controlling your debug session
          From the Debug view
          From the C/C++ editor
        Disassembly mode
      Debug launch controls
      Jumping to a memory address in the Disassembly view
    More debugging features
      Inspecting variables
      Changing variable values
      Controlling the display of variables
      Changing variable to a different type
      Viewing variables in memory
      Using breakpoints and watchpoints
        Adding breakpoints
        Adding watchpoints
        Setting an action for the breakpoint
        Adding event breakpoints
        Setting properties of breakpoints and watchpoints
        Disabling/enabling breakpoints and watchpoints
        Removing breakpoints and watchpoints
      Evaluating your expressions
      Inspecting your registers
        Toolbar icons
        Menu commands
        Modifying registers
        Changing the number system for register values
      Inspecting a process's memory
        Viewing memory
        Inspecting memory
        Configuring output format
        Changing memory
        Menu commands
        Monitors pane menu commands
        Rendering pane menu commands
      Inspecting shared-library usage
        Loading a Library's symbol
      Monitoring signal handling
        Changing how the debugger handles signals
        Sending a signal to a suspended program
      Viewing your output
      Interacting with GDB
        Enabling the QNX GDB Console view
        Using the QNX GDB Console view
    Using JTAG debugging
      JTAG: Using the Abatron BDI2000 JTAG Debugger with a QNX Neutrino kernel image
        Prerequisites
        Connecting the Abatron BDI2000 JTAG Debugger to your host
        Updating the Abatron firmware
        Connecting the Abatron BDI2000 Debugger to your target
        Building a system image
        Creating a launch configuration
        Debugging the startup binary
      JTAG: Using the Lauterbach Trace32 In-Circuit Debugger with a QNX Neutrino kernel image
        Prerequisites
        Installing the Lauterbach Trace32 In-Circuit Debugger software
        Installing the Lauterbach Trace32 Eclipse plug-in software
        Connecting the Lauterbach Trace32 In-Circuit Debugger
        Configuring the Lauterbach Trace32 In-Circuit Debugger
        Creating a launch configuration for the target hardware
        Creating a startup script for the Lauterbach Trace32 In-Circuit software
          Creating multicore launch configurations
        Using the debugger
      JTAG: Using the Macraigor Usb2Demon Debugger with a QNX Neutrino kernel image
        Prerequisites
        Installing the Macraigor hardware support package
        Connecting the Macraigor Usb2Demon Debugger to your host
        Connecting the Macraigor Usb2Demon Debugger to your target
        Starting the OCDremote
        Building a system image
        Creating a launch configuration
        Debugging a startup binary
  Building OS and Flash Images
    Introducing the QNX System Builder
      Toolbar buttons
      Binary Inspector
    Boot script files
    Overview of images
      Components of an image, in order of booting
      Types of images you can create
        BSP filename conventions
        OS image (.ifs file)
        Flash filesystem image (.efs file)
        Combined image
        Padding after the IPL
      Project layout
      Workflow of image creation
    Creating a new QNX System Builder project for an OS image
    Creating a project for a flash filesystem image (an .efs file)
    Building an OS image
      Creating a new image
      Combining images
        Adding an IPL to the start of your image
        Adding an EFS to your image
        Setting the final format of your OS image
    Downloading an image to your target
      Downloading
      Opening a terminal
      Communicating with your target
      Using the QNX Send File button
      Downloading using TFTP
      Transferring a file
      Transferring files that aren't in Images
      Transferring an image
      Settings for the TFTP server
      Setting font and color preferences
      Downloading using other methods
    Configuring your QNX System Builder projects
      Managing your images
        Determining the shared libraries and DLLs are required for an executable
        Adding files to your image
        Deleting files
        Adding directories
        Deleting directories
      Configuring image properties
      Image properties
        Directories
        General
        System (.ifs)
        System (.efs)
      Item properties
        General
        Combine
        Memory
        Permissions
      Configuring project properties
        Search Paths
        Managing your search paths
        Search path variables
    Optimizing your system
      Optimizing all libraries in your image
      Optimizing a single library
      Restoring a slimmed-down library
    Moving files between the host and target
      Moving files to the target
      Moving files from the target to the host
    Exporting a System Builder project to a Mkxfs build file(s)
  Developing Photon Applications
    What is PhAB?
      PhAB and the IDE
    Using PhAB
      Creating a QNX Photon Appbuilder project
      Closing PhAB
      Reopening PhAB
      Editing code
      Building a QNX Photon Appbuilder project
      Importing an existing standalone QNX Photon Appbuilder project
      Checking out an existing PhAB project from CVS
    Starting Photon applications
  Profiling an Application
    Types of profiling
      Statistical sample profiling (sampling)
      Function Instrumentation profiling
      Sampling and Call Count instrumentation profiling
      Postmortem profiling for Call Count and Function Instrumentation profiling
    Profiling your programs
      Building a program for profiling
        Building with profiling enabled
      Running and profiling a process
      Profiling a running process
      Postmortem profiling for Call Count and sampling
      Application Profiler tab
    Controlling your profiling sessions
    Understanding your profiling data
    Profiler Sessions view
      Toolbar options
      Pausing and resuming a profiling session
      Taking a snapshot of a profile session
      Creating a sample profile session
      Exporting a profiler session
    Debug view
    Execution Time view
      Column descriptions
      Interpreting Tree mode column information by profiling type
      Toolbar options
      Context menu navigation options
      Take Snapshot and Watch Difference
      Show Threads Tree
      Show Table mode
      Show Calls
      Show Reverse Calls
      Show Call Graphs
      Show Source
      Duplicating the view
      Viewing history
      Grouping
      Setting preferences
      Copying to the clipboard
      Filtering
      Searching
    Annotated source editor
    Using the Application Profiler
      Using Function Instrumentation with the Application Profiler
      Using Sampling and Call Count instrumentation mode
      Using Function Instrumentation mode for a single application
      Using Function Instrumentation in the System Profiler
      Creating an Application Profiler session
      Creating a profiler session by importing profiler data
      Profiling a single-threaded application
      Profiling a running process for an existing project
      Using postmortem profiling for Call Count and Sampling
      Postmortem profiling
      Running an instrumented binary with profiling from a command prompt (Function Instrumentation mode)
      Taking a snapshot of a profiling session
      Comparing profiles
  Using Code Coverage
    Types of code coverage in the IDE
    How the coverage tool works
    Enabling code coverage
      Enabling code coverage for make projects
      Starting a coverage-enabled program
    Importing gcc code coverage data from a project
    Associated views
    Code Coverage Sessions view
      Combining Code Coverage sessions
      Examining data line-by-line
    Code Coverage Properties view
    Code Coverage Report view
  Analyzing Memory Usage and Finding Errors
    Memory management in QNX Neutrino
      Virtual memory
    Memory optimization
      Process memory
        Inspecting your process memory distribution
      Performance of heap allocations
        Preparing for a memory profiling session
      Analyzing allocation patterns
      Optimizing heap memory
        Memory leaks
        Enabling memory leak detection
        Inspecting outstanding allocations
      Types of allocation overhead
      Estimating the average allocation size
      Tuning the allocator
      Optimizing static and stack memory
    Finding memory errors and leaks
      Testing an application for memory leaks using the System Information Tool
      Using Memory Analysis tooling
        Memory leaks
          Enabling leak detection
          Detecting leaks on demand during program execution
          Interpreting leaks
        Memory errors
          Configuring the IDE for error analysis
          Changing error detection options at runtime
          Interpreting memory errors
      Using Mudflap
        Configuring Mudflap to find errors
        Options for Mudflap
        Mudflap Violations view
        Interpreting Mudflap output
    The Memory Analysis tool
      Advanced topics
        Analyzing a running program
        Memory analysis of shared objects
        GUI interface options and environment variables for the Memory Analysis Tool
      Launching your program with Memory Analysis
        Launching from the command line with Memory Analysis enabled
        Performing a postmortem memory analysis
        Attaching to a running process
        The Memory Analysis tooling API
      Viewing Memory Analysis data
        Memory Analysis editor
          Selecting data
          Controlling the page layout
          Controlling the overview
          Controlling the detail pane
          Allocations tab
          Bins tab
          Bands tab
          Usage tab
          Settings tab
        Memory Problems view
          Memory Problems Filter
          Memory Problems Preferences
          Viewing statistics for memory problems
        Memory Events view
          Memory Events Filter
          Memory Events Preferences
          Viewing statistics for memory events
        Memory Backtrace view
        Inspecting outstanding allocations
        Interpreting errors during memory analysis
          Illegal deallocation of memory
          NULL pointer dereference
          Buffer overflow
          Using freed memory
          Reading uninitialized memory
          Resource (memory) leaks
          Functions checked for memory errors during memory analysis
          Summary of error messages for Memory Analysis
      Managing Memory Analysis sessions: The Session view
        Opening a session
        Deleting a session
        Closing a session
        Exporting session data
        Filtering information for a session
        Importing session information
        Showing information about a session
        Renaming a session
      Importing memory analysis data
        Importing session information from an XML file
        Importing event information
      Exporting memory analysis data
        Exporting memory analysis session data
        Memory result formats
  Getting System Information
    Introduction
    What the System Information perspective reveals
    Logging system information
    Associated views
    Controlling your system information session
      Sending a signal
    Examining your target system's attributes
      System Specifications pane
      System Memory pane
      Processes panes
    Watching your processes
      Thread Details pane
      Environment Variables pane
      Process Properties pane
    Examining your target system's memory (inspecting virtual address space)
    Tracking heap usage
      Observing changes in memory usage (allocations and deallocations)
        Outstanding allocations
        Allocation deltas
        Deallocation deltas
        Outstanding allocation deltas
    Examining process signals
    Getting channel information
    Tracking file descriptors
    Tracking resource usage
    Tracking the use of adaptive partitioning
    Associated views
  Analyzing Your System with Kernel Tracing
    Introducing the QNX System Profiler
      Before you begin
    Configuring a target for system profiling
      Launching the Log Configuration dialog
      Address translation
      Configuring your kernel event trace
      Capturing instrumentation data in event log files
    Viewing and interpreting the captured data
      System Profiler editor
        Timeline view
        Timeline State Colors view
        Zooming
      Filtering profile data
      Raw Event Data view
      Trace Event Log view
      Properties view
    Tracking down events
      Trace Search
      Bookmarks view
    Gathering statistics from trace data
      General Statistics view
      Event Owner Statistics view
      Client/Server CPU Statistics view
      Overview view
      Condition Statistics view
      Thread Call Stack view
    Determining thread state behavior
      Thread State Snapshot view
      Why Running? view
    Analyzing multiprocessor systems
      CPU Migration pane
    Analyzing systems with AP scheduling
      Partition Summary pane
    Using Function Instrumentation mode with the System Profiler
      Importing part of a kernel trace into the Application Profiler
    System Profiler use cases
      Locating sources of high CPU usage
      Mapping and isolating client CPU load from server CPU load
      Examining interrupt latency
      Locating Events of Interest
  Tutorials
    Before you start
    Tutorial 1: Creating a C/C++ project
    Tutorial 2: Creating a QNX C/C++ project
    Tutorial 3: Importing an existing project into the IDE
    Tutorial 4: Importing a QNX BSP into the IDE
  Where Files Are Stored?
  Utilities used by the IDE
  What's New
    What's New in IDE 4.7
      Eclipse 3.5 and CDT 6.0 integration
      Changes made to IDE 4.7
      Compiler and Tools
    What's New in IDE 4.6
      Eclipse 3.4 and CDT 5.0.2 integration
      Mudflap integration
      Integration with Foundry27 and importing BSPs
      System Profiler
      Compiler and Tools
    What's New in IDE 4.5
      Eclipse 3.3 and CDT 4.0 integration
      C and C++ development
      System information and target management
      Application Profiler
      System Profiler
      System Builder
      Memory Analysis
      Debugger
      Code Coverage
      Compiler and Tools
  Migrating from Earlier Releases
    Migration issues
      General migration considerations
      Coexistence
      Compiler issues
      Binary compatibility
      CDT impact on the IDE
        Creating a make project
        Creating a make project that can be launched outside the IDE
      IDE location
      Old launch configurations don't switch perspectives automatically
      Missing features in context menus
      System Builder Console doesn't come to front
      Reverting to an older version of the IDE
        Importing into an older IDE
    Migrating from 6.4.1 (IDE 4.6) to 6.5.0 (IDE 4.7)
      Migrating your workspace
      Migrating your projects
    Migrating from 6.4.0 (IDE 4.5) to 6.5.0 (IDE 4.7)
      Migrating your workspace
      Migrating your projects
    Migrating from 6.3.2 (IDE 4.0.1) to 6.5.0 (IDE 4.7)
      Migrating your workspace
      Migrating your projects
  IDE Administration
    Updating the IDE using the Software Updates Manager
    Running the IDE in administrative mode
    Installing new software
    Using older toolchains with the IDE
    Copying a new version of qconn to a target system
    Updating qconn on a development system
  Glossary
  Assumptions
  How to use this guide
  IDE Concepts
    What is an IDE?
      Building embedded systems using the IDE
    Perspectives
    Views
    Editors
      Using alternate editors
      Changing editors
      Refreshing the resources
      Disabling automatic syntax annotation highlighting
    Preferences
      Importing preferences
      Exporting preferences
      Setting export options for a BSP
    Projects in the IDE
      Considerations for project development
      How the IDE characterizes projects using natures
    The IDE Workspace
      Specifying a workspace location
    Host and target machines
      Target agent (the qconn daemon)
      Launcher
      Resources
      Wizards
      Keyboard shortcuts
    Version coexistence
      Environment variables
      Coexistence and PhAB
      Specifying which OS version to build for
  Getting Started
    Starting the IDE
      The IDE welcomes you
      Starting the IDE for the first time
      Starting the IDE from the command line
    Using the workbench
    Using the QNX help system
      Opening the online help from the IDE
      Navigating the online help
      Creating help bookmarks
      Tips and Tricks
    Creating a project
      Creating a simple project
      Creating a C/C++ project
        How to create a C/C++ project
      Creating a C Makefile project
      Creating a make project
      Creating a make project that can be launched outside the IDE
      Creating a target system project
      Converting projects
        Converting a QNX project to a managed make C/C++ project
        Converting a regular project to a managed make C/C++ project
        Converting to a QNX project
        Completing the conversion of a project to a different type
        Post-build actions
        Adding a post-build action
      Importing projects
        Importing an existing container project into a workspace
        Importing an existing project into a workspace
        Importing external features
          Importing external plugins and fragments
        Importing a file system
        Importing GCC coverage data from a project
        Importing a QNX Source Package
        Importing a QNX mkifs Buildfile
        Importing a QNX source package
        Importing a team project set
        Importing an archive file
        Breakpoints
        Launch configurations
      Renaming a project
    Troubleshooting in the IDE
  Project and Wizard Properties Reference
    Introduction
    Wizard properties
      Options tab
      Build Variants tab
      General tab
      Library tab
      Compiler tab
      Linker tab
        General options
        Extra library paths
        Extra libraries
        Extra object files
    Make Builder tab
    Error Parsers tab
    Project properties
      Projects tab
      Resource options
      Builders options panel
      C/C++ Build panel
      Behaviour tab
      Discovery options tab
      Environment tab
      Settings panel
        Tool settings tab
        Build steps tab
        Build artifact tab
        Binary Parser tab
        Error parsers tab
      Indexer tab
  Preparing Your Target
    Host-target communications
      IP communications
      Serial communications
        Configuring a target for serial communication
      qconn over Qnet
      Installing the qconn update
      Copying a new version of qconn to a target system.
    Networking QNX Neutrino using PPP
      Verifying a serial connection
      Preparing an embedded system for a Windows target
      QNX Networking
      Linking an embedded system running QNX Neutrino to a Windows network connection
      Verifying a network connection
    Connecting with Phindows
      Starting a remote Photon session
      Running a Photon program in a remote Photon session
  Developing C/C++ Programs
    The C/C++ perspective
    Understanding projects in the IDE
      The IDE project model
      Supported project types in the IDE
        Container project
      Scenarios for creating a project for the first time
      Checking out a partial source tree
      Sharing projects
      Checking out existing projects
      Setting build properties for a project
    Developing projects in the IDE
      Creating a simple project
      Creating a make project
      Managed make projects
        Creating a Makefile to build outside of the IDE
      Choosing an indexer
    Working with projects
      Opening files
      Creating files from scratch
      Filtering files
      Opening projects
      Closing projects
      Viewing outlines of source and binary files
    Writing code
      C/C++ editor layout
      Finishing function names
      Accessing source files for functions
      Using code templates
        Inserting code templates
        Creating a custom template
        Editing a code template
      Adding include directives
      Using hover help
      Adding and removing comments in code
      Customizing the C/C++ editor
        Changing fonts, background color, or the visibility of line numbers
        Changing tabs into spaces, highlighting, and folding options
        Setting Content Assist options
      Using other editors
        Using an external editor outside of the IDE
        Using another editor within the IDE
    Building projects
      Enabling the autobuild feature for QNX C/C++ projects
      Enabling the autobuild feature for non QNX C/C++ projects
      Configuring automated builds
        Example #1: the Makefile is in the root
      Building all projects
        Configuring the project build order
      Building a single project
      Building selected projects
      Building from the command line
      Cleaning and rebuilding all projects
      Cleaning selected projects
      Autosave before building
      Creating custom options
        Building a project with a custom make target
        Removing a make target
      Adding a use message
        Adding a usage message when using a QNX C/C++ Project
        Adding a usage message when using a Standard Project
      Creating a QNX target system Project
      Creating a launch configuration
    Running binaries for a project
    Deleting a project
    More development features
      Tracking remaining work
        Error markers
        Jumping to errors
        Filtering errors
        Tracking tasks
        Setting reminders
        Associating tasks with resources
        Removing a task
      Code synopsis
        Toolbar icons
        Outline view icons
        Filtering and grouping in the Outline view
        Using Working Sets
      Checking your build
        Customizing the Console view
      Opening headers
        Setting the include paths and define directives (C/C++ Make project)
      Navigating: Go To Type
  Managing Source Code
    SVN and the IDE
    CVS and the IDE
    Local history feature
    Project files (.project and .cproject)
    Using the core Eclipse source control documentation in the IDE
      SVN documentation
      CVS documentation
    Importing existing source code into the IDE
      Projects within projects
        Step 1: Creating a project for your source code
        Step 2: Creating a new project for each existing project or component in your source code tree
        Step 3: Linking the projects to a directory in the source tree
        Step 4: Building the component project in the linked folder
      Filesystem drag-and-drop
      Importing code into the IDE
        Importing a C/C++ project from CVS
        Importing C/C++ code that doesn't have the project metadata in CVS
        Importing C/C++ code from CVS into an existing project
        Importing a C/C++ Project from SVN
        Importing C/C++ code that doesn't have the project metadata for SVN
        Importing C/C++ code from SVN into an existing project
      Import wizard
      Adding linked resources
    Using container projects
      Creating a container project
      Setting up a build configuration
      Editing existing configurations
      Editing via project properties
      Editing via the Build Container Configuration item
      Building a container project
    Importing a BSP or other QNX source packages
      QNX BSP perspective
      Importing a BSP package from Foundry27
      Checking out BSP packages directly from the SVN Repositories view
    Exporting projects
      Using the Export command
  Launch Configurations Reference
    What is a launch configuration?
    Types of launch configurations
      Launch Group type
    Running and debugging for the first time
    Debugging a program the first time
    Running and debugging subsequent times
      Launching a selected program (fast)
      Launching from a list of favorites (faster)
      Launching the last-launched program (fastest)
    Setting execution options
      Main tab
      Arguments tab
      Environment tab
      Upload tab
      Debugger tab
      Source tab
      Common tab
      Tools tab
  Debugging in the IDE
    Debugging your program (building an executable for debugging)
      Debugging a child process
    Controlling your debug session
      Debug view
        Debug view icons
        Using the controls
        Toolbar icons
        Using hotkeys
        Controlling your debug session
          From the Debug view
          From the C/C++ editor
        Disassembly mode
      Debug launch controls
      Jumping to a memory address in the Disassembly view
    More debugging features
      Inspecting variables
      Changing variable values
      Controlling the display of variables
      Changing variable to a different type
      Viewing variables in memory
      Using breakpoints and watchpoints
        Adding breakpoints
        Adding watchpoints
        Setting an action for the breakpoint
        Adding event breakpoints
        Setting properties of breakpoints and watchpoints
        Disabling/enabling breakpoints and watchpoints
        Removing breakpoints and watchpoints
      Evaluating your expressions
      Inspecting your registers
        Toolbar icons
        Menu commands
        Modifying registers
        Changing the number system for register values
      Inspecting a process's memory
        Viewing memory
        Inspecting memory
        Configuring output format
        Changing memory
        Menu commands
        Monitors pane menu commands
        Rendering pane menu commands
      Inspecting shared-library usage
        Loading a Library's symbol
      Monitoring signal handling
        Changing how the debugger handles signals
        Sending a signal to a suspended program
      Viewing your output
      Interacting with GDB
        Enabling the QNX GDB Console view
        Using the QNX GDB Console view
    Using JTAG debugging
      JTAG: Using the Abatron BDI2000 JTAG Debugger with a QNX Neutrino kernel image
        Prerequisites
        Connecting the Abatron BDI2000 JTAG Debugger to your host
        Updating the Abatron firmware
        Connecting the Abatron BDI2000 Debugger to your target
        Building a system image
        Creating a launch configuration
        Debugging the startup binary
      JTAG: Using the Lauterbach Trace32 In-Circuit Debugger with a QNX Neutrino kernel image
        Prerequisites
        Installing the Lauterbach Trace32 In-Circuit Debugger software
        Installing the Lauterbach Trace32 Eclipse plug-in software
        Connecting the Lauterbach Trace32 In-Circuit Debugger
        Configuring the Lauterbach Trace32 In-Circuit Debugger
        Creating a launch configuration for the target hardware
        Creating a startup script for the Lauterbach Trace32 In-Circuit software
          Creating multicore launch configurations
        Using the debugger
      JTAG: Using the Macraigor Usb2Demon Debugger with a QNX Neutrino kernel image
        Prerequisites
        Installing the Macraigor hardware support package
        Connecting the Macraigor Usb2Demon Debugger to your host
        Connecting the Macraigor Usb2Demon Debugger to your target
        Starting the OCDremote
        Building a system image
        Creating a launch configuration
        Debugging a startup binary
  Building OS and Flash Images
    Introducing the QNX System Builder
      Toolbar buttons
      Binary Inspector
    Boot script files
    Overview of images
      Components of an image, in order of booting
      Types of images you can create
        BSP filename conventions
        OS image (.ifs file)
        Flash filesystem image (.efs file)
        Combined image
        Padding after the IPL
      Project layout
      Workflow of image creation
    Creating a new QNX System Builder project for an OS image
    Creating a project for a flash filesystem image (an .efs file)
    Building an OS image
      Creating a new image
      Combining images
        Adding an IPL to the start of your image
        Adding an EFS to your image
        Setting the final format of your OS image
    Downloading an image to your target
      Downloading
      Opening a terminal
      Communicating with your target
      Using the QNX Send File button
      Downloading using TFTP
      Transferring a file
      Transferring files that aren't in Images
      Transferring an image
      Settings for the TFTP server
      Setting font and color preferences
      Downloading using other methods
    Configuring your QNX System Builder projects
      Managing your images
        Determining the shared libraries and DLLs are required for an executable
        Adding files to your image
        Deleting files
        Adding directories
        Deleting directories
      Configuring image properties
      Image properties
        Directories
        General
        System (.ifs)
        System (.efs)
      Item properties
        General
        Combine
        Memory
        Permissions
      Configuring project properties
        Search Paths
        Managing your search paths
        Search path variables
    Optimizing your system
      Optimizing all libraries in your image
      Optimizing a single library
      Restoring a slimmed-down library
    Moving files between the host and target
      Moving files to the target
      Moving files from the target to the host
    Exporting a System Builder project to a Mkxfs build file(s)
  Developing Photon Applications
    What is PhAB?
      PhAB and the IDE
    Using PhAB
      Creating a QNX Photon Appbuilder project
      Closing PhAB
      Reopening PhAB
      Editing code
      Building a QNX Photon Appbuilder project
      Importing an existing standalone QNX Photon Appbuilder project
      Checking out an existing PhAB project from CVS
    Starting Photon applications
  Profiling an Application
    Types of profiling
      Statistical sample profiling (sampling)
      Function Instrumentation profiling
      Sampling and Call Count instrumentation profiling
      Postmortem profiling for Call Count and Function Instrumentation profiling
    Profiling your programs
      Building a program for profiling
        Building with profiling enabled
      Running and profiling a process
      Profiling a running process
      Postmortem profiling for Call Count and sampling
      Application Profiler tab
    Controlling your profiling sessions
    Understanding your profiling data
    Profiler Sessions view
      Toolbar options
      Pausing and resuming a profiling session
      Taking a snapshot of a profile session
      Creating a sample profile session
      Exporting a profiler session
    Debug view
    Execution Time view
      Column descriptions
      Interpreting Tree mode column information by profiling type
      Toolbar options
      Context menu navigation options
      Take Snapshot and Watch Difference
      Show Threads Tree
      Show Table mode
      Show Calls
      Show Reverse Calls
      Show Call Graphs
      Show Source
      Duplicating the view
      Viewing history
      Grouping
      Setting preferences
      Copying to the clipboard
      Filtering
      Searching
    Annotated source editor
    Using the Application Profiler
      Using Function Instrumentation with the Application Profiler
      Using Sampling and Call Count instrumentation mode
      Using Function Instrumentation mode for a single application
      Using Function Instrumentation in the System Profiler
      Creating an Application Profiler session
      Creating a profiler session by importing profiler data
      Profiling a single-threaded application
      Profiling a running process for an existing project
      Using postmortem profiling for Call Count and Sampling
      Postmortem profiling
      Running an instrumented binary with profiling from a command prompt (Function Instrumentation mode)
      Taking a snapshot of a profiling session
      Comparing profiles
  Using Code Coverage
    Types of code coverage in the IDE
    How the coverage tool works
    Enabling code coverage
      Enabling code coverage for make projects
      Starting a coverage-enabled program
    Importing gcc code coverage data from a project
    Associated views
    Code Coverage Sessions view
      Combining Code Coverage sessions
      Examining data line-by-line
    Code Coverage Properties view
    Code Coverage Report view
  Analyzing Memory Usage and Finding Errors
    Memory management in QNX Neutrino
      Virtual memory
    Memory optimization
      Process memory
        Inspecting your process memory distribution
      Performance of heap allocations
        Preparing for a memory profiling session
      Analyzing allocation patterns
      Optimizing heap memory
        Memory leaks
        Enabling memory leak detection
        Inspecting outstanding allocations
      Types of allocation overhead
      Estimating the average allocation size
      Tuning the allocator
      Optimizing static and stack memory
    Finding memory errors and leaks
      Testing an application for memory leaks using the System Information Tool
      Using Memory Analysis tooling
        Memory leaks
          Enabling leak detection
          Detecting leaks on demand during program execution
          Interpreting leaks
        Memory errors
          Configuring the IDE for error analysis
          Changing error detection options at runtime
          Interpreting memory errors
      Using Mudflap
        Configuring Mudflap to find errors
        Options for Mudflap
        Mudflap Violations view
        Interpreting Mudflap output
    The Memory Analysis tool
      Advanced topics
        Analyzing a running program
        Memory analysis of shared objects
        GUI interface options and environment variables for the Memory Analysis Tool
      Launching your program with Memory Analysis
        Launching from the command line with Memory Analysis enabled
        Performing a postmortem memory analysis
        Attaching to a running process
        The Memory Analysis tooling API
      Viewing Memory Analysis data
        Memory Analysis editor
          Selecting data
          Controlling the page layout
          Controlling the overview
          Controlling the detail pane
          Allocations tab
          Bins tab
          Bands tab
          Usage tab
          Settings tab
        Memory Problems view
          Memory Problems Filter
          Memory Problems Preferences
          Viewing statistics for memory problems
        Memory Events view
          Memory Events Filter
          Memory Events Preferences
          Viewing statistics for memory events
        Memory Backtrace view
        Inspecting outstanding allocations
        Interpreting errors during memory analysis
          Illegal deallocation of memory
          NULL pointer dereference
          Buffer overflow
          Using freed memory
          Reading uninitialized memory
          Resource (memory) leaks
          Functions checked for memory errors during memory analysis
          Summary of error messages for Memory Analysis
      Managing Memory Analysis sessions: The Session view
        Opening a session
        Deleting a session
        Closing a session
        Exporting session data
        Filtering information for a session
        Importing session information
        Showing information about a session
        Renaming a session
      Importing memory analysis data
        Importing session information from an XML file
        Importing event information
      Exporting memory analysis data
        Exporting memory analysis session data
        Memory result formats
  Getting System Information
    Introduction
    What the System Information perspective reveals
    Logging system information
    Associated views
    Controlling your system information session
      Sending a signal
    Examining your target system's attributes
      System Specifications pane
      System Memory pane
      Processes panes
    Watching your processes
      Thread Details pane
      Environment Variables pane
      Process Properties pane
    Examining your target system's memory (inspecting virtual address space)
    Tracking heap usage
      Observing changes in memory usage (allocations and deallocations)
        Outstanding allocations
        Allocation deltas
        Deallocation deltas
        Outstanding allocation deltas
    Examining process signals
    Getting channel information
    Tracking file descriptors
    Tracking resource usage
    Tracking the use of adaptive partitioning
    Associated views
  Analyzing Your System with Kernel Tracing
    Introducing the QNX System Profiler
      Before you begin
    Configuring a target for system profiling
      Launching the Log Configuration dialog
      Address translation
      Configuring your kernel event trace
      Capturing instrumentation data in event log files
    Viewing and interpreting the captured data
      System Profiler editor
        Timeline view
        Timeline State Colors view
        Zooming
      Filtering profile data
      Raw Event Data view
      Trace Event Log view
      Properties view
    Tracking down events
      Trace Search
      Bookmarks view
    Gathering statistics from trace data
      General Statistics view
      Event Owner Statistics view
      Client/Server CPU Statistics view
      Overview view
      Condition Statistics view
      Thread Call Stack view
    Determining thread state behavior
      Thread State Snapshot view
      Why Running? view
    Analyzing multiprocessor systems
      CPU Migration pane
    Analyzing systems with AP scheduling
      Partition Summary pane
    Using Function Instrumentation mode with the System Profiler
      Importing part of a kernel trace into the Application Profiler
    System Profiler use cases
      Locating sources of high CPU usage
      Mapping and isolating client CPU load from server CPU load
      Examining interrupt latency
      Locating Events of Interest
  Tutorials
    Before you start
    Tutorial 1: Creating a C/C++ project
    Tutorial 2: Creating a QNX C/C++ project
    Tutorial 3: Importing an existing project into the IDE
    Tutorial 4: Importing a QNX BSP into the IDE
  Where Files Are Stored?
  Utilities used by the IDE
  What's New
    What's New in IDE 4.7
      Eclipse 3.5 and CDT 6.0 integration
      Changes made to IDE 4.7
      Compiler and Tools
    What's New in IDE 4.6
      Eclipse 3.4 and CDT 5.0.2 integration
      Mudflap integration
      Integration with Foundry27 and importing BSPs
      System Profiler
      Compiler and Tools
    What's New in IDE 4.5
      Eclipse 3.3 and CDT 4.0 integration
      C and C++ development
      System information and target management
      Application Profiler
      System Profiler
      System Builder
      Memory Analysis
      Debugger
      Code Coverage
      Compiler and Tools
  Migrating from Earlier Releases
    Migration issues
      General migration considerations
      Coexistence
      Compiler issues
      Binary compatibility
      CDT impact on the IDE
        Creating a make project
        Creating a make project that can be launched outside the IDE
      IDE location
      Old launch configurations don't switch perspectives automatically
      Missing features in context menus
      System Builder Console doesn't come to front
      Reverting to an older version of the IDE
        Importing into an older IDE
    Migrating from 6.4.1 (IDE 4.6) to 6.5.0 (IDE 4.7)
      Migrating your workspace
      Migrating your projects
    Migrating from 6.4.0 (IDE 4.5) to 6.5.0 (IDE 4.7)
      Migrating your workspace
      Migrating your projects
    Migrating from 6.3.2 (IDE 4.0.1) to 6.5.0 (IDE 4.7)
      Migrating your workspace
      Migrating your projects
  IDE Administration
    Updating the IDE using the Software Updates Manager
    Running the IDE in administrative mode
    Installing new software
    Using older toolchains with the IDE
    Copying a new version of qconn to a target system
    Updating qconn on a development system
  Glossary
QNX Momentics Phindows Connectivity Tool User's Guide
  How to Use This Guide
  Getting started with Phindows
    Starting Phindows
    Configuring Phindows for TCP/IP use
    Data-compression options
    Data-caching options
    Using Windows fonts
    Using snapshot or PgReadScreen()
  Using the command line options
    Command-line options
    Dittoing remote QNX Photon sessions
    Connecting to a remote Photon session
    Starting Photon sessions on other QNX nodes
    Spanning a single Photon session across multiple screens
    Sharing a Photon session (workgroup computing)
    Enabling offscreen context support
    Using predefined Photon services
  Configuring Phindows
    Configuring Phindows environment variables
    Setting up an embedded target
  How to Use This Guide
  Getting started with Phindows
    Starting Phindows
    Configuring Phindows for TCP/IP use
    Data-compression options
    Data-caching options
    Using Windows fonts
    Using snapshot or PgReadScreen()
  Using the command line options
    Command-line options
    Dittoing remote QNX Photon sessions
    Connecting to a remote Photon session
    Starting Photon sessions on other QNX nodes
    Spanning a single Photon session across multiple screens
    Sharing a Photon session (workgroup computing)
    Enabling offscreen context support
    Using predefined Photon services
  Configuring Phindows
    Configuring Phindows environment variables
    Setting up an embedded target
QNX Neutrino Adaptive Partitioning
  User's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    What is Adaptive Partitioning?
      What are partitions and what is adaptive partitioning?
        Because adaptive partitions are not boxes what are they?
      System and user requirements
      The thread scheduler
    Controlling Resources Using the Thread Scheduler
      Overview
    Quickstart: Adaptive Partitioning Thread Scheduler
    Using the Thread Scheduler
      Introduction
      Keeping track of CPU time
      How is CPU time divided between partitions?
        Underload
        Free time
        Full Load
        Summary of scheduling behavior
      Partition inheritance
        What about any threads or processes that the server creates? Which partition do they run in?
      Critical threads
        Bankruptcy
      Adaptive partitioning thread scheduler and other thread schedulers
        A caveat about FIFO scheduling
      Using the thread scheduler and multicore together
        Scheduler partitions and BMP
    Setting Up and Using the Adaptive Partitioning Thread Scheduler
      Building an image
      Creating scheduler partitions
        In a buildfile
        From the command line
        From a program
      Launching a process in a partition
        In a buildfile
        From the command line
        From a program
      Viewing partition use
    Considerations for the Thread Scheduler
      Determining the number of scheduler partitions and their contents
      Choosing the percentage of CPU for each partition
        Setting budgets to zero
          When is it useful to set the budget of a partition to zero?
        Setting budgets for resource managers
      Choosing the window size
        Accuracy
        Delays compared to priority scheduling
          Case 1
          Case 2
          Approximating the delays
      Practical limits
      Uncontrolled interactions between scheduler partitions
    Security for Scheduler Partitions
      Managing security for the thread scheduler
        Security and critical threads
    Testing and Debugging
      Instrumented kernel trace events
      Using the QNX IDE (trace events)
      Using other methods
      Emergency access to the system
    Frequently Asked Questions: Adaptive Partitioning Thread Scheduler
      Scheduling behavior
        How does the thread scheduler guarantee a partition's minimum CPU budget?
        When does the scheduler guarantee that a partition gets its budget?
        Does a 100-ms window mean a CPU time-averaging occurs only once in every 100 ms?
        How often does the algorithm enforce partition budgets?
        What system assumptions does the design of thread scheduler make?
        When does the thread scheduler calculate percentage CPU usage?
        How often does the thread scheduler compute CPU usage?
        When is the scheduler's behavior realtime?
        What is free-time mode?
        What is free time?
        Do you have to repay free time?
        How does the thread scheduler behave on HyperThreaded (HT) processors?
        How long can a round-robin thread run with the thread scheduler?
        How long can a FIFO thread run with the thread scheduler?
        How long can a sporadic (SS) thread run with the thread scheduler?
        How often does the thread scheduler algorithm run?
        How often does the thread scheduler enforce budgets?
        How do power-saving modes affect scheduling?
        How does changing the clock period (using ClockPeriod) affect scheduling?
      Microbilling
        How does microbilling work?
        How often does thread scheduler microbill?
        How does ClockCycles work?
        How accurate is microbilling?
        How accurate is ClockCycles?
        What is the resolution of thread timing?
      Averaging window
        How does the averaging window work?
        What is the window-rotation algorithm?
        Can I change the window size?
        How does changing the window size affect scheduling?
        How do maximum latencies relate to the averaging window size?
      Scheduling algorithm
        How does the thread scheduler pick a thread to run?
        How does the scheduling algorithm work?
        How does the scheduler find the highest-priority thread in a partition?
        How are RFFs (relative fraction free) computed?
        How does the scheduler algorithm avoid division and floating-point mathematics?
        How does the scheduler algorithm determine if a thread that's allowed to run as critical, should actually run as critical?
        How does the scheduler algorithm decide when to bill critical time?
        What are the algorithm's size limitations?
        What are the algorithm's accuracy limitations?
        When is the scheduling algorithm approximated?
      Overhead
        Which partition is the overhead associated with scheduling charged to?
        Which partition is the overhead for processing interrupts charged to?
        What is the CPU overhead with the thread scheduler?
        What is the memory overhead with the thread scheduler?
        What factors increase the overhead for the thread scheduler?
      Critical threads and bankruptcy
        How does the scheduler mark a thread as critical?
        How does the thread scheduler know that a thread is critical?
        Do critical threads expose security?
        When does the scheduler check for bankruptcy?
        How does the scheduler detect bankruptcy?
      Inheritance
        What is partition inheritance?
        When does partition inheritance occur?
        How does mutex partition and inheritance work?
        How fast is partition inheritance?
        Why is partition inheritance for message passing secure?
      Budgets
        Can I change the budgets dynamically?
        How does a budget change affect scheduling?
        How quickly does a budget change take effect?
        When does a change in budgets take effect?
        What is a partition with zero budget?
        How does the scheduler guarantee that the sum of all partitions' budgets is 100%?
        How does the scheduler prevent an untrusted thread from increasing its partition's budget?
        How can I cheat to exceed my partition's budget?
      Joining a partition
        How does joining a thread to a partition work?
        How fast is joining a thread to a partition?
      QNX system considerations
        Why doesn't Neutrino allow a partition to be deleted?
        How does the thread scheduler plug into procnto?
        Is the classic scheduler still present when the thread scheduler is active?
        Does the thread scheduler inhibit I/O interrupts?
        Is there a performance limitation on how often I can call SchedCtl(SCHED_APS_PARTITION_STATS,...) to get statistics?
    Glossary
  User's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    What is Adaptive Partitioning?
      What are partitions and what is adaptive partitioning?
        Because adaptive partitions are not boxes what are they?
      System and user requirements
      The thread scheduler
    Controlling Resources Using the Thread Scheduler
      Overview
    Quickstart: Adaptive Partitioning Thread Scheduler
    Using the Thread Scheduler
      Introduction
      Keeping track of CPU time
      How is CPU time divided between partitions?
        Underload
        Free time
        Full Load
        Summary of scheduling behavior
      Partition inheritance
        What about any threads or processes that the server creates? Which partition do they run in?
      Critical threads
        Bankruptcy
      Adaptive partitioning thread scheduler and other thread schedulers
        A caveat about FIFO scheduling
      Using the thread scheduler and multicore together
        Scheduler partitions and BMP
    Setting Up and Using the Adaptive Partitioning Thread Scheduler
      Building an image
      Creating scheduler partitions
        In a buildfile
        From the command line
        From a program
      Launching a process in a partition
        In a buildfile
        From the command line
        From a program
      Viewing partition use
    Considerations for the Thread Scheduler
      Determining the number of scheduler partitions and their contents
      Choosing the percentage of CPU for each partition
        Setting budgets to zero
          When is it useful to set the budget of a partition to zero?
        Setting budgets for resource managers
      Choosing the window size
        Accuracy
        Delays compared to priority scheduling
          Case 1
          Case 2
          Approximating the delays
      Practical limits
      Uncontrolled interactions between scheduler partitions
    Security for Scheduler Partitions
      Managing security for the thread scheduler
        Security and critical threads
    Testing and Debugging
      Instrumented kernel trace events
      Using the QNX IDE (trace events)
      Using other methods
      Emergency access to the system
    Frequently Asked Questions: Adaptive Partitioning Thread Scheduler
      Scheduling behavior
        How does the thread scheduler guarantee a partition's minimum CPU budget?
        When does the scheduler guarantee that a partition gets its budget?
        Does a 100-ms window mean a CPU time-averaging occurs only once in every 100 ms?
        How often does the algorithm enforce partition budgets?
        What system assumptions does the design of thread scheduler make?
        When does the thread scheduler calculate percentage CPU usage?
        How often does the thread scheduler compute CPU usage?
        When is the scheduler's behavior realtime?
        What is free-time mode?
        What is free time?
        Do you have to repay free time?
        How does the thread scheduler behave on HyperThreaded (HT) processors?
        How long can a round-robin thread run with the thread scheduler?
        How long can a FIFO thread run with the thread scheduler?
        How long can a sporadic (SS) thread run with the thread scheduler?
        How often does the thread scheduler algorithm run?
        How often does the thread scheduler enforce budgets?
        How do power-saving modes affect scheduling?
        How does changing the clock period (using ClockPeriod) affect scheduling?
      Microbilling
        How does microbilling work?
        How often does thread scheduler microbill?
        How does ClockCycles work?
        How accurate is microbilling?
        How accurate is ClockCycles?
        What is the resolution of thread timing?
      Averaging window
        How does the averaging window work?
        What is the window-rotation algorithm?
        Can I change the window size?
        How does changing the window size affect scheduling?
        How do maximum latencies relate to the averaging window size?
      Scheduling algorithm
        How does the thread scheduler pick a thread to run?
        How does the scheduling algorithm work?
        How does the scheduler find the highest-priority thread in a partition?
        How are RFFs (relative fraction free) computed?
        How does the scheduler algorithm avoid division and floating-point mathematics?
        How does the scheduler algorithm determine if a thread that's allowed to run as critical, should actually run as critical?
        How does the scheduler algorithm decide when to bill critical time?
        What are the algorithm's size limitations?
        What are the algorithm's accuracy limitations?
        When is the scheduling algorithm approximated?
      Overhead
        Which partition is the overhead associated with scheduling charged to?
        Which partition is the overhead for processing interrupts charged to?
        What is the CPU overhead with the thread scheduler?
        What is the memory overhead with the thread scheduler?
        What factors increase the overhead for the thread scheduler?
      Critical threads and bankruptcy
        How does the scheduler mark a thread as critical?
        How does the thread scheduler know that a thread is critical?
        Do critical threads expose security?
        When does the scheduler check for bankruptcy?
        How does the scheduler detect bankruptcy?
      Inheritance
        What is partition inheritance?
        When does partition inheritance occur?
        How does mutex partition and inheritance work?
        How fast is partition inheritance?
        Why is partition inheritance for message passing secure?
      Budgets
        Can I change the budgets dynamically?
        How does a budget change affect scheduling?
        How quickly does a budget change take effect?
        When does a change in budgets take effect?
        What is a partition with zero budget?
        How does the scheduler guarantee that the sum of all partitions' budgets is 100%?
        How does the scheduler prevent an untrusted thread from increasing its partition's budget?
        How can I cheat to exceed my partition's budget?
      Joining a partition
        How does joining a thread to a partition work?
        How fast is joining a thread to a partition?
      QNX system considerations
        Why doesn't Neutrino allow a partition to be deleted?
        How does the thread scheduler plug into procnto?
        Is the classic scheduler still present when the thread scheduler is active?
        Does the thread scheduler inhibit I/O interrupts?
        Is there a performance limitation on how often I can call SchedCtl(SCHED_APS_PARTITION_STATS,...) to get statistics?
    Glossary
QNX Neutrino Advanced Graphics
  Developer's Guide
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction
      Overview of the QNX Graphics Framework (GF) architecture
        GF components
      GF compared to Photon
    Basic Drawing
      Setting up GF
        Attaching to a device and display
        Attaching to display layers
        Create and set surfaces
        Create a draw context
      Using draw coordinates
      Drawing rectangles
      Drawing lines and polygons
      Bitmaps
      Blitting
      Multithreaded applications
      Debugging
    Working with Images
      Attaching to the image library
      Loading the image
      Attaching to a surface
      Blitting the image
      Cleaning up
    Working with Layers, Surfaces, and Contexts
      Using layers
        Layer visibility
        Layer brightness, contrast, saturation, and hue
        Viewports
        Layer blending and chroma
      Using surfaces
      Using contexts
        Context Alpha Blending
        Chroma Keying
        Setting foreground and background colors
        Setting line attributes
        Clipping
        Raster operations
        Anti-aliasing polylines
        Transform matrices and translations
    Using OpenGL ES
      Using OpenGL ES
      Creating surfaces
        Window surfaces
        Pixmap surfaces
        pbuffer surfaces
      Using Vertex Buffer Objects
    Using the Video-Capture API
      Video capture
      An example
    Embedding 2D and 3D Applications
      Assumptions
      Building the image
        2D example: vsync
        Font example: font-cache
        Image example: img_decode_simple
        OpenGL ES: Gears
    Hardware Capabilities
      Fujitsu Carmine
        OpenGL ES Hardware Acceleration
        Supported Chipset
        OpenGL ES Lighting
      Intel Extreme2
      Fujitsu Coral
        Hardware Acceleration
    Summary of Entries
      3D rendering
      Contexts
      Cursors
      Devices and displays
      Drawing
      Layers
      Surfaces
      Video Capture
    QNX Graphics Framework Library Reference
      Functions
      Structures and types
      gf_3d_target_create
        Description:
      gf_3d_target_free
        Description:
      gf_3d_query_config
        Description:
      gf_alpha_t
        Description:
          Alpha mode flags
      gf_chroma_t
        Description:
      gf_context_create
        Description:
      gf_context_disable_alpha
        Description:
      gf_context_disable_antialias
        Description:
      gf_context_disable_chroma
        Description:
      gf_context_disable_clipping
        Description:
      gf_context_disable_linedash
        Description:
      gf_context_disable_pattern
        Description:
      gf_context_disable_planemask
        Description:
      gf_context_disable_transform
        Description:
      gf_context_disable_translation
        Description:
      gf_context_free
        Description:
      gf_context_get_surface
        Description:
      gf_context_init
        Description:
      gf_context_set_alpha
        Description:
      gf_context_set_antialias
        Description:
      gf_context_set_bgcolor
        Description:
      gf_context_set_bgcolor_native
        Description:
      gf_context_set_capstyle
        Description:
      gf_context_set_chroma
        Description:
      gf_context_set_clipping
        Description:
      gf_context_set_fgcolor
        Description:
      gf_context_set_fgcolor_native
        Description:
      gf_context_set_filter
        Description:
      gf_context_set_hw_polygon
        Description:
      gf_context_set_linedash
        Description:
      gf_context_set_linejoin
        Description:
      gf_context_set_pattern
        Description:
      gf_context_set_penwidth
        Description:
      gf_context_set_planemask
        Description:
      gf_context_set_polyfill
        Description:
      gf_context_set_rop
        Description:
          Raster Operation Defines
      gf_context_set_surface
        Description:
      gf_context_set_surface_3d
        Description:
      gf_context_set_transform
        Description:
      gf_context_set_translation
        Description:
      gf_context_unset_surface
        Description:
      gf_cursor_disable
        Description:
      gf_cursor_enable
        Description:
      gf_cursor_set
        Description:
      gf_cursor_set_pos
        Description:
      gf_dev_attach
        Description:
        Examples:
      gf_dev_detach
        Description:
      gf_dev_get_error
        Description:
      gf_dev_get_meminfo
        Description:
      gf_dev_register_thread
        Description:
      gf_dim_t
        Description:
      gf_display_attach
        Description:
          gf_display_info_t
        Examples:
      gf_display_detach
        Description:
      gf_display_query
        Description:
      gf_display_query_mode
        Description:
      gf_display_set_dpms
        Description:
      gf_display_set_external_chroma
        Description:
      gf_display_set_layer_order
        Description:
      gf_display_set_mode
        Description:
      gf_display_snapshot
        Description:
      gf_display_wait_vsync
        Description:
      gf_draw_begin
        Description:
      gf_draw_bitmap
        Description:
      gf_draw_blit1
        Description:
      gf_draw_blit2
        Description:
      gf_draw_blitscaled
        Description:
      gf_draw_end
        Description:
      gf_draw_finish
        Description:
      gf_draw_flush
        Description:
      gf_draw_image
        Description:
      gf_draw_poly_fill
        Description:
      gf_draw_polyline
        Description:
      gf_draw_rect
        Description:
      gf_draw_span
        Description:
      gf_draw_spanlist
        Description:
      gf_format_t
        Description:
          Endianness
      gf_i2c_read
        Description:
      gf_i2c_write
        Description:
      gf_i2c_writeread
        Description:
      gf_layer_attach
        Description:
      gf_layer_choose_format
        Description:
      gf_layer_detach
        Description:
      gf_layer_disable
        Description:
      gf_layer_enable
        Description:
      gf_layer_query
        Description:
        Examples:
      gf_layer_set_blending
        Description:
      gf_layer_set_brightness
        Description:
      gf_layer_set_chroma
        Description:
      gf_layer_set_contrast
        Description:
      gf_layer_set_dst_viewport
        Description:
      gf_layer_set_edge
        Description:
      gf_layer_set_filter
        Description:
      gf_layer_set_hue
        Description:
      gf_layer_set_outputs
        Description:
      gf_layer_set_saturation
        Description:
      gf_layer_set_src_viewport
        Description:
      gf_layer_set_surfaces
        Description:
      gf_layer_update
        Description:
      gf_layer_update_multi
        Description:
      gf_palette_t
        Description:
          The gf_color_t Type
      gf_point_t
        Description:
      gf_surface_attach
        Description:
      gf_surface_attach_by_sid
        Description:
      gf_surface_create
        Description:
      gf_surface_create_layer
        Description:
      gf_surface_free
        Description:
      gf_surface_get_dev
        Description:
      gf_surface_get_info
        Description:
      gf_surface_reattach
        Description:
      gf_vcap_attach
        Description:
      gf_vcap_bind_to_layer
        Description:
      gf_vcap_detach
        Description:
      gf_vcap_disable
        Description:
      gf_vcap_enable
        Description:
      gf_vcap_set_brightness
        Description:
      gf_vcap_set_contrast
        Description:
      gf_vcap_set_flags
        Description:
      gf_vcap_set_input_dimensions
        Description:
      gf_vcap_set_input_source
        Description:
      gf_vcap_set_input_viewport
        Description:
      gf_vcap_set_output_dimensions
        Description:
      gf_vcap_set_saturation
        Description:
      gf_vcap_set_sync_values
        Description:
      gf_vcap_update
        Description:
    QNX Image Library Reference
      Functions
      Macros
      Structures
      img_cfg_read
        Description:
      img_codec_get_criteria
        Description:
        Examples:
      img_codec_list
        Description:
      img_codec_list_byext
        Description:
      img_codec_list_bymime
        Description:
      img_convert_data
        Description:
          The img_format_t type
      img_convert_getfunc
        Description:
      img_crop
        Description:
      img_decode_begin
        Description:
      img_decode_callouts_t
        Description:
          img_decode_choose_format_f *choose_format_f
          img_decode_setup_f* setup_f
          img_decode_abort_f* abort_f
          img_decode_scanline_f* scanline_f
          img_decode_set_transparency_f* set_transparency_f
          img_decode_set_palette_f* set_palette_f
          img_decode_frame_f* frame_f
          img_decode_set_value_f* set_value_f
          uintptrt_t data
      img_decode_finish
        Description:
      img_decode_frame
        Description:
      img_decode_validate
        Description:
      img_dtransform
        Description:
      img_dtransform_apply
        Description:
      img_dtransform_create
        Description:
      img_dtransform_free
        Description:
      img_encode_begin
        Description:
      img_encode_callouts_t
        Description:
          img_encode_choose_format_f *choose_format_f
          img_encode_setup_f* setup_f
          img_encode_abort_f* abort_f
          img_encode_scanline_f* scanline_f
          img_encode_get_transparency_f* get_transparency_f
          img_encode_get_palette_f* get_palette_f
          img_encode_frame_f* frame_f
          uintptrt_t data
      img_encode_finish
        Description:
      img_encode_frame
        Description:
      img_expand_getfunc
        Description:
      IMG_FMT_BPL
        Description:
      IMG_FMT_BPP
        Description:
      img_lib_attach
        Description:
          The img.conf Configuration File
      img_lib_detach
        Description:
      img_load
        Description:
      img_load_file
        Description:
      img_load_resize_file
        Description:
      img_resize_fs
        Description:
      img_rotate_ortho
        Description:
      img_t
        Description:
      img_write_file
        Description:
      img_write
        Description:
      io_close
        Description:
      io_open
        Description:
    What's New
      What's new in QNX Neutrino Core Graphics for 6.5.0
      What's new in QNX Neutrino Core Graphics for 6.4.1
      What's new in QNX Neutrino Core Graphics for 6.4.0
      What's new in QNX Advanced Graphics 2.1
      What's new in QNX Advanced Graphics 2.0
    Glossary
  Developer's Guide
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction
      Overview of the QNX Graphics Framework (GF) architecture
        GF components
      GF compared to Photon
    Basic Drawing
      Setting up GF
        Attaching to a device and display
        Attaching to display layers
        Create and set surfaces
        Create a draw context
      Using draw coordinates
      Drawing rectangles
      Drawing lines and polygons
      Bitmaps
      Blitting
      Multithreaded applications
      Debugging
    Working with Images
      Attaching to the image library
      Loading the image
      Attaching to a surface
      Blitting the image
      Cleaning up
    Working with Layers, Surfaces, and Contexts
      Using layers
        Layer visibility
        Layer brightness, contrast, saturation, and hue
        Viewports
        Layer blending and chroma
      Using surfaces
      Using contexts
        Context Alpha Blending
        Chroma Keying
        Setting foreground and background colors
        Setting line attributes
        Clipping
        Raster operations
        Anti-aliasing polylines
        Transform matrices and translations
    Using OpenGL ES
      Using OpenGL ES
      Creating surfaces
        Window surfaces
        Pixmap surfaces
        pbuffer surfaces
      Using Vertex Buffer Objects
    Using the Video-Capture API
      Video capture
      An example
    Embedding 2D and 3D Applications
      Assumptions
      Building the image
        2D example: vsync
        Font example: font-cache
        Image example: img_decode_simple
        OpenGL ES: Gears
    Hardware Capabilities
      Fujitsu Carmine
        OpenGL ES Hardware Acceleration
        Supported Chipset
        OpenGL ES Lighting
      Intel Extreme2
      Fujitsu Coral
        Hardware Acceleration
    Summary of Entries
      3D rendering
      Contexts
      Cursors
      Devices and displays
      Drawing
      Layers
      Surfaces
      Video Capture
    QNX Graphics Framework Library Reference
      Functions
      Structures and types
      gf_3d_target_create
        Description:
      gf_3d_target_free
        Description:
      gf_3d_query_config
        Description:
      gf_alpha_t
        Description:
          Alpha mode flags
      gf_chroma_t
        Description:
      gf_context_create
        Description:
      gf_context_disable_alpha
        Description:
      gf_context_disable_antialias
        Description:
      gf_context_disable_chroma
        Description:
      gf_context_disable_clipping
        Description:
      gf_context_disable_linedash
        Description:
      gf_context_disable_pattern
        Description:
      gf_context_disable_planemask
        Description:
      gf_context_disable_transform
        Description:
      gf_context_disable_translation
        Description:
      gf_context_free
        Description:
      gf_context_get_surface
        Description:
      gf_context_init
        Description:
      gf_context_set_alpha
        Description:
      gf_context_set_antialias
        Description:
      gf_context_set_bgcolor
        Description:
      gf_context_set_bgcolor_native
        Description:
      gf_context_set_capstyle
        Description:
      gf_context_set_chroma
        Description:
      gf_context_set_clipping
        Description:
      gf_context_set_fgcolor
        Description:
      gf_context_set_fgcolor_native
        Description:
      gf_context_set_filter
        Description:
      gf_context_set_hw_polygon
        Description:
      gf_context_set_linedash
        Description:
      gf_context_set_linejoin
        Description:
      gf_context_set_pattern
        Description:
      gf_context_set_penwidth
        Description:
      gf_context_set_planemask
        Description:
      gf_context_set_polyfill
        Description:
      gf_context_set_rop
        Description:
          Raster Operation Defines
      gf_context_set_surface
        Description:
      gf_context_set_surface_3d
        Description:
      gf_context_set_transform
        Description:
      gf_context_set_translation
        Description:
      gf_context_unset_surface
        Description:
      gf_cursor_disable
        Description:
      gf_cursor_enable
        Description:
      gf_cursor_set
        Description:
      gf_cursor_set_pos
        Description:
      gf_dev_attach
        Description:
        Examples:
      gf_dev_detach
        Description:
      gf_dev_get_error
        Description:
      gf_dev_get_meminfo
        Description:
      gf_dev_register_thread
        Description:
      gf_dim_t
        Description:
      gf_display_attach
        Description:
          gf_display_info_t
        Examples:
      gf_display_detach
        Description:
      gf_display_query
        Description:
      gf_display_query_mode
        Description:
      gf_display_set_dpms
        Description:
      gf_display_set_external_chroma
        Description:
      gf_display_set_layer_order
        Description:
      gf_display_set_mode
        Description:
      gf_display_snapshot
        Description:
      gf_display_wait_vsync
        Description:
      gf_draw_begin
        Description:
      gf_draw_bitmap
        Description:
      gf_draw_blit1
        Description:
      gf_draw_blit2
        Description:
      gf_draw_blitscaled
        Description:
      gf_draw_end
        Description:
      gf_draw_finish
        Description:
      gf_draw_flush
        Description:
      gf_draw_image
        Description:
      gf_draw_poly_fill
        Description:
      gf_draw_polyline
        Description:
      gf_draw_rect
        Description:
      gf_draw_span
        Description:
      gf_draw_spanlist
        Description:
      gf_format_t
        Description:
          Endianness
      gf_i2c_read
        Description:
      gf_i2c_write
        Description:
      gf_i2c_writeread
        Description:
      gf_layer_attach
        Description:
      gf_layer_choose_format
        Description:
      gf_layer_detach
        Description:
      gf_layer_disable
        Description:
      gf_layer_enable
        Description:
      gf_layer_query
        Description:
        Examples:
      gf_layer_set_blending
        Description:
      gf_layer_set_brightness
        Description:
      gf_layer_set_chroma
        Description:
      gf_layer_set_contrast
        Description:
      gf_layer_set_dst_viewport
        Description:
      gf_layer_set_edge
        Description:
      gf_layer_set_filter
        Description:
      gf_layer_set_hue
        Description:
      gf_layer_set_outputs
        Description:
      gf_layer_set_saturation
        Description:
      gf_layer_set_src_viewport
        Description:
      gf_layer_set_surfaces
        Description:
      gf_layer_update
        Description:
      gf_layer_update_multi
        Description:
      gf_palette_t
        Description:
          The gf_color_t Type
      gf_point_t
        Description:
      gf_surface_attach
        Description:
      gf_surface_attach_by_sid
        Description:
      gf_surface_create
        Description:
      gf_surface_create_layer
        Description:
      gf_surface_free
        Description:
      gf_surface_get_dev
        Description:
      gf_surface_get_info
        Description:
      gf_surface_reattach
        Description:
      gf_vcap_attach
        Description:
      gf_vcap_bind_to_layer
        Description:
      gf_vcap_detach
        Description:
      gf_vcap_disable
        Description:
      gf_vcap_enable
        Description:
      gf_vcap_set_brightness
        Description:
      gf_vcap_set_contrast
        Description:
      gf_vcap_set_flags
        Description:
      gf_vcap_set_input_dimensions
        Description:
      gf_vcap_set_input_source
        Description:
      gf_vcap_set_input_viewport
        Description:
      gf_vcap_set_output_dimensions
        Description:
      gf_vcap_set_saturation
        Description:
      gf_vcap_set_sync_values
        Description:
      gf_vcap_update
        Description:
    QNX Image Library Reference
      Functions
      Macros
      Structures
      img_cfg_read
        Description:
      img_codec_get_criteria
        Description:
        Examples:
      img_codec_list
        Description:
      img_codec_list_byext
        Description:
      img_codec_list_bymime
        Description:
      img_convert_data
        Description:
          The img_format_t type
      img_convert_getfunc
        Description:
      img_crop
        Description:
      img_decode_begin
        Description:
      img_decode_callouts_t
        Description:
          img_decode_choose_format_f *choose_format_f
          img_decode_setup_f* setup_f
          img_decode_abort_f* abort_f
          img_decode_scanline_f* scanline_f
          img_decode_set_transparency_f* set_transparency_f
          img_decode_set_palette_f* set_palette_f
          img_decode_frame_f* frame_f
          img_decode_set_value_f* set_value_f
          uintptrt_t data
      img_decode_finish
        Description:
      img_decode_frame
        Description:
      img_decode_validate
        Description:
      img_dtransform
        Description:
      img_dtransform_apply
        Description:
      img_dtransform_create
        Description:
      img_dtransform_free
        Description:
      img_encode_begin
        Description:
      img_encode_callouts_t
        Description:
          img_encode_choose_format_f *choose_format_f
          img_encode_setup_f* setup_f
          img_encode_abort_f* abort_f
          img_encode_scanline_f* scanline_f
          img_encode_get_transparency_f* get_transparency_f
          img_encode_get_palette_f* get_palette_f
          img_encode_frame_f* frame_f
          uintptrt_t data
      img_encode_finish
        Description:
      img_encode_frame
        Description:
      img_expand_getfunc
        Description:
      IMG_FMT_BPL
        Description:
      IMG_FMT_BPP
        Description:
      img_lib_attach
        Description:
          The img.conf Configuration File
      img_lib_detach
        Description:
      img_load
        Description:
      img_load_file
        Description:
      img_load_resize_file
        Description:
      img_resize_fs
        Description:
      img_rotate_ortho
        Description:
      img_t
        Description:
      img_write_file
        Description:
      img_write
        Description:
      io_close
        Description:
      io_open
        Description:
    What's New
      What's new in QNX Neutrino Core Graphics for 6.5.0
      What's new in QNX Neutrino Core Graphics for 6.4.1
      What's new in QNX Neutrino Core Graphics for 6.4.0
      What's new in QNX Advanced Graphics 2.1
      What's new in QNX Advanced Graphics 2.0
    Glossary
QNX Neutrino Composition Manager
  Developer's Guide
    About This Guide
      What's in this guide?
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview of the Composition Manager
      Communicating with applications
      Handling composition
      Enabling the HMI
    Why use Composition Manager?
      Advantages of using multiple processes
      Is Composition Manager right for you?
    Understanding Composition
      Hardware level composition
        Advantages:
        Disadvantages:
      Composited frame-buffer
        Advantages:
        Disadvantages:
      Layers, WFD pipelines and EGL levels
      Composition Modules
      Cursors
      io-winmgr
        Description:
        Examples:
    Configuring io-winmgr
      Global settings
      Display settings
      Window class settings
    Configuring Composition Manager
      Configuration 1:
      Configuration 2:
      Configuration 3:
      Configuration 4:
    Working with External APIs
      OpenKODE
        OpenKODE 1.0.2 header files on QNX Neutrino ( /usr/include/KD )
        OpenKODE 1.0.2 libraries on QNX Neutrino
        OpenKODE 1.0.2 Core Entry Points
      EGL
        EGL 1.4 header files on QNX Neutrino ( /usr/include/EGL )
        EGL 1.4 libraries on QNX Neutrino ( /usr/lib )
      OpenGL ES
        OpenGL ES 1.0 Header Files on QNX Neutrino ( /usr/include/GLES )
        OpenGL ES 1.0 Libraries on QNX Neutrino ( /usr/lib )
    Using the Tutorials and Demos
      Demos
        Notes:
      Tutorials
      Community
    Composition Manager Extensions
      KD_QNX_window
        Description:
          Functions:
            kdPostWindowEventQNX( )
            KDint32 kdSetWindowOrderQNX( )
          Properties:
          Events:
      KD_QNX_input
        Description:
          Functions:
            kdOutputSetpQNX()
          Events:
          I/O groups and items
            KD_IOGROUP_KEYBOARD_QNX
            I/O items
            KD_QNX_IOGROUP_DISP_GROUP
            I/O items
            KD_QNX_IOGROUP_ASSIGN_GROUP
            I/O items
    What's New
      What's new in Composition Manager for 6.5.0
  Developer's Guide
    About This Guide
      What's in this guide?
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview of the Composition Manager
      Communicating with applications
      Handling composition
      Enabling the HMI
    Why use Composition Manager?
      Advantages of using multiple processes
      Is Composition Manager right for you?
    Understanding Composition
      Hardware level composition
        Advantages:
        Disadvantages:
      Composited frame-buffer
        Advantages:
        Disadvantages:
      Layers, WFD pipelines and EGL levels
      Composition Modules
      Cursors
      io-winmgr
        Description:
        Examples:
    Configuring io-winmgr
      Global settings
      Display settings
      Window class settings
    Configuring Composition Manager
      Configuration 1:
      Configuration 2:
      Configuration 3:
      Configuration 4:
    Working with External APIs
      OpenKODE
        OpenKODE 1.0.2 header files on QNX Neutrino ( /usr/include/KD )
        OpenKODE 1.0.2 libraries on QNX Neutrino
        OpenKODE 1.0.2 Core Entry Points
      EGL
        EGL 1.4 header files on QNX Neutrino ( /usr/include/EGL )
        EGL 1.4 libraries on QNX Neutrino ( /usr/lib )
      OpenGL ES
        OpenGL ES 1.0 Header Files on QNX Neutrino ( /usr/include/GLES )
        OpenGL ES 1.0 Libraries on QNX Neutrino ( /usr/lib )
    Using the Tutorials and Demos
      Demos
        Notes:
      Tutorials
      Community
    Composition Manager Extensions
      KD_QNX_window
        Description:
          Functions:
            kdPostWindowEventQNX( )
            KDint32 kdSetWindowOrderQNX( )
          Properties:
          Events:
      KD_QNX_input
        Description:
          Functions:
            kdOutputSetpQNX()
          Events:
          I/O groups and items
            KD_IOGROUP_KEYBOARD_QNX
            I/O items
            KD_QNX_IOGROUP_DISP_GROUP
            I/O items
            KD_QNX_IOGROUP_ASSIGN_GROUP
            I/O items
    What's New
      What's new in Composition Manager for 6.5.0
QNX Neutrino Core Networking Stack
  User's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview
      What's new in the networking stack?
      Architecture of io-pkt
      Threading model
      Threading priorities
      Components of core networking
      Getting the source code
    Packet Filtering
      Packet Filters
      Packet Filter interface
        Packet Filter (pf) module: firewalls and NAT
      Berkeley Packet Filter
    IP Security and Hardware Encryption
      Setting up an IPsec connection: examples
        Between two boxes manually
        With authentication using the preshared-key method
      IPsec tools
      OpenSSL support
      Hardware-accelerated crypto
      Supported hardware crypto engines
    WiFi Configuration Using WPA and WEP
      802.11 a/b/g Wi-Fi Support
      NetBSD 802.11 layer
        Device management
        Nodes
        Crypto support
      Using Wi-Fi with io-pkt
      Connecting to a wireless network
        Using no encryption
        Using WEP (Wired Equivalent Privacy) for authentication and encryption
        Using WPA/WPA2 for authentication and encryption
          Background on WPA
          WPA utilities
          Connecting with WPA or WPA2
          Personal-level authentication and Enterprise-level authentication
          Using wpa_supplicant to manage your wireless network connections
      Using a Wireless Access Point (WAP)
        Creating A WAP
          Acting as a gateway
          Acting as a bridge
        WEP access point
        WPA access point
      TCP/IP configuration in a wireless network
        Client in infrastructure or ad hoc mode
        DHCP server on WAP acting as a gateway
        Launching the DHCP server on your gateway
          DHCP server configuration file
          Launching the DHCP relay agent on your gateway
        Configuring an access point as a router
    Transparent Distributed Processing
      TDP and io-pkt
      Using TDP over IP
    Network Drivers
      Types of network drivers
        Differences between ported NetBSD drivers and native drivers
        Differences between io-net drivers and other drivers
      Loading and unloading a driver
      Troubleshooting a driver
      Problems with shared interrupts
      Writing a new driver
      Debugging a driver using gdb
      Dumping 802.11 debugging information
      Jumbo packets and hardware checksumming
      Padding Ethernet packets
      Transmit Segmentation Offload (TSO)
    Utilities, Managers, and Configuration Files
    Migrating from io-net
      Overview
      Compatibility between io-net and io-pkt
      Compatibility issues
      Behavioral differences
      Simultaneous support
      Discontinued features
      Using pfil hooks to implement an io-net filter
    Glossary
  Porting Drivers from io-net to io-pkt
    Porting an io-net driver to io-pkt
      Terminology
      Shim and io-net drivers
      Differences between an io-net driver and an io-pkt driver
        Initialization
        Transmit
        Receive
        Link State Change Handling
        Control (e.g. devctl and ioctl)
        Shutdown
      Threading
      Mutexing
  User's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview
      What's new in the networking stack?
      Architecture of io-pkt
      Threading model
      Threading priorities
      Components of core networking
      Getting the source code
    Packet Filtering
      Packet Filters
      Packet Filter interface
        Packet Filter (pf) module: firewalls and NAT
      Berkeley Packet Filter
    IP Security and Hardware Encryption
      Setting up an IPsec connection: examples
        Between two boxes manually
        With authentication using the preshared-key method
      IPsec tools
      OpenSSL support
      Hardware-accelerated crypto
      Supported hardware crypto engines
    WiFi Configuration Using WPA and WEP
      802.11 a/b/g Wi-Fi Support
      NetBSD 802.11 layer
        Device management
        Nodes
        Crypto support
      Using Wi-Fi with io-pkt
      Connecting to a wireless network
        Using no encryption
        Using WEP (Wired Equivalent Privacy) for authentication and encryption
        Using WPA/WPA2 for authentication and encryption
          Background on WPA
          WPA utilities
          Connecting with WPA or WPA2
          Personal-level authentication and Enterprise-level authentication
          Using wpa_supplicant to manage your wireless network connections
      Using a Wireless Access Point (WAP)
        Creating A WAP
          Acting as a gateway
          Acting as a bridge
        WEP access point
        WPA access point
      TCP/IP configuration in a wireless network
        Client in infrastructure or ad hoc mode
        DHCP server on WAP acting as a gateway
        Launching the DHCP server on your gateway
          DHCP server configuration file
          Launching the DHCP relay agent on your gateway
        Configuring an access point as a router
    Transparent Distributed Processing
      TDP and io-pkt
      Using TDP over IP
    Network Drivers
      Types of network drivers
        Differences between ported NetBSD drivers and native drivers
        Differences between io-net drivers and other drivers
      Loading and unloading a driver
      Troubleshooting a driver
      Problems with shared interrupts
      Writing a new driver
      Debugging a driver using gdb
      Dumping 802.11 debugging information
      Jumbo packets and hardware checksumming
      Padding Ethernet packets
      Transmit Segmentation Offload (TSO)
    Utilities, Managers, and Configuration Files
    Migrating from io-net
      Overview
      Compatibility between io-net and io-pkt
      Compatibility issues
      Behavioral differences
      Simultaneous support
      Discontinued features
      Using pfil hooks to implement an io-net filter
    Glossary
  Porting Drivers from io-net to io-pkt
    Porting an io-net driver to io-pkt
      Terminology
      Shim and io-net drivers
      Differences between an io-net driver and an io-pkt driver
        Initialization
        Transmit
        Receive
        Link State Change Handling
        Control (e.g. devctl and ioctl)
        Shutdown
      Threading
      Mutexing
QNX Neutrino Driver Development Kits (DDKs)
  Audio Devices
    About the Audio DDK
      What you'll find in this guide
      Supported features
      Assumptions
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Evaluating Your Card
    Organization of a Driver
      The QNX audio system and driver
      DDK source code
      Writing an Audio HW DLL
        Opaque data types
        Custom data types
        ctrl_init
        ctrl_destroy
        Debugging an audio driver
    Handling Analog Audio Data
      Writing an analog mixer
        Mixer elements and routes
          Supported element types
        Mixer groups
          Designing mixer groups
        Coding the mixer
          Initialization
          Building the mixer
      Using a standard mixer DLL
        Initialization
        Testing the code
    Handling PCM Audio Data
      In this chapter...
      What's a PCM device?
      Creating a PCM device
        ado_pcm_create
        How does the PCM stream operate?
    API Reference
      ado_attach_interrupt
        Description:
      ado_calloc
        Description:
      ado_card_set_longname
        Description:
      ado_card_set_shortname
        Description:
      ado_debug
        Description:
      ado_device_mmap
        Description:
      ado_device_munmap
        Description:
      ado_error
        Description:
      ado_free
        Description:
      ado_malloc
        Description:
      ado_memory_dump
        Description:
      ado_mixer_capture_group_create
        Description:
      ado_mixer_create
        Description:
      ado_mixer_dll
        Description:
      ado_mixer_element_accu1
        Description:
      ado_mixer_element_accu2
        Description:
      ado_mixer_element_accu3
        Description:
      ado_mixer_element_io
        Description:
      ado_mixer_element_mux1
        Description:
      ado_mixer_element_mux2
        Description:
      ado_mixer_element_notify
        Description:
      ado_mixer_element_pcm1
        Description:
      ado_mixer_element_pcm2
        Description:
      ado_mixer_element_route_add
        Description:
      ado_mixer_element_sw1
        Description:
      ado_mixer_element_sw2
        Description:
      ado_mixer_element_sw3
        Description:
      ado_mixer_element_vol_range_max
        Description:
      ado_mixer_element_vol_range_min
        Description:
      ado_mixer_element_volume1
        Description:
      ado_mixer_find_element
        Description:
      ado_mixer_find_group
        Description:
      ado_mixer_get_context
        Description:
      ado_mixer_get_element_instance_data
        Description:
      ado_mixer_lock
        Description:
      ado_mixer_playback_group_create
        Description:
      ado_mixer_set_destroy_func
        Description:
      ado_mixer_set_name
        Description:
      ado_mixer_set_reset_func
        Description:
      ado_mixer_switch_new
        Description:
      ado_mixer_unlock
        Description:
      ado_mutex_destroy
        Description:
      ado_mutex_init
        Description:
      ado_mutex_lock
        Description:
      ado_mutex_unlock
        Description:
      ado_pci
        Description:
      ado_pci_device
        Description:
      ado_pci_release
        Description:
      ado_pcm_cap_t
        Description:
      ado_pcm_config_t
        Description:
      ado_pcm_chn_mixer
        Description:
      ado_pcm_create
        Description:
      ado_pcm_dma_int_size
        Description:
      ado_pcm_format_bit_width
        Description:
      ado_pcm_hw_t
        Description:
          aquire
          release
          prepare
          trigger
          position
          reconstitute
          capabilities
      ado_pcm_subchn_caps
        Description:
      ado_pcm_subchn_is_channel
        Description:
      ado_pcm_subchn_mixer
        Description:
      ado_pcm_subchn_mixer_create
        Description:
          ado_pcm_subchn_mixer_config_t structure
        Examples:
      ado_pcm_subchn_mixer_destroy
        Description:
      ado_pcm_sw_mix
        Description:
      ado_realloc
        Description:
      ado_rwlock_destroy
        Description:
      ado_rwlock_init
        Description:
      ado_rwlock_rdlock
        Description:
      ado_rwlock_unlock
        Description:
      ado_rwlock_wrlock
        Description:
      ado_shm_alloc
        Description:
      ado_shm_free
        Description:
      ado_shm_mmap
        Description:
      ado_strdup
        Description:
      dma_interrupt
        Description:
    Supported Codecs
      Audio Codec 97 (AC97)
        DLL Name
        Header File
        Parameter Structure
        Supported Device Controls
        References
      AK4531
        DLL Name
        Header File
        Parameter Structure
        Supported Device Controls
        Reference
    Sample Mixer Source
    Glossary
  Character Devices
    About the Character DDK
      What you'll find in this guide
      Assumptions
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Character I/O Architecture
      Overview
      DDK source code
    8250 Serial Driver
      Creating a serial driver
      Registers
      Source code
        Interrupts
        Functions
          create_device
          enable_device
          options
          query_default_device
          ser_intr
          ser_stty
          set_port
          sys_ttyinit
          tto
    Character I/O Library
      iochar_regdrv_power
        Description:
      iochar_send_event
        Description:
      kick
        Description:
      timer_queue
        Description:
      timer_remove
        Description:
      ttc
        Description:
      tti
        Description:
      tti2
        Description:
      tto_checkclients
        Description:
      tto_getchar
        Description:
      TTYCTRL
        Description:
      TTYDEV
        Description:
      TTYINIT
        Description:
      tx_inject
        Description:
      wait_add
        Description:
      wait_remove_rcvid
        Description:
  Graphics Devices
    About the Graphics DDK
      What you'll find in this guide
      Assumptions
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction to Graphics Drivers
      Graphics drivers
        GF-Based graphics system
        Photon-based graphics system
    Writing a Graphics Driver
      Overview
        Getting the source code
        Sample drivers
        The modules
        Modeswitching and enumeration
        2D drawing
        Graphics memory manager
          Layer control
          Viewports
      Binding your driver to the graphics framework
        Address spaces and calling rules
      Calling sequence
      Conventions
        Colors
        Coordinate system
          Order
          Inclusiveness
        Core vs. context 2D functions
        Context information
        Supplying draw functions and software fallback
        Clipping
        Patterns
        Pixel formats
          Byte order
        Pixel formats for layers
    Updating a Graphics Driver
      In this chapter...
      Overview
      API changes
    Debugging a Graphics Driver
      In this chapter...
      Overview
      The setup
      Compiling shared objects
        Shipping modified libs with your product
        Setting the LD_LIBRARY_PATH environment variable
        The display.conf file
      Making a debug version of a driver
      Running the debug driver and setting a breakpoint
    Graphics Driver API
      devg_get_contextfuncs
        Description:
      devg_get_corefuncs
        Description:
      devg_get_memfuncs
        Description:
      devg_get_miscfuncs
        Description:
      devg_get_modefuncs
        Description:
      devg_get_rendfuncs
        Description:
      devg_get_vcapfuncs
        Description:
      disp_2d_caps_t
        Description:
      disp_adapter_t
        Description:
          Callbacks
      DISP_ADD_FUNC
        Description:
        Examples:
      disp_crtc_settings_t
        Description:
      disp_draw_context_t
        Description:
          Chroma mode bits
          Alpha mode bits (alpha_mode)
          Alpha mode blending (source) operation
          Alpha mode blending (destination) operation
      disp_draw_contextfuncs_t
        Description:
          draw_span
          draw_span_list
          draw_rect
          blit
          update_general
          update_color
          update_rop3
          update_chroma
          update_alpha
          scaled_blit
          update_planemask
          draw_line
          fill_poly
          draw_polyline
          update_line
          blend_pixels
      disp_draw_corefuncs_t
        Description:
          wait_idle
          draw_span
          draw_span_list
          draw_solid_rect
          draw_line_pat8x1
          draw_line_trans8x1
          draw_rect_pat8x8
          draw_rect_trans8x8
          blit1
          blit2
          draw_bitmap
          update_draw_surface
          update_pattern
          scaled_blit
          draw_line
          fill_poly
          get_bresenham_params
          update_transform
          update_clipping
      disp_draw_miscfuncs_t
        Description:
          init
          fini
          module_info
          set_palette
          flushrect
          get_2d_caps
          get_corefuncs_sw
          get_contextfuncs_sw
          end_of_draw
          attach_external
          detach_external
          recover
          wait_idle
      disp_layer_query_t
        Description:
      disp_memfuncs_t
        Description:
          init
          fini
          module_info
          reset
          alloc_surface
          alloc_layer_surface
          free_surface
          mem_avail
          query_apertures
          query_surface
          get_alloc_info
          get_alloc_layer_info
      disp_mode_info_t
        Description:
      disp_modefuncs_t
        Description:
          init
          fini
          module_info
          get_modeinfo
          get_modelist
          set_mode
          wait_vsync
          set_dpms_mode
          set_display_offset
          set_palette
          layer_query
          layer_enable
          layer_disable
          layer_set_surface
          layer_set_source_viewport
          layer_set_dest_viewport
          layer_set_blending
          layer_set_chromakey
          layer_set_brightness
          layer_set_saturation
          layer_set_contrast
          layer_set_hue
          layer_set_alpha_map
          layer_set_flags
          layer_update_begin
          layer_update_end
          layer_reset
          layer_set_order
          set_hw_cursor
          enable_hw_cursor
          disable_hw_cursor
          set_hw_cursor_pos
          i2c_read
          i2c_write
          i2c_writeread
      disp_module_info_t
        Description:
      disp_surface_t
        Description:
          Relationship of stride, height, and width
          flags
      disp_vcap_props_t
        Description:
      disp_vcapfuncs_t
        Description:
          init
          fini
          module_info
          set_props
          set_adjustments
          bind_layer
          set_enabled
          wait_vsync
    Libraries
      DISPUTIL library --- utility functions
        Miscellaneous display driver functions
          disp_register_adapter
          disp_unregister_adapter
          disp_crtc_calc
          disp_mode_get_entry
          disp_acquire_vga_resources
          disp_release_vga_resources
          disp_perror
          disp_printf
          disp_usecspin
          disp_delay
          disp_get_rom_image
          disp_vga_save_state
          disp_vga_restore_state
          disp_vga_state_t
        PCI configuration access functions
          disp_pci_init
          disp_pci_shutdown
          disp_pci_read_config
          disp_pci_write_config
          disp_pci_dev_find
          disp_pci_dev_read_config
          disp_pci_dev_write_config
          disp_pci_info
        Memory manager functions
          disp_mmap_device_memory
          disp_mmap_device_io
          disp_munmap_device_memory
          disp_munmap_device_io
          disp_phys_addr
          disp_getmem
          disp_freemem
        Video memory management functions
          disp_vm_create_pool
          disp_vm_destroy_pool
          disp_vm_alloc_surface
          disp_vm_free_surface
          disp_vm_mem_avail
          disp_vm_alloc_surface_external
          disp_vm_free_surface_external
        Video BIOS services (x86 only)
          vbios_register
          vbios_unregister
          vbios_int
          vbios_call
          vbios_dowarmboot
          vbios_get_realptr
          vbios_context_t
      FFB library --- 2D software fallback routines
        ffb_get_corefuncs
        ffb_get_contextfuncs
        ffb_color_translate
    Glossary
  Input Devices
    About the Input DDK
      What you'll find in this guide
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview
      In this chapter...
      DDK source code
      Inside an input driver
        Types of event bus lines
      How modules are linked
      Interface to the system
      Source file organization for devi-*
    Writing an Input Device Driver
      In this chapter...
      Creating an input module
        input_module_t data type
          In the sample directory
      Data format
      Keyboard devices
      Absolute devices
        Calibration file format
      Relative devices
      Callbacks in your module
        Which callbacks are required?
        Callback sequence
      Writing a combination device/protocol module
      A note about reentrancy
    Testing and Debugging Your Driver
      Debugging a keyboard/mouse driver
        PS/2 mouse
        Keyboard filter module
    Module Functions
      devctrl
        Description:
      init
        Description:
        Examples:
      input
        Description:
        Examples:
      output
        Description:
        Examples:
      parm
        Description:
      pulse
        Description:
        Examples:
      reset
        Description:
        Examples:
      shutdown
        Description:
        Examples:
    Input API Reference
      begin
        Description:
      buff_append
        Description:
      buff_create
        Description:
      buff_delete
        Description:
      buff_flush
        Description:
      buff_getc
        Description:
      buff_putc
        Description:
      buff_waiting
        Description:
      clk_get
        Description:
      devi_enqueue_packet
        Description:
      devi_register_interrupt
        Description:
      devi_register_pulse
        Description:
      devi_register_timer
        Description:
      devi_request_iorange
        Description:
  Universal Serial Bus (USB) Devices
    About the USB DDK
      What you'll find in this guide
      Assumptions
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Before You Begin
      System requirements
        For QNX Neutrino
        For QNX_4
      USB devices supported
      Known limitations
        EHCI
        Photon and text mode
    Overview
      The USB stack and library
        Host Controller Interface (HCI) types
        Data buffers
        USB enumerator
      How a class driver works
    USB Utilities
    USB Library Reference
      Functions arranged by category
        Connection functions
        Memory-management functions
        I/O functions
        Pipe-management functions
        Configuration and interface functions
        Miscellaneous and convenience functions
      usbd_abort_pipe
        Description:
      usbd_alloc
        Description:
      usbd_alloc_urb
        Description:
      usbd_args_lookup
        Description:
      usbd_attach
        Description:
          Looping
      usbd_close_pipe
        Description:
      usbd_configuration_descriptor
        Description:
      usbd_connect
        Description:
          Data structures
        Examples:
      usbd_descriptor
        Description:
      usbd_detach
        Description:
      usbd_device_descriptor
        Description:
      usbd_device_extra
        Description:
      usbd_device_lookup
        Description:
      usbd_disconnect
        Description:
      usbd_endpoint_descriptor
        Description:
      usbd_feature
        Description:
      usbd_free
        Description:
      usbd_free_urb
        Description:
      usbd_get_frame
        Description:
      usbd_hcd_ext_info, usbd_hcd_info
        Description:
      usbd_hub_descriptor
        Description:
      usbd_interface_descriptor
        Description:
      usbd_io
        Description:
      usbd_languages_descriptor
        Description:
      usbd_mphys
        Description:
      usbd_open_pipe
        Description:
      usbd_parse_descriptors
        Description:
      usbd_pipe_device
        Description:
      usbd_pipe_endpoint
        Description:
      usbd_reset_device
        Description:
      usbd_reset_pipe
        Description:
      usbd_select_config
        Description:
      usbd_select_interface
        Description:
      usbd_setup_bulk
        Description:
      usbd_setup_control
        Description:
      usbd_setup_interrupt
        Description:
      usbd_setup_isochronous
        Description:
      usbd_setup_vendor
        Description:
      usbd_status
        Description:
      usbd_string
        Description:
      usbd_topology, usbd_topology_ext
        Description:
      usbd_urb_status
        Description:
          Completion status
  Audio Devices
    About the Audio DDK
      What you'll find in this guide
      Supported features
      Assumptions
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Evaluating Your Card
    Organization of a Driver
      The QNX audio system and driver
      DDK source code
      Writing an Audio HW DLL
        Opaque data types
        Custom data types
        ctrl_init
        ctrl_destroy
        Debugging an audio driver
    Handling Analog Audio Data
      Writing an analog mixer
        Mixer elements and routes
          Supported element types
        Mixer groups
          Designing mixer groups
        Coding the mixer
          Initialization
          Building the mixer
      Using a standard mixer DLL
        Initialization
        Testing the code
    Handling PCM Audio Data
      In this chapter...
      What's a PCM device?
      Creating a PCM device
        ado_pcm_create
        How does the PCM stream operate?
    API Reference
      ado_attach_interrupt
        Description:
      ado_calloc
        Description:
      ado_card_set_longname
        Description:
      ado_card_set_shortname
        Description:
      ado_debug
        Description:
      ado_device_mmap
        Description:
      ado_device_munmap
        Description:
      ado_error
        Description:
      ado_free
        Description:
      ado_malloc
        Description:
      ado_memory_dump
        Description:
      ado_mixer_capture_group_create
        Description:
      ado_mixer_create
        Description:
      ado_mixer_dll
        Description:
      ado_mixer_element_accu1
        Description:
      ado_mixer_element_accu2
        Description:
      ado_mixer_element_accu3
        Description:
      ado_mixer_element_io
        Description:
      ado_mixer_element_mux1
        Description:
      ado_mixer_element_mux2
        Description:
      ado_mixer_element_notify
        Description:
      ado_mixer_element_pcm1
        Description:
      ado_mixer_element_pcm2
        Description:
      ado_mixer_element_route_add
        Description:
      ado_mixer_element_sw1
        Description:
      ado_mixer_element_sw2
        Description:
      ado_mixer_element_sw3
        Description:
      ado_mixer_element_vol_range_max
        Description:
      ado_mixer_element_vol_range_min
        Description:
      ado_mixer_element_volume1
        Description:
      ado_mixer_find_element
        Description:
      ado_mixer_find_group
        Description:
      ado_mixer_get_context
        Description:
      ado_mixer_get_element_instance_data
        Description:
      ado_mixer_lock
        Description:
      ado_mixer_playback_group_create
        Description:
      ado_mixer_set_destroy_func
        Description:
      ado_mixer_set_name
        Description:
      ado_mixer_set_reset_func
        Description:
      ado_mixer_switch_new
        Description:
      ado_mixer_unlock
        Description:
      ado_mutex_destroy
        Description:
      ado_mutex_init
        Description:
      ado_mutex_lock
        Description:
      ado_mutex_unlock
        Description:
      ado_pci
        Description:
      ado_pci_device
        Description:
      ado_pci_release
        Description:
      ado_pcm_cap_t
        Description:
      ado_pcm_config_t
        Description:
      ado_pcm_chn_mixer
        Description:
      ado_pcm_create
        Description:
      ado_pcm_dma_int_size
        Description:
      ado_pcm_format_bit_width
        Description:
      ado_pcm_hw_t
        Description:
          aquire
          release
          prepare
          trigger
          position
          reconstitute
          capabilities
      ado_pcm_subchn_caps
        Description:
      ado_pcm_subchn_is_channel
        Description:
      ado_pcm_subchn_mixer
        Description:
      ado_pcm_subchn_mixer_create
        Description:
          ado_pcm_subchn_mixer_config_t structure
        Examples:
      ado_pcm_subchn_mixer_destroy
        Description:
      ado_pcm_sw_mix
        Description:
      ado_realloc
        Description:
      ado_rwlock_destroy
        Description:
      ado_rwlock_init
        Description:
      ado_rwlock_rdlock
        Description:
      ado_rwlock_unlock
        Description:
      ado_rwlock_wrlock
        Description:
      ado_shm_alloc
        Description:
      ado_shm_free
        Description:
      ado_shm_mmap
        Description:
      ado_strdup
        Description:
      dma_interrupt
        Description:
    Supported Codecs
      Audio Codec 97 (AC97)
        DLL Name
        Header File
        Parameter Structure
        Supported Device Controls
        References
      AK4531
        DLL Name
        Header File
        Parameter Structure
        Supported Device Controls
        Reference
    Sample Mixer Source
    Glossary
  Character Devices
    About the Character DDK
      What you'll find in this guide
      Assumptions
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Character I/O Architecture
      Overview
      DDK source code
    8250 Serial Driver
      Creating a serial driver
      Registers
      Source code
        Interrupts
        Functions
          create_device
          enable_device
          options
          query_default_device
          ser_intr
          ser_stty
          set_port
          sys_ttyinit
          tto
    Character I/O Library
      iochar_regdrv_power
        Description:
      iochar_send_event
        Description:
      kick
        Description:
      timer_queue
        Description:
      timer_remove
        Description:
      ttc
        Description:
      tti
        Description:
      tti2
        Description:
      tto_checkclients
        Description:
      tto_getchar
        Description:
      TTYCTRL
        Description:
      TTYDEV
        Description:
      TTYINIT
        Description:
      tx_inject
        Description:
      wait_add
        Description:
      wait_remove_rcvid
        Description:
  Graphics Devices
    About the Graphics DDK
      What you'll find in this guide
      Assumptions
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction to Graphics Drivers
      Graphics drivers
        GF-Based graphics system
        Photon-based graphics system
    Writing a Graphics Driver
      Overview
        Getting the source code
        Sample drivers
        The modules
        Modeswitching and enumeration
        2D drawing
        Graphics memory manager
          Layer control
          Viewports
      Binding your driver to the graphics framework
        Address spaces and calling rules
      Calling sequence
      Conventions
        Colors
        Coordinate system
          Order
          Inclusiveness
        Core vs. context 2D functions
        Context information
        Supplying draw functions and software fallback
        Clipping
        Patterns
        Pixel formats
          Byte order
        Pixel formats for layers
    Updating a Graphics Driver
      In this chapter...
      Overview
      API changes
    Debugging a Graphics Driver
      In this chapter...
      Overview
      The setup
      Compiling shared objects
        Shipping modified libs with your product
        Setting the LD_LIBRARY_PATH environment variable
        The display.conf file
      Making a debug version of a driver
      Running the debug driver and setting a breakpoint
    Graphics Driver API
      devg_get_contextfuncs
        Description:
      devg_get_corefuncs
        Description:
      devg_get_memfuncs
        Description:
      devg_get_miscfuncs
        Description:
      devg_get_modefuncs
        Description:
      devg_get_rendfuncs
        Description:
      devg_get_vcapfuncs
        Description:
      disp_2d_caps_t
        Description:
      disp_adapter_t
        Description:
          Callbacks
      DISP_ADD_FUNC
        Description:
        Examples:
      disp_crtc_settings_t
        Description:
      disp_draw_context_t
        Description:
          Chroma mode bits
          Alpha mode bits (alpha_mode)
          Alpha mode blending (source) operation
          Alpha mode blending (destination) operation
      disp_draw_contextfuncs_t
        Description:
          draw_span
          draw_span_list
          draw_rect
          blit
          update_general
          update_color
          update_rop3
          update_chroma
          update_alpha
          scaled_blit
          update_planemask
          draw_line
          fill_poly
          draw_polyline
          update_line
          blend_pixels
      disp_draw_corefuncs_t
        Description:
          wait_idle
          draw_span
          draw_span_list
          draw_solid_rect
          draw_line_pat8x1
          draw_line_trans8x1
          draw_rect_pat8x8
          draw_rect_trans8x8
          blit1
          blit2
          draw_bitmap
          update_draw_surface
          update_pattern
          scaled_blit
          draw_line
          fill_poly
          get_bresenham_params
          update_transform
          update_clipping
      disp_draw_miscfuncs_t
        Description:
          init
          fini
          module_info
          set_palette
          flushrect
          get_2d_caps
          get_corefuncs_sw
          get_contextfuncs_sw
          end_of_draw
          attach_external
          detach_external
          recover
          wait_idle
      disp_layer_query_t
        Description:
      disp_memfuncs_t
        Description:
          init
          fini
          module_info
          reset
          alloc_surface
          alloc_layer_surface
          free_surface
          mem_avail
          query_apertures
          query_surface
          get_alloc_info
          get_alloc_layer_info
      disp_mode_info_t
        Description:
      disp_modefuncs_t
        Description:
          init
          fini
          module_info
          get_modeinfo
          get_modelist
          set_mode
          wait_vsync
          set_dpms_mode
          set_display_offset
          set_palette
          layer_query
          layer_enable
          layer_disable
          layer_set_surface
          layer_set_source_viewport
          layer_set_dest_viewport
          layer_set_blending
          layer_set_chromakey
          layer_set_brightness
          layer_set_saturation
          layer_set_contrast
          layer_set_hue
          layer_set_alpha_map
          layer_set_flags
          layer_update_begin
          layer_update_end
          layer_reset
          layer_set_order
          set_hw_cursor
          enable_hw_cursor
          disable_hw_cursor
          set_hw_cursor_pos
          i2c_read
          i2c_write
          i2c_writeread
      disp_module_info_t
        Description:
      disp_surface_t
        Description:
          Relationship of stride, height, and width
          flags
      disp_vcap_props_t
        Description:
      disp_vcapfuncs_t
        Description:
          init
          fini
          module_info
          set_props
          set_adjustments
          bind_layer
          set_enabled
          wait_vsync
    Libraries
      DISPUTIL library --- utility functions
        Miscellaneous display driver functions
          disp_register_adapter
          disp_unregister_adapter
          disp_crtc_calc
          disp_mode_get_entry
          disp_acquire_vga_resources
          disp_release_vga_resources
          disp_perror
          disp_printf
          disp_usecspin
          disp_delay
          disp_get_rom_image
          disp_vga_save_state
          disp_vga_restore_state
          disp_vga_state_t
        PCI configuration access functions
          disp_pci_init
          disp_pci_shutdown
          disp_pci_read_config
          disp_pci_write_config
          disp_pci_dev_find
          disp_pci_dev_read_config
          disp_pci_dev_write_config
          disp_pci_info
        Memory manager functions
          disp_mmap_device_memory
          disp_mmap_device_io
          disp_munmap_device_memory
          disp_munmap_device_io
          disp_phys_addr
          disp_getmem
          disp_freemem
        Video memory management functions
          disp_vm_create_pool
          disp_vm_destroy_pool
          disp_vm_alloc_surface
          disp_vm_free_surface
          disp_vm_mem_avail
          disp_vm_alloc_surface_external
          disp_vm_free_surface_external
        Video BIOS services (x86 only)
          vbios_register
          vbios_unregister
          vbios_int
          vbios_call
          vbios_dowarmboot
          vbios_get_realptr
          vbios_context_t
      FFB library --- 2D software fallback routines
        ffb_get_corefuncs
        ffb_get_contextfuncs
        ffb_color_translate
    Glossary
  Input Devices
    About the Input DDK
      What you'll find in this guide
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview
      In this chapter...
      DDK source code
      Inside an input driver
        Types of event bus lines
      How modules are linked
      Interface to the system
      Source file organization for devi-*
    Writing an Input Device Driver
      In this chapter...
      Creating an input module
        input_module_t data type
          In the sample directory
      Data format
      Keyboard devices
      Absolute devices
        Calibration file format
      Relative devices
      Callbacks in your module
        Which callbacks are required?
        Callback sequence
      Writing a combination device/protocol module
      A note about reentrancy
    Testing and Debugging Your Driver
      Debugging a keyboard/mouse driver
        PS/2 mouse
        Keyboard filter module
    Module Functions
      devctrl
        Description:
      init
        Description:
        Examples:
      input
        Description:
        Examples:
      output
        Description:
        Examples:
      parm
        Description:
      pulse
        Description:
        Examples:
      reset
        Description:
        Examples:
      shutdown
        Description:
        Examples:
    Input API Reference
      begin
        Description:
      buff_append
        Description:
      buff_create
        Description:
      buff_delete
        Description:
      buff_flush
        Description:
      buff_getc
        Description:
      buff_putc
        Description:
      buff_waiting
        Description:
      clk_get
        Description:
      devi_enqueue_packet
        Description:
      devi_register_interrupt
        Description:
      devi_register_pulse
        Description:
      devi_register_timer
        Description:
      devi_request_iorange
        Description:
  Universal Serial Bus (USB) Devices
    About the USB DDK
      What you'll find in this guide
      Assumptions
      Building DDKs
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Before You Begin
      System requirements
        For QNX Neutrino
        For QNX_4
      USB devices supported
      Known limitations
        EHCI
        Photon and text mode
    Overview
      The USB stack and library
        Host Controller Interface (HCI) types
        Data buffers
        USB enumerator
      How a class driver works
    USB Utilities
    USB Library Reference
      Functions arranged by category
        Connection functions
        Memory-management functions
        I/O functions
        Pipe-management functions
        Configuration and interface functions
        Miscellaneous and convenience functions
      usbd_abort_pipe
        Description:
      usbd_alloc
        Description:
      usbd_alloc_urb
        Description:
      usbd_args_lookup
        Description:
      usbd_attach
        Description:
          Looping
      usbd_close_pipe
        Description:
      usbd_configuration_descriptor
        Description:
      usbd_connect
        Description:
          Data structures
        Examples:
      usbd_descriptor
        Description:
      usbd_detach
        Description:
      usbd_device_descriptor
        Description:
      usbd_device_extra
        Description:
      usbd_device_lookup
        Description:
      usbd_disconnect
        Description:
      usbd_endpoint_descriptor
        Description:
      usbd_feature
        Description:
      usbd_free
        Description:
      usbd_free_urb
        Description:
      usbd_get_frame
        Description:
      usbd_hcd_ext_info, usbd_hcd_info
        Description:
      usbd_hub_descriptor
        Description:
      usbd_interface_descriptor
        Description:
      usbd_io
        Description:
      usbd_languages_descriptor
        Description:
      usbd_mphys
        Description:
      usbd_open_pipe
        Description:
      usbd_parse_descriptors
        Description:
      usbd_pipe_device
        Description:
      usbd_pipe_endpoint
        Description:
      usbd_reset_device
        Description:
      usbd_reset_pipe
        Description:
      usbd_select_config
        Description:
      usbd_select_interface
        Description:
      usbd_setup_bulk
        Description:
      usbd_setup_control
        Description:
      usbd_setup_interrupt
        Description:
      usbd_setup_isochronous
        Description:
      usbd_setup_vendor
        Description:
      usbd_status
        Description:
      usbd_string
        Description:
      usbd_topology, usbd_topology_ext
        Description:
      usbd_urb_status
        Description:
          Completion status
QNX Neutrino High Availability Framework
  Developer's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction
      In this chapter...
      Where's the problem?
      A software foundation for HA
    What's in the High Availability Framework?
      In this chapter...
      What you get
    The QNX Approach to HA
      In this chapter...
      The reset solution
        Traditional RTOS architecture
      Modularity means granularity
        Intrinsic HA
    Using the High Availability Manager
      In this chapter...
      Introduction
      HAM hierarchy
        Entities
        Conditions
        Actions
        Action Fail actions
        Multistaged recovery
      State of the HAM
        Example of the view shown in /proc/ham
      HAM API
        Connect/disconnect functions
        Attach/detach functions
          For self-attached entities
          Code snippet using self-attach/detach calls
          For attaching/detaching all other entities
          Code snippet using attach/detach calls
        Entity functions
        Condition functions
          Condition types
          Condition flags
        Action functions
        Action fail functions
          Example to monitor inetd
          Example to monitor fs-nfs2
        Functions to operate on handles
      A client example
      Starting and stopping a HAM
        Stopping a HAM
        Control functions
        Verbosity control
        Publishing autonomously detected conditions
        Publish state transitions
        Publish other conditions
        Subscribing to autonomously published conditions
        Trigger based on state transitions
        Trigger based on specific published condition
    Using the Client Recovery Library
      In this chapter...
      Introduction
      MsgSend* functions
      Other covers and convenience functions
        HA-awareness functions
        I/O covers
        Convenience functions
      A simple example
      State-reconstruction example
    HAM API Reference
      ham_action_control
        Description:
          Flags
      ham_action_execute
        Description:
      ham_action_fail_execute
        Description:
      ham_action_fail_log
        Description:
      ham_action_fail_notify_pulse, ham_action_fail_notify_pulse_node
        Description:
      ham_action_fail_notify_signal, ham_action_fail_notify_signal_node
        Description:
      ham_action_fail_waitfor
        Description:
      ham_action_handle, ham_action_handle_node
        Description:
      ham_action_handle_free
        Description:
      ham_action_heartbeat_healthy
        Description:
      ham_action_log
        Description:
      ham_action_notify_pulse, ham_action_notify_pulse_node
        Description:
      ham_action_notify_signal, ham_action_notify_signal_node
        Description:
      ham_action_remove
        Description:
      ham_action_restart
        Description:
      ham_action_waitfor
        Description:
      ham_attach, ham_attach_node
        Description:
      ham_attach_self
        Description:
      ham_condition
        Description:
      ham_entity_control
        Description:
          Flags
      ham_condition_handle, ham_condition_handle_node
        Description:
      ham_condition_handle_free
        Description:
      ham_condition_raise
        Description:
      ham_condition_remove
        Description:
      ham_condition_state
        Description:
          Flags
      ham_connect, ham_connect_nd, ham_connect_node
        Description:
      ham_detach
        Description:
      ham_detach_name, ham_detach_name_node
        Description:
      ham_detach_self
        Description:
      ham_disconnect, ham_disconnect_nd, ham_disconnect_node
        Description:
      ham_entity, ham_entity_node
        Description:
      ham_entity_condition_raise
        Description:
      ham_entity_condition_state
        Description:
      ham_entity_control
        Description:
          Flags
      ham_entity_handle, ham_entity_handle_node
        Description:
      ham_entity_handle_free
        Description:
      ham_heartbeat
        Description:
      ham_stop, ham_stop_nd, ham_stop_node
        Description:
      ham__verbose
        Description:
    Client Recovery Library Reference
      ha_attach
        Description:
      ha_close
        Description:
      ha_connection_ctrl
        Description:
      ha_ConnectAttach, ha_ConnectAttach_r
        Description:
      ha_ConnectDetach, ha_ConnectDetach_r
        Description:
      ha_creat, ha_creat64
        Description:
      ha_detach
        Description:
      ha_dup
        Description:
      ha_fclose
        Description:
      ha_fopen
        Description:
      ha_open, ha_open64
        Description:
      ha_ReConnectAttach
        Description:
      ha_reopen
        Description:
    Examples
      In this appendix...
      Simple restart
      Compound restart
      Death/condition notification
      Heartbeating clients (liveness detection)
        The process is made to heartbeat
      Process starvation
        Thread 2 is made to heartbeat
    Glossary
  Developer's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Introduction
      In this chapter...
      Where's the problem?
      A software foundation for HA
    What's in the High Availability Framework?
      In this chapter...
      What you get
    The QNX Approach to HA
      In this chapter...
      The reset solution
        Traditional RTOS architecture
      Modularity means granularity
        Intrinsic HA
    Using the High Availability Manager
      In this chapter...
      Introduction
      HAM hierarchy
        Entities
        Conditions
        Actions
        Action Fail actions
        Multistaged recovery
      State of the HAM
        Example of the view shown in /proc/ham
      HAM API
        Connect/disconnect functions
        Attach/detach functions
          For self-attached entities
          Code snippet using self-attach/detach calls
          For attaching/detaching all other entities
          Code snippet using attach/detach calls
        Entity functions
        Condition functions
          Condition types
          Condition flags
        Action functions
        Action fail functions
          Example to monitor inetd
          Example to monitor fs-nfs2
        Functions to operate on handles
      A client example
      Starting and stopping a HAM
        Stopping a HAM
        Control functions
        Verbosity control
        Publishing autonomously detected conditions
        Publish state transitions
        Publish other conditions
        Subscribing to autonomously published conditions
        Trigger based on state transitions
        Trigger based on specific published condition
    Using the Client Recovery Library
      In this chapter...
      Introduction
      MsgSend* functions
      Other covers and convenience functions
        HA-awareness functions
        I/O covers
        Convenience functions
      A simple example
      State-reconstruction example
    HAM API Reference
      ham_action_control
        Description:
          Flags
      ham_action_execute
        Description:
      ham_action_fail_execute
        Description:
      ham_action_fail_log
        Description:
      ham_action_fail_notify_pulse, ham_action_fail_notify_pulse_node
        Description:
      ham_action_fail_notify_signal, ham_action_fail_notify_signal_node
        Description:
      ham_action_fail_waitfor
        Description:
      ham_action_handle, ham_action_handle_node
        Description:
      ham_action_handle_free
        Description:
      ham_action_heartbeat_healthy
        Description:
      ham_action_log
        Description:
      ham_action_notify_pulse, ham_action_notify_pulse_node
        Description:
      ham_action_notify_signal, ham_action_notify_signal_node
        Description:
      ham_action_remove
        Description:
      ham_action_restart
        Description:
      ham_action_waitfor
        Description:
      ham_attach, ham_attach_node
        Description:
      ham_attach_self
        Description:
      ham_condition
        Description:
      ham_entity_control
        Description:
          Flags
      ham_condition_handle, ham_condition_handle_node
        Description:
      ham_condition_handle_free
        Description:
      ham_condition_raise
        Description:
      ham_condition_remove
        Description:
      ham_condition_state
        Description:
          Flags
      ham_connect, ham_connect_nd, ham_connect_node
        Description:
      ham_detach
        Description:
      ham_detach_name, ham_detach_name_node
        Description:
      ham_detach_self
        Description:
      ham_disconnect, ham_disconnect_nd, ham_disconnect_node
        Description:
      ham_entity, ham_entity_node
        Description:
      ham_entity_condition_raise
        Description:
      ham_entity_condition_state
        Description:
      ham_entity_control
        Description:
          Flags
      ham_entity_handle, ham_entity_handle_node
        Description:
      ham_entity_handle_free
        Description:
      ham_heartbeat
        Description:
      ham_stop, ham_stop_nd, ham_stop_node
        Description:
      ham__verbose
        Description:
    Client Recovery Library Reference
      ha_attach
        Description:
      ha_close
        Description:
      ha_connection_ctrl
        Description:
      ha_ConnectAttach, ha_ConnectAttach_r
        Description:
      ha_ConnectDetach, ha_ConnectDetach_r
        Description:
      ha_creat, ha_creat64
        Description:
      ha_detach
        Description:
      ha_dup
        Description:
      ha_fclose
        Description:
      ha_fopen
        Description:
      ha_open, ha_open64
        Description:
      ha_ReConnectAttach
        Description:
      ha_reopen
        Description:
    Examples
      In this appendix...
      Simple restart
      Compound restart
      Death/condition notification
      Heartbeating clients (liveness detection)
        The process is made to heartbeat
      Process starvation
        Thread 2 is made to heartbeat
    Glossary
QNX Neutrino Instant Device Activation
  User's Guide
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Using Minidrivers for Instant Device Activation
      The minidriver basics
      The minidriver architecture
      How does the minidriver work?
        Seamless transition
        Running multiple handler functions
      Writing a minidriver
        Hardware platform
        Timing requirements
        Data storage
        Hardware initialization
        Hardware Access
        Transition to full driver
      Sample minidriver
        Implementation notes
        The minidriver handler function
        Adding your minidriver to the system
        Build startup
        Test application: mini-peeker.c
        Transition from minidriver to full driver
      Minidriver implementation notes
        Customizing the startup program that contains your minidriver code
        Making a boot image that includes your minidriver
        Debugging from within the minidriver
        Displaying information about minidriver status (after the kernel boots)
        Making the transition to the real driver
    APIs and Datatypes
      mdriver_add
        Description:
          mdriver_handler
      mdriver_max
        Description:
      mdriver_entry
        Description:
    Sample Drivers for Instant Device Activation
      FreeScale Media5200b sample minidriver
        The minidriver handler function
        Adding your minidriver to the system
        Build startup
        Testing your minidriver
        Sample timings
      Renesas Biscayne minidriver
        The minidriver handler function
        Adding your minidriver to the system
        Build startup
        Testing your minidriver
        Sample Timings
      OMAP minidriver
        Adding your minidriver to the system
        Build startup
        Testing your minidriver
        Sample timings
    Hardware Interaction within the Minidriver
  User's Guide
    About This Guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Using Minidrivers for Instant Device Activation
      The minidriver basics
      The minidriver architecture
      How does the minidriver work?
        Seamless transition
        Running multiple handler functions
      Writing a minidriver
        Hardware platform
        Timing requirements
        Data storage
        Hardware initialization
        Hardware Access
        Transition to full driver
      Sample minidriver
        Implementation notes
        The minidriver handler function
        Adding your minidriver to the system
        Build startup
        Test application: mini-peeker.c
        Transition from minidriver to full driver
      Minidriver implementation notes
        Customizing the startup program that contains your minidriver code
        Making a boot image that includes your minidriver
        Debugging from within the minidriver
        Displaying information about minidriver status (after the kernel boots)
        Making the transition to the real driver
    APIs and Datatypes
      mdriver_add
        Description:
          mdriver_handler
      mdriver_max
        Description:
      mdriver_entry
        Description:
    Sample Drivers for Instant Device Activation
      FreeScale Media5200b sample minidriver
        The minidriver handler function
        Adding your minidriver to the system
        Build startup
        Testing your minidriver
        Sample timings
      Renesas Biscayne minidriver
        The minidriver handler function
        Adding your minidriver to the system
        Build startup
        Testing your minidriver
        Sample Timings
      OMAP minidriver
        Adding your minidriver to the system
        Build startup
        Testing your minidriver
        Sample timings
    Hardware Interaction within the Minidriver
QNX Neutrino Multicore Processing
  User's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    What is Multicore Processing?
    A Quick Introduction to Multicore Processing
      Setting up the OS image
      Trying symmetric multiprocessing
      Trying bound multiprocessing
    Developing Multicore Systems
      Building a multicore image
      The impact of multicore
        To multicore or not to multicore
        Thread affinity
        Multicore and synchronization primitives
        Multicore and FIFO scheduling
        Multicore and interrupts
        Multicore and atomic operations
        Adaptive partitioning
      Designing with multiprocessing in mind
        Use the multicore primitives
        Assume that threads really do run concurrently
        Break the problem down
    Glossary
  User's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    What is Multicore Processing?
    A Quick Introduction to Multicore Processing
      Setting up the OS image
      Trying symmetric multiprocessing
      Trying bound multiprocessing
    Developing Multicore Systems
      Building a multicore image
      The impact of multicore
        To multicore or not to multicore
        Thread affinity
        Multicore and synchronization primitives
        Multicore and FIFO scheduling
        Multicore and interrupts
        Multicore and atomic operations
        Adaptive partitioning
      Designing with multiprocessing in mind
        Use the multicore primitives
        Assume that threads really do run concurrently
        Break the problem down
    Glossary
QNX Neutrino Realtime Operating System
  Addon Interfaces Library Reference
    About This Reference
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview
      An Example
      Library components
    Addon Interfaces Library Reference
      AOI Structures
      AOI Functions
      AOICtrl_t
        Description:
      AOInterface_t
        Description:
      AoAdd
        Description:
      AoAddDirectory
        Description:
      AoAddStatic
        Description:
      AoAddUnloadSignal
        Description:
      AoGetInterface
        Description:
      AoHold
        Description:
      AoIterate
        Description:
      AoIterateHoldGet
        Description:
      AoRelease
        Description:
      AoRemove
        Description:
      AoFindExt
        Description:
      AoFindFormats
        Description:
      AoFindMime
        Description:
      AoFindName
        Description:
        Examples:
      AoFindStreams
        Description:
      AoOpenFilespec
        Description:
    Implemented Interfaces
      Built-in Interfaces
      AODeConstructor
        Create
          Synopsis
          Arguments
          Description
          Returns
        Destroy
          Synopsis
          Arguments
          Description
          Returns
      AOExtInspector
        RateExtension
          Synopsis
          Arguments
          Description
          Returns
      AOFormatInspector
        RateFormat
          Synopsis
          Arguments
          Description
          Returns
      AOMimetypeInspector
        RateMimetype
          Synopsis
          Arguments
          Description
          Returns
      AOStreamer
        Open
          Synopsis
          Arguments
          Description
          Returns
        Close
          Synopsis
          Arguments
          Description
          Returns
        Sniff
          Synopsis
          Arguments
          Description
          Returns
        Read
          Synopsis
          Arguments
          Description
          Returns
        Write
          Synopsis
          Arguments
          Description
          Returns
        Seek
          Synopsis
          Arguments
          Description
          Returns
        Tell
          Synopsis
          Arguments
          Description
          Returns
        Length
          Synopsis
          Arguments
          Description
          Returns
        SideInfo
          Synopsis
          Arguments
          Description
          Returns
      AOStreamInspector
        RateStream
          Synopsis
          Arguments
          Description
          Returns
      AOResourceAccess
        GetResources
          Synopsis
          Arguments
          Description
          Returns
        SetResource
          Synopsis
          Arguments
          Description
          Returns
      Built-in interfaces
        Unloading and InitializeInterface
        Name
    Using Addon Resources
      An Example
      Using addon resources in your application
    Defined Structures
      AOIStream_t
        Description:
      AOMimeInfo_t
        Description:
      AOResource_t
        Description:
      AOAudioFormat_t
        Description:
      ImageFormat_t
        Description:
      MediaFormat_t
        Description:
      VideoFormat_t
        Description:
  Audio Developer's Guide
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
      What's new in QNX Neutrino 6.5.0
      What's new in QNX Neutrino 6.4
      What's new in QNX Neutrino 6.3
      What's new in QNX Neutrino 6.2
      What's new in QNX Neutrino 6.1
        Changed content
    Audio Architecture
      QNX Sound Architecture
      Cards and devices
      Control device
      Mixer devices
      Pulse Code Modulation (PCM) devices
        Data formats
        PCM state machine
        Software PCM mixing
        PCM plugin converters
    Playing and Capturing Audio Data
      Handling PCM devices
        Opening your PCM device
        Configuring the PCM device
        Controlling voice conversion
        Preparing the PCM subchannel
        Closing the PCM subchannel
      Playing audio data
        Playback states
        Sending data to the PCM subchannel
        If the PCM subchannel stops during playback
        Stopping the playback
        Synchronizing with the PCM subchannel
      Capturing audio data
        Selecting what to capture
        Capture states
        Receiving data from the PCM subchannel
        If the PCM subchannel stops during capture
        Stopping the capture
        Synchronizing with the PCM subchannel
    Mixer Architecture
      Opening the mixer device
      Controlling a mixer group
      The best mixer group with respect to your PCM subchannel
      Finding all mixer groups
      Mixer event notification
      Closing the mixer device
    Audio Library
      snd_card_get_longname
        Description:
      snd_card_get_name
        Description:
      snd_card_name
        Description:
      snd_cards
        Description:
      snd_cards_list
        Description:
      snd_ctl_callbacks_t
        Description:
          rebuild callback
          xswitch callback
      snd_ctl_close
        Description:
      snd_ctl_file_descriptor
        Description:
      snd_ctl_hw_info
        Description:
      snd_ctl_hw_info_t
        Description:
      snd_ctl_mixer_switch_list
        Description:
      snd_ctl_mixer_switch_read
        Description:
      snd_ctl_mixer_switch_write
        Description:
      snd_ctl_open
        Description:
      snd_ctl_pcm_channel_info
        Description:
      snd_ctl_pcm_info
        Description:
      snd_ctl_read
        Description:
      snd_mixer_callbacks_t
        Description:
          rebuild callback
          element callback
          group callback
        Examples:
      snd_mixer_close
        Description:
      snd_mixer_eid_t
        Description:
      snd_mixer_element_read
        Description:
      snd_mixer_element_t
        Description:
      snd_mixer_element_write
        Description:
      snd_mixer_elements
        Description:
      snd_mixer_elements_t
        Description:
      snd_mixer_file_descriptor
        Description:
      snd_mixer_filter_t
        Description:
      snd_mixer_get_bit
        Description:
      snd_mixer_get_filter
        Description:
      snd_mixer_gid_t
        Description:
      snd_mixer_group_read
        Description:
      snd_mixer_group_t
        Description:
      snd_mixer_group_write
        Description:
      snd_mixer_groups
        Description:
      snd_mixer_groups_t
        Description:
      snd_mixer_info
        Description:
      snd_mixer_info_t
        Description:
      snd_mixer_open
        Description:
      snd_mixer_open_name
        Description:
      snd_mixer_read
        Description:
      snd_mixer_routes
        Description:
      snd_mixer_routes_t
        Description:
      snd_mixer_set_bit
        Description:
      snd_mixer_set_filter
        Description:
      snd_mixer_sort_eid_table
        Description:
      snd_mixer_sort_gid_table
        Description:
      snd_mixer_weight_entry_t
        Description:
      snd_pcm_build_linear_format
        Description:
      snd_pcm_capture_flush
        Description:
      snd_pcm_capture_prepare
        Description:
      snd_pcm_channel_flush
        Description:
      snd_pcm_channel_info
        Description:
      snd_pcm_channel_info_t
        Description:
      snd_pcm_channel_params
        Description:
      snd_pcm_channel_params_t
        Description:
      snd_pcm_channel_prepare
        Description:
      snd_pcm_channel_setup
        Description:
      snd_pcm_channel_setup_t
        Description:
      snd_pcm_channel_status
        Description:
      snd_pcm_channel_status_t
        Description:
      snd_pcm_close
        Description:
      snd_pcm_file_descriptor
        Description:
      snd_pcm_find
        Description:
      snd_pcm_format_big_endian
        Description:
      snd_pcm_format_linear
        Description:
      snd_pcm_format_little_endian
        Description:
      snd_pcm_format_signed
        Description:
      snd_pcm_format_size
        Description:
      snd_pcm_format_t
        Description:
      snd_pcm_format_unsigned
        Description:
      snd_pcm_format_width
        Description:
      snd_pcm_get_format_name
        Description:
      snd_pcm_info
        Description:
      snd_pcm_info_t
        Description:
      snd_pcm_nonblock_mode
        Description:
      snd_pcm_open
        Description:
        Examples:
      snd_pcm_open_name
        Description:
        Examples:
      snd_pcm_open_preferred
        Description:
        Examples:
      snd_pcm_playback_drain
        Description:
      snd_pcm_playback_flush
        Description:
      snd_pcm_playback_prepare
        Description:
      snd_pcm_plugin_flush
        Description:
        Examples:
      snd_pcm_plugin_get_voice_conversion
        Description:
      snd_pcm_plugin_info
        Description:
        Examples:
      snd_pcm_plugin_params
        Description:
        Examples:
      snd_pcm_plugin_playback_drain
        Description:
      snd_pcm_plugin_prepare
        Description:
        Examples:
      snd_pcm_plugin_read
        Description:
      snd_pcm_plugin_set_disable
        Description:
        Examples:
      snd_pcm_plugin_set_src_mode
        Description:
      snd_pcm_plugin_set_voice_conversion
        Description:
      snd_pcm_plugin_setup
        Description:
        Examples:
      snd_pcm_plugin_set_src_mode
        Description:
      snd_pcm_plugin_status
        Description:
        Examples:
      snd_pcm_plugin_set_src_mode
        Description:
      snd_pcm_plugin_write
        Description:
        Examples:
      snd_pcm_read
        Description:
      snd_pcm_voice_conversion_t
        Description:
      snd_pcm_write
        Description:
      snd_strerror
        Description:
        Examples:
      snd_switch_t
        Description:
    wave.c example
    waverec.c example
    mixer_ctl.c example
    LGPL License Agreement
    Glossary
  Building Embedded Systems
    About This Book
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Overview of Building Embedded Systems
      Introduction
        The role of the IPL
          Warm-start and cold-start IPL
        The role of the startup program
        Startup's responsibilities
          Copying and decompressing the image
          Configuring the hardware
          Determining system configuration
          Establishing callouts
          Starting the OS
          The startup library
        The role of Neutrino
      Hardware aspects
        Choice of processor
        Source of initialization and configuration
        Choice of filesystems
          No additional storage required
          Additional read-only storage required
          Additional read/write nonpersistent storage required
          Additional read/write persistent storage required
            Flash filesystems and media
            Rotating media and filesystems
            Network media and filesystems
        I/O devices
          Character I/O devices
          Special/custom devices
      Getting started
        Hardware design
        Customizing the software
          Customizing the source
    Working with a BSP
      In this chapter...
      BSP Overview
      Using BSPs in the IDE
      Using BSPs on the command line
        Structure of a BSP
          prebuilt subdirectory
          install subdirectory
          src subdirectory
        Building source from the command line
        Supporting additional devices
      Transferring an OS image onto your board
        Transferring an OS image
        Working with a flash filesystem
          Raw partitions
          Flash filesystem partitions
          Flash filesystem source
          How do I create a partition?
      Testing Neutrino on your board
      Getting Photon on your board
      Where do I go from here?
      Filename conventions
    Making an OS Image
      Images, images, images
      What is an OS image?
      The OS image as a filesystem
      Configuring an OS image
        A simple buildfile
          Inline files
        The bootstrap file
          Compressing the image
        The script file
          Bound multiprocessing attributes
          The script file on the target
        Plain ordinary lists of files
          Including files from different places
          Modifying the search path
          Specifying the pathname explicitly
          Creating the contents of the file in line
          Specifying file ownership and permissions
          Including a whole whack of files
        Generating the image
        Listing the contents of an image
      Building a flash filesystem image
        Using mkefs
          mkefs buildfile
          Block size
          Spare blocks
        Compressing files
          Abstraction layer
          Two sizes
        Compression rules
          The exception
      Embedding an image
        Combining image files using mkimage
          Combining image files using the IDE
        Converting images using mkrec
        Transferring an image to flash
      System configuration
        Establishing an output device
          A simple desktop example
        Running drivers/filesystems
          Disk drivers
          Flash filesystems
          Network drivers
          Network filesystems
        Running applications
      Debugging an embedded system
        pdebug software debugging agent
        Hardware debuggers and Neutrino
        Producing debug symbol information for IPL and startup
          Generating IPL debug symbols
          Generating startup debug symbols
    Writing an IPL Program
      Initial program loader (IPL)
        Responsibilities of the IPL
          Linearly mapped images
          Bank-switched images
          Processors & configurations
        Booting from a bank-switched device
        Booting from a linear device
        Warm vs cold start
          Warm-start IPL
          Cold-start IPL
        Loading the image
          If the source is a linearly mapped device
          If the source is a bank-switched device
          ROM devices
          Network boot
          Using a BOOTP server
          Serial port
          Traditional disk
          None of the above?
        Transferring control to the startup program
      Customizing IPLs
        Initialize hardware
        Loading the image into RAM
        Structure of the boot header
          signature
          version
          flags1 and flags2
          header_size
          machine
          startup_vaddr
          paddr_bias
          image_paddr
          ram_paddr
          ram_size
          startup_size
          stored_size
          imagefs_paddr
          imagefs_size
          preboot_size
          zero and zero0
          info
          struct startup_info_skip
          struct startup_info_mem and startup_info_mem_extended
          struct startup_info_disk
          struct startup_info_time
          struct startup_info_box
        Relationship of struct startup_header fields
          Linear ROM execute-in-place boot image
          Linear ROM compressed boot image
          ROM non-XIP image
          Disk/network image (x86 BIOS)
          Disk/network compressed image
        IPL structure
          IPL source directory structure
          IPL code structure
          An example
        Creating a new IPL
      The IPL library
        enable_cache
        image_download_8250
        image_scan
        image_scan_ext
        image_setup
        image_setup_ext
        image_start
        image_start_ext
        int15_copy
        print_byte
        print_char
        print_long
        print_sl
        print_string
        print_var
        print_word
        protected_mode
        uart_hex8
        uart_hex16
        uart_hex32
        uart_init
        uart_put
        uart_string
        uart32_hex8
        uart32_hex16
        uart32_hex32
        uart32_init
        uart32_put
        uart32_string
    Customizing Image Startup Programs
      In this chapter...
      Introduction
        Initialize hardware
        Initialize system page
        Initialize callouts
      Anatomy of a startup program
        Structure of a startup program
        Creating a new startup program
      Structure of the system page
        size
        total_size
        type
        num_cpu
        system_private
        asinfo
          The attr field
          Address space trees
        hwinfo
          Tags
          Items
          Device trees
          Building the section
          Other functions
          Defaults
          Predefined items and tags
          Group item
          Bus item
          Device item
          location tag
          irq tag
          diskgeometry tag
          pad tag
        cpuinfo
        syspage_entry cacheattr
        syspage_entry qtime
        callout
        callin
        typed_strings
        strings
        intrinfo
          The cpu_intr_base member
          The flags member
          config return values
        syspage_entry union un
        un.x86
        un.x86.smpinfo (deprecated)
        un.ppc (deprecated)
        un.ppc.kerinfo
        un.mips
        un.arm
        un.sh
        smp
        pminfo
      Callout information
        Debug interface
        Clock/timer interface
        Interrupt controller interface
        Cache controller interface
        System reset callout
        Power management callout
      The startup library
        add_cache
        add_callout
        add_callout_array
        add_interrupt
        add_interrupt_array
        add_ram
        add_string
        add_typed_string
        alloc_qtime
        alloc_ram
        as_add
        as_add_containing
        as_default
        as_find
        as_find_containing
        as_info2off
        as_off2info
        as_set_checker
        as_set_priority
        avoid_ram
        calc_time_t
        calloc_ram
        callout_io_map, callout_io_map_indirect
        callout_memory_map, callout_memory_map_indirect
        callout_register_data
        chip_access
        chip_done
        chip_read8
        chip_read16
        chip_read32
        chip_write8
        chip_write16
        chip_write32
        copy_memory
        del_typed_string
        falcon_init_l2_cache
        falcon_init_raminfo
        falcon_system_clock
        find_startup_info
        find_typed_string
        handle_common_option
        hwi_add_device
        hwi_add_inputclk
        hwi_add_irq
        hwi_add_location
        hwi_add_nicaddr
        hwi_add_rtc
        hwi_alloc_item
        hwi_alloc_tag
        hwi_find_as
        hwi_find_item
        hwi_find_tag
        hwi_off2tag
        hwi_tag2off
        init_asinfo
        init_cacheattr
        init_cpuinfo
        init_hwinfo
        init_intrinfo
        init_mmu
        init_pminfo
        init_qtime
        init_qtime_sa1100
        init_raminfo
        init_smp
        init_syspage_memory (deprecated)
        init_system_private
        jtag_reserve_memory
        kprintf
        mips41xx_set_clock_freqs
        openbios_init_raminfo
        pcnet_reset
        ppc400_pit_init_qtime
        ppc405_set_clock_freqs
        ppc600_set_clock_freqs
        ppc700_init_l2_cache
        ppc800_pit_init_qtime
        ppc800_set_clock_freqs
        ppc_dec_init_qtime
        print_syspage
        rtc_time
        startup_io_map
        startup_io_unmap
        startup_memory_map
        startup_memory_unmap
        tulip_reset
        uncompress
        x86_cpuid_string
        x86_cputype
        x86_enable_a20
        x86_fputype
        x86_init_pcbios
        x86_pcbios_shadow_rom
        x86_scanmem
      Writing your own kernel callout
        Find out who's gone before
        Why are they in assembly language?
        Starting off
        Patching the callout code
        Getting some R/W storage
        The exception that proves the rule
      PPC chips support
        Adding a new CPU to the startup library
    Customizing the Flash Filesystem
      Introduction
      Driver structure
        resmgr and iofunc layers
        Flash filesystem component
        Socket services component
        Flash services component
        Probe routine component
      Building your flash filesystem driver
        The source tree
        The Makefile
        Making the driver
        The main function
          f3s_init
          f3s_start
        Socket services interface
          f3s_open
          f3s_page
          f3s_status
          f3s_close
        Options parsing
          f3s_socket_option
          f3s_socket_syspage
        Flash services interface
          f3s_ident
          f3s_reset
          f3s_v2read
          f3s_v2write
          f3s_v2erase
          f3s_v2suspend
          f3s_v2resume
          f3s_v2sync
          f3s_v2islock
          f3s_v2lock
          f3s_v2unlock
          f3s_v2unlockall
        Choosing the right routines
      Example: The devf-ram driver
        main
        f3s_ram_open
        f3s_ram_page
    System Design Considerations
      Introduction
        Before you design your system
          Processor speed
          Memory requirements
          Peripherals
          Debugging
          Field upgrades
        Other design considerations
          EPROM/Flash filesystem considerations
          IPL location
          Graphics cards
          A20 gate
          External ISA bus slots
          PCI bus slots
          External clocks
          Interrupts & controllers
          Serial and parallel ports
          Parallel port considerations
      NMI
      Design do's and don'ts
        Do:
        Don't:
    Sample Buildfiles
      Introduction
      Generic examples
        Shared libraries
        Running executables more than once
        Multiple consoles
          Starting other programs on consoles
          Redirection
          /tmp
        Complete example --- minimal configuration
        Complete example --- flash filesystem
        Complete example --- disk filesystem
        Complete example --- TCP/IP with network filesystem
      Processor-specific notes
        Specifying the processor
          Examples
        Specifying the startup program
        Specifying the serial device
    Glossary
  Getting Started with QNX Neutrino: A Guide for Realtime Programmers
    About This Guide
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    Foreword to the First Edition by Peter van der Veen
    Preface to the First Edition by Rob Krten
      A little history
      Who this book is for
      What's in this book?
        Processes and Threads
        Message Passing
        Clocks, Timers, and Getting a Kick Every So Often
        Interrupts
        Resource Managers
        QNX 4 to QNX Neutrino
        Calling 911
        Glossary
        Other references
      About Rob Krten
      Acknowledgments
    Processes and Threads
      Process and thread fundamentals
        A process as a house
        The occupants as threads
          Single threaded
          Multi threaded
        Back to processes and threads
        Mutual exclusion
        Priorities
        Semaphores
          A semaphore with a count of 1
          A semaphore with a count greater than 1
        A semaphore as a mutex
      The kernel's role
        Single CPU
        Multiple CPU (SMP)
        The kernel as arbiter
          Prioritization
          Scheduling policies
          FIFO
          Round Robin
          The rules
        Kernel states
          RUNNING
          READY
          The blocked states
          Kernel states, the complete list
      Threads and processes
        Why processes?
        Starting a process
          Starting a process from the command line
          Starting a process from within a program
            Starting a process with the system call
            Starting a process with the exec and spawn calls
            Starting a process with the fork call
            Starting a process with the vfork call
            Process creation and threads
            So what should you use?
        Starting a thread
          The thread attributes structure
            Thread attribute administration
            The flags thread attribute
            The stack thread attributes
            The scheduling thread attributes
          A few examples
          Where a thread is a good idea
          Threads in mathematical operations
            Coding for SMP or single processor
            Synchronizing to the termination of a thread
            Joining
            Using a barrier
            Multiple threads on a single CPU
            Things to watch out for when using SMP
          Threads in independent situations
            Multiple processes
            Multiple processes with shared memory
            Multiple threads
            Comparisons
      More on synchronization
        Readers/writer locks
        Sleepon locks
        Condition variables
          Signal versus broadcast
          Sleepons versus condvars
        Additional Neutrino services
        Pools of threads
          Controlling the number of threads
          The thread pool functions
      Scheduling and the real world
        Rescheduling --- hardware interrupts
        Rescheduling --- kernel calls
        Rescheduling --- exceptions
        Summary
    Message Passing
      Messaging fundamentals
        A small microkernel and message passing
      Message passing and client/server
      Network-distributed message passing
      What it means for you
        The philosophy of Neutrino
      Multiple threads
        Server/subserver
        Some examples
          Send-driven (client/server)
          Reply-driven (server/subserver)
          An important subtlety
          Multi-threaded server
      Using message passing
        Architecture & structure
        The client
          Establishing a connection
          Sending messages
        The server
          Creating the channel
          Message handling
          Server framework
        The send-hierarchy
        Receive IDs, channels, and other parameters
          More about channels
          Who sent the message?
          The receive ID (a.k.a. the client cookie)
          Replying to the client
          Not replying to the client
          Replying with no data, or an errno
          Finding the server's ND/PID/CHID
          What about priorities?
          Reading and writing data
        Multipart messages
          What about the other versions?
          Implementation
      Pulses
        Receiving a pulse message
          What's in a pulse?
          The MsgReceivePulse function
        The MsgDeliverEvent function
        Channel flags
          _NTO_CHF_UNBLOCK
            Synchronization problem
            Using the _NTO_MI_UNBLOCK_REQ
      Message passing over a network
        Networked message passing differences
          Longer delays
          Impact on ConnectAttach
          Impact on MsgDeliverEvent
          Impact on MsgReply, MsgRead, and MsgWrite
          Impact on MsgReceive
        Some notes on NDs
      Priority inheritance
        So what's the trick?
        Summary
    Clocks, Timers, and Getting a Kick Every So Often
      Clocks and timers
        Operating periodically
        Clock interrupt sources
        Base timing resolution
          Getting more precision
        Timing jitter
        Types of timers
        Notification schemes
          How to fill in the struct sigevent
            Pulse notification
            Signal notification
            Thread notification
            General tricks for notification
          Pulse notification
          Signal notification
      Using timers
        Creating a timer
        Signal, pulse, or thread?
        What kind of timer?
        A server with periodic pulses
          Server-maintained timeouts
            Declarations
            main
            setupPulseAndTimer
            gotAPulse
            gotAMessage
          Notes
          Periodic server maintenance cycles
        Timers delivering signals
        Timers creating threads
        Getting and setting the realtime clock and more
          Getting and setting
          Adjusting the timebase
          An accurate timestamp
      Advanced topics
        Other clock sources
          CLOCK_MONOTONIC
          So what does CLOCK_SOFTTIME do?
          Using different clock sources
        Kernel timeouts
          Kernel timeouts with pthread_join
          Kernel timeouts with message passing
        Summary
    Interrupts
      Neutrino and interrupts
        Interrupt service routine
          Clearing the interrupt source
          Telling a thread to do something
        Level-sensitivity versus edge-sensitivity
      Writing interrupt handlers
        Attaching an interrupt handler
          Attaching with InterruptAttachEvent
          Attaching with InterruptAttach
        Now that you've attached an interrupt
        Detaching an interrupt handler
        The flags parameter
        The interrupt service routine
          Using InterruptAttach
          Using InterruptAttachEvent
          InterruptAttach versus InterruptAttachEvent
          The trade-offs
        ISR functions
      Summary
    Resource Managers
      What is a resource manager?
        Examples of resource managers
          Serial port
          Filesystem
        Characteristics of resource managers
      The client's view
        Finding the server
        Finding the process manager
        Handling directories
        Union'd filesystems
        Client summary
      The resource manager's view
        Registering a pathname
        Handling messages
          Connect messages
          I/O messages
          Three groups, really
      The resource manager library
        The library really does what we just talked about
        Behind the scenes at the library
          The base layer
          The POSIX layer
      Writing a resource manager
        Data structures
          resmgr_attr_t control structure
            The other_func message handler
            The data structure sizing parameters
            The flags parameter
          resmgr_connect_funcs_t connect table
          resmgr_io_funcs_t I/O table
          The resmgr_context_t internal context block
        Resource manager structure
          The resmgr_attach function and its parameters
          Putting in your own functions
          The general flow of a resource manager
          Messages that should be connect messages but aren't
          Combine messages
        POSIX-layer data structures
          The iofunc_ocb_t OCB structure
            The strange case of the offset member
          The iofunc_attr_t attributes structure
          The iofunc_mount_t mount structure
            Of device numbers, inodes, and our friend rdev
      Handler routines
        General notes
          Locking, unlocking, and combine message handling
        Connect functions notes
          Internal use part
          End-user parameter part
      Alphabetical listing of connect and I/O functions
        io_chmod
        io_chown
        io_close_dup
        io_close_ocb
        io_devctl
        io_dup
        io_fdinfo
        io_link
        io_lock
        io_lock_ocb
        io_lseek
        io_mknod
        io_mmap
        io_mount
        io_msg
        io_notify
        io_open
        io_openfd
        io_pathconf
        io_power
        io_read
        io_readlink
        io_rename
        io_shutdown
        io_space
        io_stat
        io_sync
        io_unblock [CONNECT]
        io_unblock [I/O]
        io_unlink
        io_unlock_ocb
        io_utime
        io_write
      Examples
        The basic skeleton of a resource manager
          Step 1
          Step 2
          Step 3
        A simple io_read example
          Data area size considerations
          Handling of EOF case
          Maintenance of context information
          Updating POSIX information
          The code
          Step 1
          Step 2
          Steps 3 & 4
          Step 5
          Step 6
          Step 7
          Step 8
          Step 9
          Effective use of other messaging functions
        A simple io_write example
          Step 1
          Step 2
          Step 3
          Step 4
          Step 5
          Step 6
          Step 7
          Step 8
        A simple io_devctl example
          Step 1
          Step 2
          Step 3
          Step 4
        An io_devctl example that deals with data
          Step 1
          Step 2
          Step 3
          Step 4
          Step 5
          Important note
      Advanced topics
        Extending the OCB
          OCB monitor
          More efficient allocation
        Extending the attributes structure
        Blocking within the resource manager
        Returning directory entries
          Generally speaking ...
          The struct dirent structure and friends
            Offsets
            Contents
          Example
            main and declarations
            my_open
            my_read
            my_read_dir
            my_read_file
            dirent_size
            dirent_fill
      Summary
    QNX 4 to Neutrino
      QNX 4 and Neutrino
        Similarities
        Improvements
          Embeddability
          Thread support
          Message passing
            Pulses and events
          Device driver model
          MIPS, PPC, SH4, and ARM support
          SMP support
      Porting philosophy
        Message passing considerations
          Client/server using the global namespace
            Translating messages to standard file-descriptor-based POSIX calls
            Translating messages to devctl or _IO_MSG
          Client/Server using an I/O manager
          Proxies
            Proxies for their IDs
            Proxies for their contents
        Interrupt service routines
      Summary
    Calling 911
      Seeking professional help
        So you've got a problem...
          RTFM
            Building Embedded Systems
            Library Reference
            System Architecture
            Technotes
            User's Guide
            Utilities Reference
            Programmer's Guide
          Contact technical support
          Describe the problem
          Precise information
          Versions
          If you're using a beta...
          Reproduce the problem
          Narrow it down
        Training
    Sample Programs
      atoz.c
      time1.c
      tp1.c
      tt1.c
    Glossary
  Library Reference
    About This Reference
      What you'll find in this guide
      Typographical conventions
        Note to Windows users
        Navigation buttons
      Technical support
    What's in a Function Description?
      Description:
      Examples:
      Function safety:
    Manifests
    QNX Neutrino Functions and Macros
    A
      abort
        Description:
        Examples:
      abs
        Description:
        Examples:
      accept
        Description:
      access
        Description:
        Examples:
      acos, acosf, acosl
        Description:
        Examples:
      acosh, acoshf, acoshl
        Description:
        Examples:
      addrinfo
        Description:
      aio_cancel
        Description:
      aio_error
        Description:
      aio_fsync
        Description:
      aio_read
        Description:
      aio_return
        Description:
      aio_suspend
        Description:
      aio_write
        Description:
      aiocb
        Description:
      alarm
        Description:
        Examples:
      alloca
        Description:
        Examples:
      alphasort
        Description:
      _amblksiz
        Description:
      _argc
        Description:
      _argv
        Description:
      asctime, asctime_r
        Description:
      asin, asinf, asinl
        Description:
        Examples:
      asinh, asinhf, asinhl
        Description:
        Examples:
      assert
        Description:
        Examples:
      asyncmsg_channel_create
        Description:
          Callback function
      asyncmsg_channel_destroy
        Description:
      asyncmsg_connect_attach
        Description:
      asyncmsg_connect_attr
        Description:
      asyncmsg_connect_detach
        Description:
      _asyncmsg_connection_attr
        Description:
      asyncmsg_flush
        Description:
      asyncmsg_free
        Description:
      asyncmsg_get
        Description:
          _asyncmsg_get_header structure
      asyncmsg_malloc
        Description:
      asyncmsg_put, asyncmsg_putv
        Description:
      atan, atanf, atanl
        Description:
        Examples:
      atan2, atan2f
        Description:
        Examples:
      atanh, atanhf, atanhl
        Description:
        Examples:
      atexit
        Description:
        Examples:
      atof
        Description:
        Examples:
      atoh
        Description:
        Examples:
      atoi
        Description:
        Examples:
      atol, atoll
        Description:
        Examples:
      atomic_add
        Description:
        Examples:
      atomic_add_value
        Description:
        Examples:
      atomic_clr
        Description:
        Examples:
      atomic_clr_value
        Description:
        Examples:
      atomic_set
        Description:
        Examples:
      atomic_set_value
        Description:
        Examples:
      atomic_sub
        Description:
        Examples:
      atomic_sub_value
        Description:
        Examples:
      atomic_toggle
        Description:
        Examples:
      atomic_toggle_value
        Description:
        Examples:
      _auxv
        Description:
    B
      basename
        Description:
        Examples:
      bcmp
        Description:
        Examples:
      bcopy
        Description:
        Examples:
      bind
        Description:
      bindresvport
        Description:
      brk
        Description:
      bsearch
        Description:
        Examples:
      bt_get_backtrace
        Description:
      bt_init_accessor
        Description:
      bt_load_memmap
        Description:
      bt_release_accessor
        Description:
      bt_set_flags
        Description:
      bt_sprn_memmap
        Description:
      bt_sprnf_addrs
        Description:
      bt_translate_addrs
        Description:
      bt_unload_memmap
        Description:
      _btext
        Description:
      btowc
        Description:
      bzero
        Description:
        Examples:
    C
      cabs, cabsf
        Description:
        Examples:
      cache_fini
        Description:
      CACHE_FLUSH
        Description:
      cache_init
        Description:
          Members of the cache_ctrl structure
          Cache coherency
      CACHE_INVAL
        Description:
      calloc
        Description:
        Examples:
      cbrt, cbrtf
        Description:
        Examples:
      ceil, ceilf
        Description:
        Examples:
      cfgetispeed
        Description:
        Examples:
      cfgetospeed
        Description:
        Examples:
      cfgopen
        Description:
          Search condition flags
      cfmakeraw
        Description:
      cfree
        Description:
      cfsetispeed
        Description:
        Examples:
      cfsetospeed
        Description:
        Examples:
      ChannelCreate, ChannelCreate_r
        Description:
          _NTO_CHF_COID_DISCONNECT
          _NTO_CHF_DISCONNECT
          _NTO_CHF_FIXED_PRIORITY
          _NTO_CHF_NET_MSG
          _NTO_CHF_REPLY_LEN
          _NTO_CHF_SENDER_LEN
          _NTO_CHF_THREAD_DEATH
          _NTO_CHF_UNBLOCK
          Blocking states
      ChannelDestroy, ChannelDestroy_r
        Description:
          Blocking states
      chdir
        Description:
        Examples:
      chmod
        Description:
        Examples:
      chown
        Description:
        Examples:
      chroot
        Description:
      chsize
        Description:
        Examples:
      clearenv
        Description:
        Examples:
      clearerr
        Description:
        Examples:
      clock
        Description:
        Examples:
      clock_getcpuclockid
        Description:
      clock_getres
        Description:
        Examples:
      clock_gettime
        Description:
        Examples:
      clock_nanosleep
        Description:
      clock_settime
        Description:
        Examples:
      ClockAdjust, ClockAdjust_r
        Description:
          Blocking states:
      ClockCycles
        Description:
          Symmetric MultiProcessing systems
          Blocking states:
        Examples:
      ClockId, ClockId_r
        Description:
          Blocking states:
        Examples:
      ClockPeriod, ClockPeriod_r
        Description:
          Blocking states
      ClockTime, ClockTime_r
        Description:
          Blocking states
      close
        Description:
        Examples:
      closedir
        Description:
        Examples:
      closelog
        Description:
      _cmdfd
        Description:
      _cmdname
        Description:
        Examples:
      confstr
        Description:
        Examples:
      connect
        Description:
      ConnectAttach, ConnectAttach_r
        Description:
          Blocking states
          Node descriptors
      ConnectClientInfo, ConnectClientInfo_r
        Description:
          _client_info structure
          uint32_t nd
          _cred_info structure
      ConnectDetach, ConnectDetach_r
        Description:
          Blocking states
      ConnectFlags, ConnectFlags_r
        Description:
      ConnectServerInfo, ConnectServerInfo_r
        Description:
          _server_info structure
      copysign, copysignf
        Description:
        Examples:
      cos, cosf, cosl
        Description:
        Examples:
      cosh, coshf, coshl
        Description:
        Examples:
      creat, creat64
        Description:
        Examples:
      crypt
        Description:
      ctermid
        Description:
        Examples:
      ctime, ctime_r
        Description:
    D
      daemon
        Description:
      daylight
        Description:
      DebugBreak
        Description:
          Blocking states
      DebugKDBreak
        Description:
          Blocking states
      DebugKDOutput
        Description:
          Blocking states
      delay
        Description:
        Examples:
      devctl
        Description:
          Device-control commands
        Examples:
          Example 1: Setting RTS on a serial port
          Example 2: Cycling through Caps Lock, Num Lock, and Scroll Lock
          Example 3: Duration example
      difftime
        Description:
        Examples:
      dircntl
        Description:
          Flag values
        Examples:
      dirent
        Description:
      dirname
        Description:
        Examples:
      dispatch_block
        Description:
        Examples:
      dispatch_context_alloc
        Description:
        Examples:
      dispatch_context_free
        Description:
        Examples:
      dispatch_create
        Description:
        Examples:
      dispatch_create_channel
        Description:
      dispatch_destroy
        Description:
        Examples:
      dispatch_handler
        Description:
        Examples:
      dispatch_timeout
        Description:
        Examples:
      dispatch_unblock
        Description:
        Examples:
      div
        Description:
        Examples:
      dladdr
        Description:
      dlclose
        Description:
      dlerror
        Description:
      dlopen
        Description:
          The mode
            Relocation
            Visibility
          Symbol scope
          Other flags
          Symbol resolution
      dlsym
        Description:
        Examples:
      dn_comp
        Description:
      dn_expand
        Description:
      drand48
        Description:
      ds_clear
        Description:
        Examples:
      ds_create
        Description:
        Examples:
      ds_deregister
        Description:
        Examples:
      ds_flags
        Description:
      ds_get
        Description:
      ds_register
        Description:
        Examples:
      ds_set
        Description:
        Examples:
      dup
        Description:
        Examples:
      dup2
        Description:
        Examples:
    E
      eaccess
        Description:
      _edata
        Description:
      encrypt
        Description:
      _end
        Description:
      endfsent
        Description:
      endgrent
        Description:
      endhostent
        Description:
      ENDIAN_BE16
        Description:
        Examples:
      ENDIAN_BE32
        Description:
        Examples:
      ENDIAN_BE64
        Description:
        Examples:
      ENDIAN_LE16
        Description:
        Examples:
      ENDIAN_LE32
        Description:
        Examples:
      ENDIAN_LE64
        Description:
        Examples:
      ENDIAN_RET16
        Description:
        Examples:
      ENDIAN_RET32
        Description:
        Examples:
      ENDIAN_RET64
        Description:
        Examples:
      ENDIAN_SWAP16
        Description:
        Examples:
      ENDIAN_SWAP32
        Description:
        Examples:
      ENDIAN_SWAP64
        Description:
        Examples:
      endnetent
        Description:
      endprotoent
        Description:
      endpwent
        Description:
      endservent
        Description:
      endspent
        Description:
      endutent
        Description:
      environ
        Description:
      eof
        Description:
        Examples:
      erand48
        Description:
      erf, erff
        Description:
      erfc, erfcf, erfcl
        Description:
      err, errx
        Description:
        Examples:
      errno
        Description:
          Changes to EALREADY
        Examples:
      _etext
        Description:
      execl
        Description:
          exec* summary
        Examples:
      execle
        Description:
          exec* summary
        Examples:
      execlp
        Description:
          exec* summary
      execlpe
        Description:
          exec* summary
      execv
        Description:
          exec* summary
        Examples:
      execve
        Description:
          exec* summary
      execvp
        Description:
          exec* summary
      execvpe
        Description:
          exec* summary
      _exit
        Description:
        Examples:
      exit
        Description:
        Examples:
      exp, expf, expl
        Description:
        Examples:
      expm1, expm1f
        Description:
        Examples:
    F
      fabs, fabsf
        Description:
        Examples:
      fcfgopen
        Description:
      fchdir
        Description:
      fchmod
        Description:
        Examples:
      fchown
        Description:
        Examples:
      fclose
        Description:
        Examples:
      fcloseall
        Description:
        Examples:
      fcntl
        Description:
          flock structure
        Examples:
      fdatasync
        Description:
      fdopen
        Description:
        Examples:
      feof
        Description:
        Examples:
      ferror
        Description:
        Examples:
      fflush
        Description:
        Examples:
      ffs
        Description:
      fgetc
        Description:
        Examples:
      fgetchar
        Description:
        Examples:
      fgetpos
        Description:
        Examples:
      fgets
        Description:
        Examples:
      fgetspent
        Description:
        Examples:
      fgetwc
        Description:
      fgetws
        Description:
      fileno
        Description:
        Examples:
      flink
        Description:
      flock
        Description:
      flockfile
        Description:
      floor, floorf
        Description:
        Examples:
      flushall
        Description:
      fmod, fmodf, fmodl
        Description:
        Examples:
      fnmatch
        Description:
          Pattern Matching Special Characters
        Examples:
      fopen, fopen64
        Description:
        Examples:
      fork
        Description:
        Examples:
      forkpty
        Description:
      fp_exception_mask
        Description:
        Examples:
      fp_exception_value
        Description:
        Examples:
      fp_precision
        Description:
        Examples:
      fp_rounding
        Description:
        Examples:
      fp_setenv
        Description:
        Examples:
      fpathconf
        Description:
        Examples:
      fprintf
        Description:
        Examples:
      fputc
        Description:
        Examples:
      fputchar
        Description:
        Examples:
      fputs
        Description:
        Examples:
      fputwc
        Description:
      fputws
        Description:
      fread
        Description:
        Examples:
      free
        Description:
        Examples:
      freeaddrinfo
        Description:
      freeifaddrs
        Description:
      freopen, freopen64
        Description:
        Examples:
      frexp, frexpf
        Description:
        Examples:
      fscanf
        Description:
        Examples:
      fseek, fseeko, fseeko64
        Description:
        Examples:
      fsetpos
        Description:
        Examples:
      fstat, fstat64
        Description:
        Examples:
      fstatvfs, fstatvfs64
        Description:
      fsync
        Description:
      ftell, ftello, ftello64
        Description:
        Examples:
      ftime
        Description:
        Examples:
      ftruncate, ftruncate64
        Description:
      ftrylockfile
        Description:
      ftw, ftw64
        Description:
      funlockfile
        Description:
      futime
        Description:
      fwide
        Description:
      fwprintf
        Description:
      fwrite
        Description:
        Examples:
      fwscanf
        Description:
    G
      gai_strerror
        Description:
      gamma, gamma_r, gammaf, gammaf_r
        Description:
      getaddrinfo
        Description:
          Using the hints argument
          Using the ai_flags argument in the hints structure
          Pitfalls
        Examples:
      getc
        Description:
        Examples:
      getc_unlocked
        Description:
      getchar
        Description:
        Examples:
      getchar_unlocked
        Description:
      getcwd
        Description:
        Examples:
      getdomainname
        Description:
      getdtablesize
        Description:
      getegid
        Description:
        Examples:
      getenv
        Description:
        Examples:
      geteuid
        Description:
        Examples:
      getfsfile
        Description:
      getfsent
        Description:
          The fstab structure
      getfsspec
        Description:
      getgid
        Description:
        Examples:
      getgrent
        Description:
        Examples:
      getgrgid
        Description:
        Examples:
      getgrgid_r
        Description:
      getgrnam
        Description:
        Examples:
      getgrnam_r
        Description:
      getgrouplist
        Description:
        Examples:
      getgroups
        Description:
        Examples:
      gethostbyaddr
        Description:
        Examples:
      gethostbyaddr_r
        Description:
      gethostbyname, gethostbyname2
        Description:
      gethostbyname_r
        Description:
      gethostent
        Description:
      gethostent_r
        Description:
      gethostname
        Description:
      getifaddrs
        Description:
      GETIOVBASE
        Description:
      GETIOVLEN
        Description:
      getitimer
        Description:
      getlogin
        Description:
      getlogin_r
        Description:
      getnameinfo
        Description:
          Extension
        Examples:
      getnetbyaddr
        Description:
      getnetbyname
        Description:
      getnetent
        Description:
      getopt
        Description:
          Utility Syntax Guidelines
        Examples:
      getpagesize
        Description:
      getpagesizes, getpagesizes64
        Description:
        Examples:
      getpass
        Description:
      getpeereid
        Description:
      getpeername
        Description:
      getpgid
        Description:
      getpgrp
        Description:
        Examples:
      getpid
        Description:
        Examples:
      getppid
        Description:
        Examples:
      getprio
        Description:
      getprotobyname
        Description:
      getprotobynumber
        Description:
      getprotoent
        Description:
      getpwent
        Description:
        Examples:
      getpwent_r
        Description:
      getpwnam
        Description:
        Examples:
      getpwnam_r
        Description:
      getpwuid
        Description:
        Examples:
      getpwuid_r
        Description:
      getrlimit, getrlimit64
        Description:
        Examples:
      getrusage
        Description:
      gets
        Description:
        Examples:
      getservbyname
        Description:
      getservbyport
        Description:
      getservent
        Description:
      getsid
        Description:
      getsockname
        Description:
      getsockopt
        Description:
          Manipulating socket options
          Options
            IP_HDRINCL
            IP_TOS
            SO_BINDTODEVICE
            SO_BROADCAST
            SO_DEBUG
            SO_DONTROUTE
            SO_ERROR
            SO_KEEPALIVE
            SO_LINGER
            SO_OOBINLINE
            SO_RCVBUF and SO_SNDBUF
            SO_RCVLOWAT
            SO_RCVTIMEO
            SO_REUSEADDR
            SO_REUSEPORT
            SO_SNDLOWAT
            SO_SNDTIMEO
            SO_TIMESTAMP
            SO_TYPE
            SO_USELOOPBACK
            TCP_KEEPALIVE
            TCP_NODELAY
          Keepalive timing
      getspent, getspent_r
        Description:
        Examples:
      getspnam, getspnam_r
        Description:
        Examples:
      getsubopt
        Description:
        Examples:
      gettimeofday
        Description:
      getuid
        Description:
        Examples:
      getutent
        Description:
      getutid
        Description:
      getutline
        Description:
      getw
        Description:
      getwc
        Description:
      getwchar
        Description:
      getwd
        Description:
      glob
        Description:
        Examples:
      globfree
        Description:
      gmtime
        Description:
      gmtime_r
        Description:
    H
      h_errno
        Description:
      hcreate
        Description:
        Examples:
      hdestroy
        Description:
        Examples:
      herror
        Description:
      hostent
        Description:
      hsearch
        Description:
        Examples:
      hstrerror
        Description:
      htonl
        Description:
      htons
        Description:
      hwi_find_item
        Description:
        Examples:
      hwi_find_tag
        Description:
      hwi_off2tag
        Description:
      hwi_tag2off
        Description:
      hypot, hypotf
        Description:
        Examples:
    I
      ICMP
        Description:
      ICMP6
        Description:
          ICMP6 type/code filter
      if_freenameindex
        Description:
      if_indextoname
        Description:
      if_nameindex
        Description:
      if_nametoindex
        Description:
      ifaddrs
        Description:
      ilogb, ilogbf
        Description:
        Examples:
      in8
        Description:
      in8s
        Description:
      in16, inbe16, inle16
        Description:
      in16s
        Description:
      in32, inbe32, inle32
        Description:
      in32s
        Description:
      index
        Description:
      inet_addr
        Description:
      inet_aton
        Description:
      inet_lnaof
        Description:
      inet_makeaddr
        Description:
      inet_net_ntop
        Description:
          Network Numbers (IPv4 Internet addresses)
      inet_netof
        Description:
      inet_net_pton
        Description:
      inet_network
        Description:
      inet_ntoa
        Description:
      inet_ntoa_r
        Description:
      inet_ntop
        Description:
        Examples:
      inet_pton
        Description:
          AF_INET addresses
          AF_INET6 addresses
        Examples:
      INET6
        Description:
          Protocols
          Addressing
          Interaction between IPv4/v6 sockets
      inet6_option_alloc
        Description:
      inet6_option_append
        Description:
      inet6_option_find
        Description:
      inet6_option_init
        Description:
      inet6_option_next
        Description:
      inet6_option_space
        Description:
      inet6_rthdr_add
        Description:
      inet6_rthdr_getaddr
        Description:
      inet6_rthdr_getflags
        Description:
      inet6_rthdr_init
        Description:
      inet6_rthdr_lasthop
        Description:
      inet6_rthdr_reverse
        Description:
      inet6_rthdr_segments
        Description:
          inet6_rthdr_segments
      inet6_rthdr_space
        Description:
      initgroups
        Description:
      initstate
        Description:
        Examples:
      input_line
        Description:
        Examples:
      insque
        Description:
      InterruptAttach, InterruptAttach_r
        Description:
          Interrupt vector numbers
          Interrupts and startup code
          Typical x86 Interrupt vector numbers
          Interrupt handler function
          Flags
          _NTO_INTR_FLAGS_END
          _NTO_INTR_FLAGS_PROCESS
          _NTO_INTR_FLAGS_TRK_MSK
          Blocking states
      InterruptAttachEvent, InterruptAttachEvent_r
        Description:
          Flags
          _NTO_INTR_FLAGS_END
          _NTO_INTR_FLAGS_PROCESS
          _NTO_INTR_FLAGS_TRK_MSK
          Advantages & disadvantages
          Blocking states
      InterruptDetach, InterruptDetach_r
        Description:
          Blocking states
      InterruptDisable
        Description:
      InterruptEnable
        Description:
      InterruptHookIdle
        Description:
          Flags
          _NTO_INTR_FLAGS_END
          _NTO_INTR_FLAGS_PROCESS
          _NTO_INTR_FLAGS_TRK_MSK
          Blocking states
      InterruptHookTrace
        Description:
          _NTO_INTR_FLAGS_END
          Blocking states
      InterruptLock
        Description:
      InterruptMask
        Description:
      InterruptUnlock
        Description:
      InterruptUnmask
        Description:
      InterruptWait, InterruptWait_r
        Description:
          Blocking states
      _intr_v86
        Description:
        Examples:
      _io_connect
        Description:
      _io_connect_ftype_reply
        Description:
      _io_connect_link_reply
        Description:
      ioctl, ioctl_socket
        Description:
          How ioctl commands map to other commands
          Commands with special handling in ioctl_socket
      iofdinfo
        Description:
      iofunc_attr_init
        Description:
      iofunc_attr_lock
        Description:
      iofunc_attr_t
        Description:
      iofunc_attr_trylock
        Description:
      iofunc_attr_unlock
        Description:
      iofunc_check_access
        Description:
      iofunc_chmod
        Description:
          io_chmod_t structure
      iofunc_chmod_default
        Description:
      iofunc_chown
        Description:
          io_chown_t structure
      iofunc_chown_default
        Description:
      iofunc_client_info
        Description:
      iofunc_close_dup
        Description:
          io_close_t structure
      iofunc_close_dup_default
        Description:
      iofunc_close_ocb
        Description:
      iofunc_close_ocb_default
        Description:
      iofunc_devctl
        Description:
          io_devctl_t structure
      iofunc_devctl_default
        Description:
      iofunc_fdinfo
        Description:
      iofunc_fdinfo_default
        Description:
          io_fdinfo_t structure
      iofunc_func_init
        Description:
        Examples:
      iofunc_link
        Description: