⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 socket.cpp

📁 机甲指挥官2源代码
💻 CPP
字号:
//===========================================================================//
// File:	socket.cc                                                        //
// Contents: Implementation details for Socket and its iterator              //
//---------------------------------------------------------------------------//
// Copyright (C) Microsoft Corporation. All rights reserved.                 //
//===========================================================================//

#include "StuffHeaders.hpp"

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Socket ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//
//#############################################################################
// Socket
//#############################################################################
//
Socket::Socket(Node *node)
{
	socketsNode = node;
}

//
//#############################################################################
// ~Socket
//#############################################################################
//
Socket::~Socket()
{
	Check_Object(this);
}

//
//#############################################################################
// AddImplementation
//#############################################################################
//
void
   Socket::AddImplementation(Plug*)
{
	Check_Object(this);
	STOP(("Socket::AddImplementation - virtual method with no override"));
}

//
//#############################################################################
// IsEmpty
//#############################################################################
//
bool
   Socket::IsEmpty()
{
	Check_Object(this);
	STOP(("Socket::IsEmpty - virtual method with no override"));
	return true;
}

//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ SocketIterator ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

//
//#############################################################################
// Remove
//#############################################################################
//
void
	SocketIterator::Remove()
{
	Check_Object(this);
	STOP(("SocketIterator::Remove - Should never reach here"));
}

//
//#############################################################################
// DeletePlugs
//#############################################################################
//
void
	SocketIterator::DeletePlugs(bool defeat_release_node)
{
	Check_Object(this);
	Plug *plug;
	Node *save_release_node = NULL;

	if (defeat_release_node)
	{
   	Check_Object(socket);
		save_release_node = socket->GetReleaseNode();
		socket->SetReleaseNode(NULL);
	}

	First();
	while ((plug = ReadAndNextPlug()) != NULL)
	{
		Unregister_Object(plug);
		delete plug;
	}

	if (defeat_release_node)
	{
   	Check_Object(socket);
		socket->SetReleaseNode(save_release_node);
	}
}

//
//#############################################################################
// InsertImplementation
//#############################################################################
//
void
	SocketIterator::InsertImplementation(Plug*)
{
	//
	// Should never reach here
	//
	Check_Object(this);
	STOP(("SocketIterator::InsertImplementation - Should never reach here"));
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -