1 /*-------------------------------------------------------------------------
2  *
3  * nodeForeignscan.h
4  *
5  *
6  *
7  * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
8  * Portions Copyright (c) 1994, Regents of the University of California
9  *
10  * src/include/executor/nodeForeignscan.h
11  *
12  *-------------------------------------------------------------------------
13  */
14 #ifndef NODEFOREIGNSCAN_H
15 #define NODEFOREIGNSCAN_H
16 
17 #include "access/parallel.h"
18 #include "nodes/execnodes.h"
19 
20 extern ForeignScanState *ExecInitForeignScan(ForeignScan *node, EState *estate, int eflags);
21 extern void ExecEndForeignScan(ForeignScanState *node);
22 extern void ExecReScanForeignScan(ForeignScanState *node);
23 
24 extern void ExecForeignScanEstimate(ForeignScanState *node,
25 									ParallelContext *pcxt);
26 extern void ExecForeignScanInitializeDSM(ForeignScanState *node,
27 										 ParallelContext *pcxt);
28 extern void ExecForeignScanReInitializeDSM(ForeignScanState *node,
29 										   ParallelContext *pcxt);
30 extern void ExecForeignScanInitializeWorker(ForeignScanState *node,
31 											ParallelWorkerContext *pwcxt);
32 extern void ExecShutdownForeignScan(ForeignScanState *node);
33 
34 #endif							/* NODEFOREIGNSCAN_H */
35