Back to index

avfs  1.0.1
namespace.h
Go to the documentation of this file.
00001 /*
00002     AVFS: A Virtual File System Library
00003     Copyright (C) 1998-2001  Miklos Szeredi <miklos@szeredi.hu>
00004 
00005     This program can be distributed under the terms of the GNU GPL.
00006     See the file COPYING.
00007 */
00008 
00009 #define NSF_NOCASE (1 << 0) /* for case-insensitive key comparisons */
00010 
00011 struct namespace;
00012 struct entry;
00013 
00014 struct namespace *av_namespace_new();
00015 struct entry *av_namespace_lookup(struct namespace *ns, struct entry *parent,
00016                                     const char *name);
00017 struct entry *av_namespace_lookup_all(struct namespace *ns, struct entry *prev,
00018                                const char *name);
00019 struct entry *av_namespace_resolve(struct namespace *ns, const char *path);
00020 char *av_namespace_getpath(struct entry *ent);
00021 void av_namespace_set(struct entry *ent, void *data);
00022 void *av_namespace_get(struct entry *ent);
00023 char *av_namespace_name(struct entry *ent);
00024 struct entry *av_namespace_next(struct entry *ent);
00025 struct entry *av_namespace_subdir(struct namespace *ns, struct entry *ent);
00026 struct entry *av_namespace_parent(struct entry *ent);
00027 void av_namespace_setflags(struct entry *ent, int setflags, int resetflags);
00028 struct entry *av_namespace_nth(struct namespace *ns, struct entry *parent,
00029                             unsigned int n);