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

📄 bt-core.h

📁 NS2网络仿真软件是目前最为流行的网络仿真模拟软件
💻 H
📖 第 1 页 / 共 2 页
字号:
	TDDHandler 		tdd_handler_;	static int 		firsttime_;	int 			namTrace_;		int 	seed_;	int 	masterIndex_;	int 	isOffset_;	double	xpos_;	double  ypos_;	double  interArrival_;	uchar 	am_addr_;	uchar 	new_am_addr_;	int 	numACLlinks_;	/* Identifies currently used clock ie, CLK or CLKN */	clock_type tx_clock_;public:	Baseband();	void 	sendUp (Packet* p, Handler* h);	int 	command (int, const char*const* );	int 	recv_filter (Packet*);	double 	calcLossProb (bt_packet_type, double); 	void 	getAM_ADDR();	void 	sendIDPacket(int);	void 	sendFHSPacket();	void 	sendPOLLPacket(uchar);	void 	sendNULLPacket(uchar);	void 	sendPacket (Packet* p);	void 	sendHCI_Inquiry_Result(){}	void 	sendPageResult() {}	void 	sendPageSuccess(int) {}	void 	sendPollResponse() {}	void 	handleInqRespTO();	void	start();	Packet* 	schedule_next() {}	//	HCI_commands	void 	HCI_Inquiry (long, int);	void	HCI_Create_Connection (int, int);		void 	updateInqPageParam();	void 	initInqPageParam();	void 	changeState(state_type);	uchar 	FH_kernel(int CLK, int CLK_frozen, FH_sequence_type FH_seq_type_t,                int BD_addr); 	uchar 	ADD_mod32(uchar ip1, uchar ip2);	uchar 	EXOR_5(uchar ip1, uchar ip2);	uchar 	EXOR_9(uint ip1, uint ip2);	uchar 	PERM(uchar ip1, uchar ip2, uint ip3);	uchar 	ADD_mod79(uchar ip1, uchar ip2, uchar ip3, uchar ip4);	void  	BFLY(uchar ctrl, uchar& ip1, uchar& ip2);};/*==============================================================			MAC SCHEDULING MODULE==============================================================*///***********************Helper classes*************************class BT_DRRScheduler; class BluePollHandler : public Handler {public:	BluePollHandler(BT_DRRScheduler* sched) : sched_(sched) {}	void handle(Event* e);	BT_DRRScheduler* sched_;};class BluePollEvent : public Event {public: 	BluePollEvent():Event() {}	int	num_;};/****************************************************************			SCHEDULER CLASS****************************************************************/class BT_DRRScheduler : public BiConnector {	friend class BluePollHandler;	double 	rate_[MaxQueues];	uchar 	tos_[MaxQueues];	int 	dc_[MaxQueues];	uchar 	incr_[MaxQueues];	int	backlog_fwd_[MaxQueues];	int	backlog_rev_[MaxQueues];	uchar 	active_[MaxQueues];	int 	quanta_[MaxQueues];	uchar 	maxPollInterval_[MaxQueues];	uchar 	nextround_;	BluePollEvent**	pollEvent_;	double	cycleTime_;	//double 	serviceRate_;	double  slotsPerCycle_;	double 	totalRate_;	int 	totalQuanta_;	PacketQueue* pollQ_;	NsObject** lc_;		uchar 	currQueue_;	uchar 	numFlows_;	BluePollHandler	ph_;public:	BT_DRRScheduler ();	int 	command(int, const char*const*);	uchar	updateQuanta (uchar, int, bt_packet_type);		uchar   mapQoS(uchar, flowSpec*, con_attr*);	uchar	nextActive();	Packet* schedule_next();	void	sendUp (Packet*, Handler*);		void 	schedulePoll(int);	Packet* createPOLLpacket(uchar);};/*================================================================			ARQ MODULE================================================================*//*****************************************************************	LINK CONTROLLER CLASS: Bluetooth Spec v1.0A pp 81*****************************************************************/class LinkController : public BiConnector {	int 	tx_cnt_;	int 	tx_thresh_;	unsigned char 	seq_, ack_, seq_old_;		int 		am_addr_; 	unsigned char 		firsttime_; 	Packet* 	curr_reg_;	Packet* 	next_reg_;public:	LinkController();	void sendDown (Packet* p, Handler* h);	void sendUp (Packet* p, Handler* h);	Packet* send();	int  pktSize();	void compose_pkt (Packet* p);	void switch_reg();	void flush_payload();	void initialize();	void recvACK();};class L2CAP : public BiConnector {	int 	cid_; 	int 	identifier_;	uchar	callback_[7];	bt_packet_type 	packetType_[7];	list<CID_attr*>*	cid_list_vec_;		queue<WriteReq*>*	write_reqQ_;public:	L2CAP();	void 		L2CA_ConnectReq (uchar psm, uchar connection_handle, bt_packet_type);	void 		sendUp (Packet* p, Handler* h); 	void		dataWrite (Packet* p, uchar lcid);	void 		callback(uchar ch);	void 		L2CA_ConnectRsp (CID_attr* cid, uchar result);	void		sendL2CAP_ConnectRequest (int ch, uchar scid, uchar id, uchar psm);	void		sendL2CAP_ConnectRsp (CID_attr* cid, uchar result);	bt_packet_type 	getPacketType (Packet*, uchar);	CID_attr*	findCID (uchar cid, uchar connection_handle);	CID_attr*	findCID (uchar cid);};/*====================================================================			LEAKY BUCKET MODULE====================================================================*///***********************Helper Classes*******************************class LBF;class SendHandler : public Handler {public:	SendHandler(LBF* lbf) : lbf_(lbf) {}	void handle(Event* e);	LBF* lbf_;};class TokenHandler : public Handler {public:	TokenHandler(LBF* lbf) : lbf_(lbf) {}	void handle(Event* e);	LBF* lbf_;};/*******************************************************************			LEAKY BUCKET FILTER*******************************************************************/class LBF : public BiConnector {	friend class SendHandler;	friend class TokenHandler;	int firsttime_;	void updatetokens();	double tokens_; 	double tokenRate_; 	int bucket_; 	int qlength_;	int conn_handle_;	double peak_bw_;	double lastupdate_;	PacketQueue *inputQ_;	PacketQueue *blockedQ_;	Event send_ev_;	SendHandler sh_;	TokenHandler th_;public:	LBF();	void release();	void setParameters(flowSpec*);	void recv(Packet *, Handler *);};/*==================================================================		LINK MANAGER PROTOCOL MODULE==================================================================*/class LMP : public BiConnector {	PacketQueue* 		l2capq_;	PacketQueue* 		lmpq_;	BT_DRRScheduler*   	sched_;	BTHost* 		bthost_;	LBF*			tbf_;	uchar 			am_addr_;	uchar			packetType_;	uchar			pollInterval_;	uchar 			callback_;	con_attr 		qoslm_;	int			master_;public:	LMP();	int 	command(int argc, const char*const* argv);	void	HCI_QoS_Setup (flowSpec*); 	void	HCI_change_connection_packet_type (uchar);	void    HCI_accept_connection_request();	void 	callback();	void 	sendDown(Packet*, Handler*);	void 	sendUp(Packet*, Handler*);	void 	sendLMPCommand(uchar, uchar);};struct HL_proto {	NsObject* 	uptarget_;	uchar		arp_table_[256];	uchar 		cid;				uchar		value;};		/*=============================================================			BTHOST MODULE=============================================================*/class BTHost : public Connector {	// bind variables	int inqTimeout_;	int numResponses_;	int bd_addr_;	uchar master_;		int numInqResp_;	int numPaged_;	int numConnections_;	int currPaged_;	int numApps_;	// pointers to other simulation objects	Baseband* 	lm_;	L2CAP*	     	l2cap_;	NsObject**   	trafgen_;    	LMP**   	linkq_;    	// structures required for multiplexing protocols over L2CAP	HL_proto	proto1_;	HL_proto	proto2_;	vector<FHS_payload*>	vec_addr_;	int 		active_addr_[7];	bt_packet_type  type_[7];	int		slave_am_addr_;	string		appNames_[7];	flowSpec**	appFlowSpec_;	public:	BTHost();	int  command(int, const char*const*); 	// HCI Events	void HCI_Inquiry_Result (vector<FHS_payload*>&);	void HCI_Connection_Complete_Event (char);	void sendHCICreateConnection();	void HCI_QoS_Setup_Complete_Event(char, bt_packet_type);	void HCI_ConnectionRequestEvent(uchar);			// L2CA Actions	void L2CA_ConnectCfm (int, uchar, uchar);		void L2CA_ConnectInd (CID_attr*, uchar);	void recv(Packet*, Handler*); 		void dataRead (Packet*, CID_attr*);	void findAppNames();};#endif

⌨️ 快捷键说明

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