src/simple.h
author Tero Marttila <terom@fixme.fi>
Sat, 13 Dec 2008 19:55:50 +0200
branchnew-evsql
changeset 53 0d6e07f4c9a1
parent 8 21bb5cdca4db
permissions -rw-r--r--
separate evsql documentation
6
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     1
#ifndef SIMPLE_H
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     2
#define SIMPLE_H
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     3
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     4
/*
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     5
 * A simple static in-memory filesystem structure.
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     6
 */
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     7
8
21bb5cdca4db working simple_readdir
Tero Marttila <terom@fixme.fi>
parents: 6
diff changeset
     8
#include "evfuse.h"
6
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     9
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    10
/*
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    11
 * A simple file/dir.
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    12
 */
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    13
struct simple_node {
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    14
    // inode number
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    15
    fuse_ino_t inode;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    16
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    17
    // mode
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    18
    mode_t mode_type;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    19
    mode_t mode_perm;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    20
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    21
    // parent node
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    22
    fuse_ino_t parent;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    23
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    24
    // name
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    25
    const char *name;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    26
    
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    27
    // data
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    28
    const char *data;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    29
};
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    30
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    31
/*
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    32
 * General information.
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    33
 */
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    34
struct simple_fs;
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    35
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    36
/*
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    37
 * Initialize simple, and get the fuse_lowlevel_ops.
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    38
 */
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    39
struct fuse_lowlevel_ops *simple_init ();
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    40
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    41
/*
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    42
 * Create a new simple_fs.
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    43
 */
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    44
struct simple_fs *simple_new (const struct simple_node *node_list);
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    45
d2036d7799fd new 'simple' module, plus hello_simple
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    46
#endif /* SIMPLE_H */