/*-------------------------------------------------------------------------
*
- * nodeSeqscan.h--
+ * nodeSeqscan.h
*
*
*
- * Copyright (c) 1994, Regents of the University of California
+ * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group
+ * Portions Copyright (c) 1994, Regents of the University of California
*
- * $Id: nodeSeqscan.h,v 1.4 1997/09/08 02:36:39 momjian Exp $
+ * src/include/executor/nodeSeqscan.h
*
*-------------------------------------------------------------------------
*/
#ifndef NODESEQSCAN_H
#define NODESEQSCAN_H
-extern TupleTableSlot *ExecSeqScan(SeqScan * node);
-extern bool ExecInitSeqScan(SeqScan * node, EState * estate, Plan * parent);
-extern int ExecCountSlotsSeqScan(SeqScan * node);
-extern void ExecEndSeqScan(SeqScan * node);
-extern void ExecSeqReScan(SeqScan * node, ExprContext * exprCtxt, Plan * parent);
-extern void ExecSeqMarkPos(SeqScan * node);
-extern void ExecSeqRestrPos(SeqScan * node);
+#include "access/parallel.h"
+#include "nodes/execnodes.h"
+
+extern SeqScanState *ExecInitSeqScan(SeqScan *node, EState *estate, int eflags);
+extern void ExecEndSeqScan(SeqScanState *node);
+extern void ExecReScanSeqScan(SeqScanState *node);
+
+/* parallel scan support */
+extern void ExecSeqScanEstimate(SeqScanState *node, ParallelContext *pcxt);
+extern void ExecSeqScanInitializeDSM(SeqScanState *node, ParallelContext *pcxt);
+extern void ExecSeqScanReInitializeDSM(SeqScanState *node, ParallelContext *pcxt);
+extern void ExecSeqScanInitializeWorker(SeqScanState *node,
+ ParallelWorkerContext *pwcxt);
#endif /* NODESEQSCAN_H */