class UmlState
!!!144898.cpp!!!	sKind() : string
  return (parent()->kind() == aClassView)
    ? "state machine" : "state";
!!!144898.java!!!	sKind() : string
  return (parent().kind() == anItemKind.aClassView)
    ? "state machine" : "state";
!!!145026.cpp!!!	html(in pfix : string, in rank : uint, in level : uint) : void
  define();

  chapter((parent()->kind() == aClassView)
	  ? "StateMachine" : "State",
	  pfix, rank, "state", level);

  QCString s = description();
  
  if (!s.isEmpty()) {
    fw.write("<p>");
    writeq(description());
    fw.write("<br /></p>");
  }

  UmlState * ref = reference();
  
  if (ref != 0) {
    fw.write("<p>References ");
    ref->write();
    fw.write("</p>");
  }
  else {
    if (isActive())
      fw.write("<p>Active state</p>\n");
    
    UmlOperation * beh = specification();
    
    if (beh != 0) {
      fw.write("<p>Implements ");
      beh->write();
      fw.write("</p>");
    }
    
    QCString scpp, sjava;
    
    s = entryBehavior();
    scpp = cppEntryBehavior();
    sjava = javaEntryBehavior();
    
    if (!s.isEmpty() || !scpp.isEmpty() || !sjava.isEmpty()) {
      fw.write("<p>Entry Behavior :</p><ul>");
      
      if (!s.isEmpty()) {
	fw.write("<li>OCL : <pre>\n");
	writeq(s);
	fw.write("</pre></li>");
      }
      
      if (!scpp.isEmpty()) {
	fw.write("<li>C++ : <pre>\n");
	writeq(scpp);
	fw.write("</pre></li>");
      }
      
      if (!sjava.isEmpty()) {
	fw.write("<li>Java : <pre>\n");
	writeq(sjava);
	fw.write("</pre></li>");
      }
      
      fw.write("</ul>");
    }
    
    s = exitBehavior();
    scpp = cppExitBehavior();
    sjava = javaExitBehavior();
    
    if (!s.isEmpty() || !scpp.isEmpty() || !sjava.isEmpty()) {
      fw.write("<p>Exit Behavior :</p><ul>");
      
      if (!s.isEmpty()) {
	fw.write("<li>OCL : <pre>\n");
	writeq(s);
	fw.write("</pre></li>");
      }
      
      if (!scpp.isEmpty()) {
	fw.write("<li>C++ : <pre>\n");
	writeq(scpp);
	fw.write("</pre></li>");
      }
      
      if (!sjava.isEmpty()) {
	fw.write("<li>Java : <pre>\n");
	writeq(sjava);
	fw.write("</pre></li>");
      }
      
      fw.write("</ul>");
    }
    
    s = doActivity();
    scpp = cppDoActivity();
    sjava = javaDoActivity();
    
    if (!s.isEmpty() || !scpp.isEmpty() || !sjava.isEmpty()) {
      fw.write("<p>Do activity :</p><ul>");
      
      if (!s.isEmpty()) {
	fw.write("<li>OCL : <pre>\n");
	writeq(s);
	fw.write("</pre></li>");
      }
      
      if (!scpp.isEmpty()) {
	fw.write("<li>C++ : <pre>\n");
	writeq(scpp);
	fw.write("</pre></li>");
      }
      
      if (!sjava.isEmpty()) {
	fw.write("<li>Java : <pre>\n");
	writeq(sjava);
	fw.write("</pre></li>");
      }
      
      fw.write("</ul>");
    }
  }
  
  UmlStateDiagram * d = associatedDiagram();
  
  if (d != 0) {
    fw.write("<p>Diagram : ");
    d->write();
    fw.write("</p>");
  }

  write_properties();

  write_children(pfix, rank, level);

  unload(FALSE, FALSE);
!!!145026.java!!!	html(in pfix : string, in rank : uint, in level : uint) : void
  define();

  chapter((parent().kind() == anItemKind.aClassView)
	  ? "StateMachine" : "State",
	  pfix, rank, "state", level);

  String s = description();
  
  if (s.length() != 0) {
    fw.write("<p>");
    writeq(description());
    fw.write("<br /></p>");
  }
  
  UmlState ref = reference();
  
  if (ref != null) {
    fw.write("<p>References ");
    ref.write();
    fw.write("</p>");
  }
  else {
    if (isActive())
      fw.write("<p>Active state</p>\n");
    
    UmlOperation beh = specification();
    
    if (beh != null) {
      fw.write("<p>Implements ");
      beh.write();
      fw.write("</p>");
    }
    
    String scpp, sjava;
    
    s = entryBehavior();
    scpp = cppEntryBehavior();
    sjava = javaEntryBehavior();
    
    if ((s.length() != 0) || (scpp.length() != 0) || (sjava.length() != 0)) {
      fw.write("<p>Entry Behavior :</p><ul>");
      
      if (s.length() != 0) {
	fw.write("<li>OCL : <pre>\n");
	writeq(s);
	fw.write("</pre></li>");
      }
      
      if (scpp.length() != 0) {
	fw.write("<li>C++ : <pre>\n");
	writeq(scpp);
	fw.write("</pre></li>");
      }
      
      if (sjava.length() != 0) {
	fw.write("<li>Java : <pre>\n");
	writeq(sjava);
	fw.write("</pre></li>");
      }
      
      fw.write("</ul>");
    }
    
    s = exitBehavior();
    scpp = cppExitBehavior();
    sjava = javaExitBehavior();
    
    if ((s.length() != 0) || (scpp.length() != 0) || (sjava.length() != 0)) {
      fw.write("<p>Exit Behavior :</p><ul>");
      
      if (s.length() != 0) {
	fw.write("<li>OCL : <pre>\n");
	writeq(s);
	fw.write("</pre></li>");
      }
      
      if (scpp.length() != 0) {
	fw.write("<li>C++ : <pre>\n");
	writeq(scpp);
	fw.write("</pre></li>");
      }
      
      if (sjava.length() != 0) {
	fw.write("<li>Java : <pre>\n");
	writeq(sjava);
	fw.write("</pre></li>");
      }
      
      fw.write("</ul>");
    }
    
    s = doActivity();
    scpp = cppDoActivity();
    sjava = javaDoActivity();
    
    if ((s.length() != 0) || (scpp.length() != 0) || (sjava.length() != 0)) {
      fw.write("<p>Do activity :</p><ul>");
      
      if (s.length() != 0) {
	fw.write("<li>OCL : <pre>\n");
	writeq(s);
	fw.write("</pre></li>");
      }
      
      if (scpp.length() != 0) {
	fw.write("<li>C++ : <pre>\n");
	writeq(scpp);
	fw.write("</pre></li>");
      }
      
      if (sjava.length() != 0) {
	fw.write("<li>Java : <pre>\n");
	writeq(sjava);
	fw.write("</pre></li>");
      }
      
      fw.write("</ul>");
    }
  }
 
  UmlStateDiagram d = associatedDiagram();
  
  if (d != null) {
    fw.write("<p>Diagram : ");
    d.write();
    fw.write("</p>");
  }

  write_properties();

  write_children(pfix, rank, level);

  unload(false, false);
!!!151298.cpp!!!	memo_ref() : void
  states.addElement(this);
  UmlItem::memo_ref();
!!!151298.java!!!	memo_ref() : void
  states.addElement(this);
  super.memo_ref();

!!!151170.cpp!!!	ref_index() : void
  if (!states.isEmpty())
    fw.write("<a href=\"states.html\" target = \"projectFrame\"><b> -States- </b></a>");
!!!151170.java!!!	ref_index() : void
  if (!states.isEmpty())
    fw.write("<a href=\"states.html\" target = \"projectFrame\"><b> -States- </b></a>");
!!!151042.cpp!!!	generate_index() : void
  UmlItem::generate_index(states, "States", "states");
!!!151042.java!!!	generate_index() : void
  generate_index(states, "States", "states");
!!!149762.cpp!!!	chapterp() : bool
  return TRUE;
!!!149762.java!!!	chapterp() : bool
  return true;
