1 /*-------------------------------------------------------------------------
4 * Basic buffer manager data types.
7 * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
8 * Portions Copyright (c) 1994, Regents of the University of California
10 * src/include/storage/buf.h
12 *-------------------------------------------------------------------------
20 * Zero is invalid, positive is the index of a shared buffer (1..NBuffers),
21 * negative is the index of a local buffer (-1 .. -NLocBuffer).
25 #define InvalidBuffer 0
29 * True iff the buffer is invalid.
31 #define BufferIsInvalid(buffer) ((buffer) == InvalidBuffer)
35 * True iff the buffer is local (not visible to other backends).
37 #define BufferIsLocal(buffer) ((buffer) < 0)
40 * Buffer access strategy objects.
42 * BufferAccessStrategyData is private to freelist.c
44 typedef struct BufferAccessStrategyData
*BufferAccessStrategy
;