backboneutility.cc

来自「clustering for ns-2 simulation」· CC 代码 · 共 54 行

CC
54
字号

/**
 * Copyright (c) 2006 Michele Mastrogiovanni.
 *
 *   Licensed under the Apache License, Version 2.0 (the "License");
 *   you may not use this file except in compliance with the License.
 *   You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 *   Unless required by applicable law or agreed to in writing, software
 *   distributed under the License is distributed on an "AS IS" BASIS,
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *   See the License for the specific language governing permissions and
 *   limitations under the License.
 *
 */
 
#include "BackboneUtility.h"

static class BackboneUtilityClass : public TclClass {
public:
    BackboneUtilityClass() : TclClass("Utility/BACKBONE") {}
    TclObject* create(int , const char*const* ) {
        return(new BackboneUtility());
    }
} class_backbone_utility;

void 
BackboneUtility::setBackbone(NodeAddress node, NodeList & neighbors)
{
	for (NodeList::iterator n = neighbors.begin(); n != neighbors.end(); n++) {
		backbone[node].insert(*n);
		backbone[*n].insert(node);
	}
}

void
BackboneUtility::dump()
{
	ClusteringUtility::dump();
	
	//
	// Stampa i vicini di ogni nodo sul backbone.
	//
	cout << backbone.size() << endl;
	for (map<NodeAddress, NodeList>::iterator n = backbone.begin(); n != backbone.end(); n++) {
		cout << (n->first) << " ";
		for (NodeList::iterator i = (n->second).begin(); i != (n->second).end(); i++)
			cout << *i << " ";
		cout << endl;
	}
}

⌨️ 快捷键说明

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