Main Page   Packages   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members  

LockNodeInfo.java

00001 package gov.nasa.arc.ase.jpf.jvm.runtime;
00002 
00003 import java.util.*;
00004 import gov.nasa.arc.ase.jpf.*;
00005 import gov.nasa.arc.ase.jpf.jvm.*;
00006 import gov.nasa.arc.ase.util.Debug;
00007 
00008 public class LockNodeInfo{
00009 // ifdef RACE
00010   private Lock lock;
00011   private boolean marked = false;
00012   private LockAccessList accesses = new LockAccessList();
00013 
00014 //#endif RACE
00015   public LockNodeInfo(Lock lock){
00016     this.lock = lock;
00017   }  
00018   public void addCallChain(ThreadInfo thread){
00019     accesses.addCallChain(thread);    
00020   }  
00021   public Lock getLock(){
00022     return lock;
00023   }  
00024   public LockAccessList getLockAccessList(){
00025     return accesses;
00026   }  
00027   public boolean isMarked(){
00028     return marked;
00029   }  
00030   public void mark(){
00031     marked = true;
00032   }  
00033   public void print(){
00034     LockOrder.print("Lock on ");
00035     lock.print();
00036     LockOrder.print(" is taken last");
00037     accesses.print();
00038   }  
00039   public void printTreeInfo(){
00040     lock.print();
00041   }  
00042   public void unMark(){
00043     marked = false;
00044   }  
00045 }

Generated at Thu Feb 7 06:49:57 2002 for Bandera by doxygen1.2.10 written by Dimitri van Heesch, © 1997-2001