1 /*------------------------------------------------------------------------- 2 * 3 * nodeForeignscan.h 4 * 5 * 6 * 7 * Portions Copyright (c) 1996-2021, 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 extern void ExecAsyncForeignScanRequest(AsyncRequest *areq); 35 extern void ExecAsyncForeignScanConfigureWait(AsyncRequest *areq); 36 extern void ExecAsyncForeignScanNotify(AsyncRequest *areq); 37 38 #endif /* NODEFOREIGNSCAN_H */ 39