/*
 * Wine mapping object
 *
 * Copyright (C) 2004 TransGaming Technologies Inc.
 */

#ifndef __WINE_SERVER_MAPPING_H
#define __WINE_SERVER_MAPPING_H

#include "object.h"

struct mapping
{
    struct object   obj;             /* object header */
    int             size_high;       /* mapping size */
    int             size_low;        /* mapping size */
    int             protect;         /* protection flags */
    struct file    *file;            /* file mapped */
    int             header_size;     /* size of headers (for PE image mapping) */
    void           *base;            /* default base addr (for PE image mapping) */
    struct file    *shared_file;     /* temp file for shared PE mapping */
    int             shared_size;     /* shared mapping total size */
    struct mapping *shared_next;     /* next in shared PE mapping list */
    struct mapping *shared_prev;     /* prev in shared PE mapping list */
};


#endif  /* __WINE_SERVER_MAPPING_H */
