#include "ObjProNet/dfnode.h"

#include "ObjProUsr/procnode.h"
#include "ObjProGen/outtok.h"
#include "ObjProGui/intfc.h"
#include "ObjProGui/remmen.h"
#include "ObjProGui/user.h"
#include "ObjProGui/dynmnu.h"
#include "ObjProArith/typout.h"
#include "ObjProGui/array.h"
#include "ObjProGui/interinit.h"
#include "ObjProGen/stattyp.h"
static EntityList * ProcessNodeNodeList = 0 ;
static InteractiveEntity * IntEntProcessNode ;
void ProcessNodeNodesInit();
ProcessNode::ProcessNode (const char * Name, int16 proc_in, int16 proc_out, 
		int32 procEltSz, int32 procNodeDelay, int32 procDeltaIn, 
		int32 procDeltaOut, int32 procOverlap, int32 procDelayIn, 
		int32 procEltSzOut, int32 procBlockSize, 
		TimingType procTheTimingType, 
		ArithType::ArithCapabilities procArithTypeIn, 
		ArithType::ArithCapabilities procArithTypeOut):
	ProcessNodeStr(Name, proc_in, proc_out, 
	 new StreamStr(procEltSz , procBlockSize , procArithTypeIn),  new StreamStr(procEltSzOut , procBlockSize , procArithTypeOut), 
	procNodeDelay, procDeltaIn, procDeltaOut, procOverlap, procDelayIn, 
	procTheTimingType)
,
	proc_in_1(proc_in),
	proc_out_2(proc_out),
	procEltSz_3(procEltSz),
	procNodeDelay_4(procNodeDelay),
	procDeltaIn_5(procDeltaIn),
	procDeltaOut_6(procDeltaOut),
	procOverlap_7(procOverlap),
	procDelayIn_8(procDelayIn),
	procEltSzOut_9(procEltSzOut),
	procBlockSize_10(procBlockSize),
	procTheTimingType_11(procTheTimingType),
	procArithTypeIn_12(procArithTypeIn),
	procArithTypeOut_13(procArithTypeOut)
{
} // end constructor

ProcessNode::~ProcessNode()
{
} // end destructor

int ProcessNode::CheckSafeDelete()
{
	int Safe_Check_Return = UserEntity::CheckSafeDelete();
	if (!Safe_Check_Return) return 0;
	return 1;
} // end check safe delete

void ProcessNodeNodesInit()
{
	if (ProcessNodeNodeList)  return ;
	ProcessNodeNodeList = new EntityList;
	IntEntProcessNode = new InteractiveEntity("ProcessNode", ProcessNodeNodeList,
		0, InteractiveNode, "procnode.h",
		0, "ProcessNodeStr");
	TheNodes->Append(IntEntProcessNode);
} // end initalization

static InitObj LocalInit(ProcessNodeNodesInit, "ProcessNode", "ProcessNodeStr");

