GPS4Palm

Source Code Documentation


getdir.c File Reference

#include <PalmOS.h>
#include <PalmCompatibility.h>
#include <Extensions/ExpansionMgr/VFSMgr.h>
#include "stringil.h"
#include "getdir.h"
#include "common.h"

Include dependency graph for getdir.c:

Go to the source code of this file.

Functions

UInt16 getdir (char *filelist, char *filecard, char **filelp)
 Store "directory" of a set of databases (i.e.
UInt16 getdir_vfs (char *filelist, char *filecard, char **filelp, UInt16 files)
 Store directory on external memory cards (VFS) in 3 different database records.
void CreateDatabase (DmOpenRef *ref, char **filelist, char **filecard, char ***filelp)
 Create scratchpad database with 3 records.
void DestroyDatabase (DmOpenRef ref, char *filelist, char *filecard, char **filelp)
 Remove all records and close scratchpad database.


Function Documentation

void CreateDatabase DmOpenRef *  ref,
char **  filelist,
char **  filecard,
char ***  filelp
 

Create scratchpad database with 3 records.

Note:
All parameters are returned 'by reference', because the memory locations of the database records are determined by this function.
Parameters:
ref pointer to database reference
filelist pointer to start of filelist record
filecard pointer to filecard record
filelp pointer to filelp record

Definition at line 415 of file getdir.c.

References FILECARDRECORDSIZE, FILELISTRECORDSIZE, FILELPRECORDSIZE, kCreatorId, lid, and scratch.

Referenced by FileSelFormHandleEvent(), and search_map().

void DestroyDatabase DmOpenRef  ref,
char *  filelist,
char *  filecard,
char **  filelp
 

Remove all records and close scratchpad database.

Parameters:
ref database reference
filelist start of filelist record
filecard filecard record
filelp filelp record

Definition at line 455 of file getdir.c.

Referenced by search_map().

UInt16 getdir char *  filelist,
char *  filecard,
char **  filelp
 

Store "directory" of a set of databases (i.e.

files) in 3 different database records.

		filelist	< size0 (4 bytes) >< filename0 >
				< size1 (4 bytes) >< filename1 >
				...
		filecard	< card0 > (card of 1st file)
				< card1 > (card of 2nd file)
				...
		filelp		< ptr0 > (pointer to 1st filelist entry)
				< ptr1 > (pointer to 2nd filelist entry)
				...
 
Parameters:
filelist start of filelist record
filecard filecard record
filelp filelp record
Returns:
Total number of files.

Definition at line 75 of file getdir.c.

References FS_FLAG, lid, memcpy(), memset(), SORTPREFIX, StrLen, and strlen().

Referenced by FileSelFormHandleEvent(), and search_map().

UInt16 getdir_vfs char *  filelist,
char *  filecard,
char **  filelp,
UInt16  files
 

Store directory on external memory cards (VFS) in 3 different database records.

		filelist	< size0 (4 bytes) >< filename0 >
				< size1 (4 bytes) >< filename1 >
				...
		filecard	< vol0 > (volume of 1st file)
				< vol1 > (volume of 2nd file)
				...
		filelp		< ptr0 > (pointer to 1st filelist entry)
				< ptr1 > (pointer to 2nd filelist entry)
				...
 
Parameters:
filelist start of filelist record
filecard filecard record
filelp filelp record
files number of files already found (File Streaming API)
Returns:
Total number of files.

Definition at line 223 of file getdir.c.

References FILEDIR, FILENAMEMAXLEN, SORTPREFIX, StrCopy, StrLen, and VFS_FLAG.

Referenced by FileSelFormHandleEvent(), and search_map().


Created: Mon, 08 Oct 2007 22:33:16 +0200
Copyright ©2004 M. Prinke