checkpoint

This commit is contained in:
Craig Dowell
2007-07-09 15:16:27 -07:00
parent 849c347d2e
commit bd0cbfb5b8
7 changed files with 202 additions and 45 deletions

View File

@@ -1,7 +1,5 @@
/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
/*
* Copyright (c) 2007 University of Washington
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation;
@@ -14,11 +12,8 @@
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* Author: Craig Dowell <craigdo@ee.washingon.edu>
*
* Wed Feb 14 16:05:46 PST 2007 craigdo: Created
*/
#ifndef CHANNEL_H
#define CHANNEL_H
@@ -41,6 +36,13 @@ class Channel : public Object
{
public:
static const InterfaceId iid;
enum ChannelType
{
Unknown = 0,
PointToPoint,
Multipoint
};
Channel ();
Channel (std::string name);
@@ -61,9 +63,18 @@ public:
*/
virtual Ptr<NetDevice> GetDevice (uint32_t i) const = 0;
/**
* \returns the abstract type of this channel. Right now this is only
* PointToPoint (p2p) or Multipoint (Ethernet).
*
* This method must be implemented by subclasses.
*/
virtual ChannelType GetType (void) const = 0;
protected:
virtual ~Channel ();
std::string m_name;
virtual ~Channel ();
std::string m_name;
ChannelType m_channelType;
private:
};