Provided by: libpappl-dev_1.2.1-1_amd64 bug

NAME

       pappl-resource - pappl resource functions

LIBRARY

       Printer Application Framework (libpappl, "pkg-config --cflags --libs pappl")

SYNOPSIS

       #include <pappl/pappl.h>

       typedef struct _pappl_printer_s pappl_printer_t;

       typedef struct _pappl_system_s pappl_system_t;

       void
       papplPrinterAddLink(pappl_printer_t  *printer, const char *label, const char *path_or_url,
       bool secure);

       void
       papplSystemAddLink(pappl_system_t *system, const char  *label,  const  char  *path_or_url,
       bool secure);

       void
       papplSystemAddResourceCallback(pappl_system_t   *system,  const  char  *path,  const  char
       *format, pappl_resource_cb_t cb, void *data);

       void
       papplSystemAddResourceData(pappl_system_t *system, const char *path, const  char  *format,
       const void *data, size_t datalen);

       void
       papplSystemAddResourceDirectory(pappl_system_t  *system,  const char *basepath, const char
       *directory);

       void
       papplSystemAddResourceFile(pappl_system_t *system, const char *path, const  char  *format,
       const char *filename);

       void
       papplSystemAddResourceString(pappl_system_t *system, const char *path, const char *format,
       const char *data);

       void
       papplSystemAddStringsData(pappl_system_t *system, const char *path, const char  *language,
       const char *data);

       void
       papplSystemAddStringsFile(pappl_system_t  *system, const char *path, const char *language,
       const char *filename);

       void
       papplSystemRemoveResource(pappl_system_t *system, const char *path);

DESCRIPTION

       The PAPPL resource functions manage resource files, callbacks, and links  in  the  printer
       application.

FUNCTIONS

   papplPrinterAddLink
       Add a printer link to the navigation header.

       void papplPrinterAddLink (
           pappl_printer_t *printer,
           const char *label,
           const char *path_or_url,
           pappl_loptions_t options
       );

       This  function adds a navigation link for a printer.  The "path_or_url" argument specifies
       a  absolute  path  such  as  "/ipp/print/example/page"  or  an  absolute   URL   such   as
       "https://www.example.com/".   The "options" argument specifies where the link is shown and
       whether the link should redirect an absolute path to the secure  ("https://.../path")  web
       interface.

   papplPrinterRemoveLink
       Remove a printer link from the navigation header.

       void papplPrinterRemoveLink (
           pappl_printer_t *printer,
           const char *label
       );

       This function removes the named link for the printer.

   papplSystemAddLink
       Add a link to the navigation header.

       void papplSystemAddLink (
           pappl_system_t *system,
           const char *label,
           const char *path_or_url,
           pappl_loptions_t options
       );

       This function adds a navigation link for the system.  The "path_or_url" argument specifies
       a absolute path such as "/page" or an absolute  URL  such  as  "https://www.example.com/".
       The  "options"  argument  specifies  where  the  link is shown and whether the link should
       redirect an absolute path to the secure ("https://.../path") web interface.

   papplSystemAddResourceCallback
       Add a dynamic resource that uses a callback function.

       void papplSystemAddResourceCallback (
           pappl_system_t *system,
           const char *path,
           const char *format,
           pappl_resource_cb_t cb,
           void *data
       );

       This function adds a dynamic resource at the specified path.  When a client  GET  or  POST
       request  is  received  at  the  specified  path, the "cb" function will be called with the
       client pointer and "data" pointer to respond to it.

       Resource callbacks are most often used to implement custom web pages.

       5      Note: Any custom web page that is added prior to calling the

       5      papplSystemRun function will replace the corresponding standard web

       5      page at the same path.

   papplSystemAddResourceData
       Add a static data resource.

       void papplSystemAddResourceData (
           pappl_system_t *system,
           const char *path,
           const char *format,
           const void *data,
           size_t datalen
       );

       This function adds a static resource at the specified path.   The  provided  data  is  not
       copied  to the resource and must remain stable for as long as the resource is added to the
       system.

       5      Note: Any resource that is added prior to calling the papplSystemRun

       5      function will replace the corresponding standard resource at the same path.

   papplSystemAddResourceDirectory
       Add external files in a directory as resources.

       void papplSystemAddResourceDirectory (
           pappl_system_t *system,
           const char *basepath,
           const char *directory
       );

       This function adds static resources from the specified directory under the specified path.
       The  directory  is  scanned  and  only  those  files  present  at the time of the call are
       available, and those files must remain stable for as long as the resources  are  added  to
       the system..

       5      Note: Any resource that is added prior to calling the papplSystemRun

       5      function will replace the corresponding standard resource at the same path.

   papplSystemAddResourceFile
       Add an external file as a resource.

       void papplSystemAddResourceFile (
           pappl_system_t *system,
           const char *path,
           const char *format,
           const char *filename
       );

       This  function  adds  a  static  resource at the specified path.  The provided file is not
       copied to the resource and must remain stable for as long as the resource is added to  the
       system.

       5      Note: Any resource that is added prior to calling the papplSystemRun

       5      function will replace the corresponding standard resource at the same path.

   papplSystemAddResourceString
       Add a static data resource as a C string.

       void papplSystemAddResourceString (
           pappl_system_t *system,
           const char *path,
           const char *format,
           const char *data
       );

       This  function  adds  a  static  resource at the specified path.  The provided data is not
       copied to the resource and must remain stable for as long as the resource is added to  the
       system.

       5      Note: Any resource that is added prior to calling the papplSystemRun

       5      function will replace the corresponding standard resource at the same path.

   papplSystemAddStringsData
       Add a static localization file resource.

       void papplSystemAddStringsData (
           pappl_system_t *system,
           const char *path,
           const char *language,
           const char *data
       );

       This  function  adds  a  static localization resource at the specified path.  Localization
       files use the NeXTStep strings ("text/strings") format defined in PWG  Candidate  Standard
       5100.13-2013.   The provided data is not copied to the resource and must remain stable for
       as long as the resource is added to the system.

       5      Note: Any resource that is added prior to calling the papplSystemRun

       5      function will replace the corresponding standard resource at the same path.

   papplSystemAddStringsFile
       Add an external localization file resource.

       void papplSystemAddStringsFile (
           pappl_system_t *system,
           const char *path,
           const char *language,
           const char *filename
       );

       This function adds a static localization resource at  the  specified  path.   Localization
       files  use  the NeXTStep strings ("text/strings") format defined in PWG Candidate Standard
       5100.13-2013.  The provided file is not copied to the resource and must remain stable  for
       as long as the resource is added to the system.

       5      Note: Any resource that is added prior to calling the papplSystemRun

       5      function will replace the corresponding standard resource at the same path.

   papplSystemRemoveLink
       Remove a link from the navigation header.

       void papplSystemRemoveLink (
           pappl_system_t *system,
           const char *label
       );

       This function removes the named link for the system.

   papplSystemRemoveResource
       Remove a resource at the specified path.

       void papplSystemRemoveResource (
           pappl_system_t *system,
           const char *path
       );

       This function removes a resource at the specified path.

SEE ALSO

       pappl(1), pappl-client(3), pappl-device(3), pappl-job(3), pappl-log(3), pappl-mainline(3),
       pappl-makeresheader(1),     pappl-printer(3),     pappl-resource(3),      pappl-system(3),
       https://www.msweet.org/pappl

COPYRIGHT

       Copyright © 2019-2022 by Michael R Sweet.

       PAPPL  is  licensed  under  the Apache License Version 2.0 with an (optional) exception to
       allow linking against GPL2/LGPL2 software (like older versions of CUPS), so it can be used
       freely  in  any  project  you'd  like.  See the files "LICENSE" and "NOTICE" in the source
       distribution for more information.