.. _notation:

Notational Conventions
======================


The following conventions may be used in this document.


.. container:: tablenoborder


   .. list-table:: 
      :header-rows: 1

      * -     Convention     
        -     Explanation     
        -     Example     
      * -     \ *Italic*     
        -     Used for introducing new terms, denotation of terms,    placeholders, or titles of manuals.    
        -     The filename consists of the *basename* and the *extension*.     
      * -     \ ``Monospace``     
        -     Indicates directory paths and filenames, commands and    command line        options, function names, methods,   classes, data structures in body text, source code.    
        -     \ ``ippsapi.h``        \ ``\alt\include``           Use the okCreateObjs() function to...          \ ``printf("hello, world\n");``    
      * -     [ ]     
        -     Items enclosed in brackets are optional.     
        -     Fa[c]        Indicates Fa or Fac.     
      * -     { \| }     
        -     Braces and vertical bars indicate the choice of one item    from a selection of two or more items.    
        -     X{K \| W \| P}        Indicates XK, XW, or XP.       
      * -     "[" "]" "{"    | " }" "|"    
        -     Writing a metacharacter in quotation marks negates the      syntactical meaning stated above;   | the character is taken as a literal.    
        -     "[" X "]" [ Y ]        Denotes the letter X    enclosed in brackets, optionally followed by the letter Y.    
      * -     ...     
        -     The ellipsis indicates that the previous item can be    repeated several times.    
        -     \ ``filename`` ...        Indicates that one or    more filenames can be specified.    
      * -     ,...     
        -     The ellipsis preceded by a comma indicates that the      previous item can be repeated several times,   | separated by commas.    
        -     \ ``word`` ,...        Indicates that one or    more words can be specified. If more than one word is specified, the   words are comma-separated.    




.. container:: section


   Class members are summarized by informal class declarations that
   describe the class as it seems to clients, not how it is actually
   implemented. For example, here is an informal declaration of class
   ``Foo``:


   ::


      class Foo {
      public:
          int x();
          int y;
          ~Foo();
      };


   The actual implementation might look like:


   ::


      namespace internal {
          class FooBase  {
          protected:
              int x();
          };


          class Foo_v3: protected FooBase {
          private:
              int internal_stuff;
          public:
              using FooBase::x;
              int y;
          };
      }


      typedef internal::Foo_v3 Foo;


   The example shows two cases where the actual implementation departs
   from the informal declaration:


   -  ``Foo`` is actually a typedef to ``Foo_v3``.


   -  Method ``x()`` is inherited from a protected base class.


   -  The destructor is an implicit method generated by the compiler.


   The informal declarations are intended to show you what you need to
   know to use the class without the distraction of irrelevant clutter
   particular to the implementation.

