Man Linux: Main Page and Category List

NAME

       load_datafile_callback  -  Loads a datafile into memory, calling a hook
       per object. Allegro game programming library.

SYNOPSIS

       #include <allegro.h>

       DATAFILE    *load_datafile_callback(const    char    *filename,    void
       (*callback)(DATAFILE *d));

DESCRIPTION

       Loads  a datafile into memory, calling the specified hook function once
       for each object in the file, passing it a pointer to  the  object  just
       read.  You  can use this to implement very simple loading screens where
       every time the hook is called, the screen is updated to  let  the  user
       know your program is still loading from disk:

          void load_callback(DATAFILE *dat_obj)
          {
             static const char indicator[] = "-\\|/-.oOXOo.";
             static int current = 0;

             /* Show a different character every time. */
             textprintf_ex(screen, font, 0, 0, makecol(0, 0, 0),
                           makecol(255, 255, 255), "%c Loading %c",
                           indicator[current], indicator[current]);
             /* Increase index and check if we need to reset it. */
             current++;
             if (!indicator[current])
                current = 0;
          }
             ...
             dat = load_datafile_callback("data.dat", load_callback);

RETURN VALUE

       Returns  a  pointer  to the DATAFILE or NULL on error. Remember to free
       this DATAFILE later to avoid memory leaks.

SEE ALSO

       load_datafile(3alleg),                         unload_datafile(3alleg),
       load_datafile_object(3alleg),             set_color_conversion(3alleg),
       fixup_datafile(3alleg),                      packfile_password(3alleg),
       find_datafile_object(3alleg), register_datafile_object(3alleg)