/* -*-	Mode:C++; c-basic-offset:8; tab-width:8; indent-tabs-mode:t -*- */

/* By Pablo Martin and Paula Ballester,
 * Strathclyde University, Glasgow.
 * June, 2003.
*/

/* Copyright (c) 2003 Strathclyde University of Glasgow, Scotland.
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 *
 * 1. Redistributions of source code and binary code must contain
 * the above copyright notice, this list of conditions and the following
 * disclaimer.
 *
 * 2. All advertising materials mentioning features or use of this software
 * must display the following acknowledgement:
 * This product includes software developed at Strathclyde University of
 * Glasgow, Scotland.
 *
 * 3. The name of the University may not be used to endorse or promote
 * products derived from this software without specific prior written
 * permission.
 * STRATHCLYDE UNIVERSITY OF GLASGOW, MAKES NO REPRESENTATIONS
 * CONCERNING EITHER THE MERCHANTABILITY OF THIS SOFTWARE OR THE
 * SUITABILITY OF THIS SOFTWARE FOR ANY PARTICULAR PURPOSE.  The software
 * is provided "as is" without express or implied warranty of any kind.
*/

#ifndef ns_classifier_umts_h
#define ns_classifier_umts_h

#include "config.h"
#include "packet.h"
#include "ip.h"
#include "classifier.h"

#define BCAST_ADDR_MASK	mask_

class UmtsClassifier : public Classifier {
public:
	UmtsClassifier();
	void recv(Packet* p, Handler* h);
	NsObject* find(Packet*);
protected:
	int command(int argc, const char*const* argv);
	int classify(Packet * p);

	// related to the node i am attached
	NsObject* index_;		// node i am attached
	int id_;			// node id
	int type_;		// node type
};

#endif
