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

📄 between.java

📁 RFID复杂事件处理系统的研究实验
💻 JAVA
字号:
package test;

public class Between extends NonLeaf{

	public Between(Between q)
	{
		super(q);
		this.operator=new String("^");
	}
	
	public Between()
	{
		super("^");
	}
	public C_Event work(NonLeaf n,Node n1)//n父结点;n1子结点 chronic
	{
		C_Event ce=null;
		Node n2;
		if(n1==n.getlchild()){
			n2=n.getrchild();				
		}else n2=n.getlchild();
		
		NonLeaf p1,p2;
		Leaf q1,q2;
		
		
			if(!n1.getisleaf() && n2.getisleaf())
			{
				p1=(NonLeaf)n1;
				p1.tran[2]+=p1.getmid_result().getLast().getel().size();
				p1.tran[3]+=2;
				q2=(Leaf)n2;
				if(q2.getevents().size()==0) ce=null;
				else{					
					for(int i=0;i<q2.getevents().size();i++)
					{
						if(q2.getevents().get(i).gettimestamp()>p1.getmid_result().getLast().getel().get(2).gettimestamp()
						&& q2.getevents().get(i).gettimestamp()<p1.getmid_result().getLast().getel().get(3).gettimestamp())
						{
							ce=new C_Event(q2.getevents().remove(i),p1.getmid_result().removeLast(),n);
							p1.tran[3]+=3;
							break;
						}
					}
										
				}
			}else{
				if(n1.getisleaf() && !n2.getisleaf())
				{					
					q1=(Leaf)n1;
					p2=(NonLeaf)n2;					
					if(p2.getmid_result().size()==0) ce=null;
					else{
						p2.tran[2]+=p2.getmid_result().getLast().getel().size();
						//p2.tran[3]+=2;
						for(int i=0;i<p2.getmid_result().size();i++)
						{
							if(p2.getmid_result().get(i).getel().get(3).gettimestamp()>q1.getevents().getLast().gettimestamp()
							&& p2.getmid_result().get(i).getel().get(2).gettimestamp()<q1.getevents().getLast().gettimestamp())
							{
								ce=new C_Event(q1.getevents().removeLast(),p2.getmid_result().remove(i),n);
								p2.tran[3]+=3;
								break;
							}
						}					
					}
				}
			}		
		return ce;
	}
	
	
}

⌨️ 快捷键说明

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