de.sciss.jcollider
Class Group

java.lang.Object
  extended by de.sciss.jcollider.Node
      extended by de.sciss.jcollider.Group
All Implemented Interfaces:
Constants, TreeNode

public class Group
extends Node

Mimics SCLang's Group class, that is, it's a client side representation of a group in the synthesis graph

Version:
0.32, 25-Feb-08
Author:
Hanns Holger Rutz
Warning:
this is a quick direct translation from SClang which is largely untested. before all methods have been thoroughly verified, excepted some of them to be wrong or behave different than expected. what certainly works is instantiation, new- and free-messages

Field Summary
 
Fields inherited from interface de.sciss.jcollider.Constants
kAddAfter, kAddBefore, kAddReplace, kAddToHead, kAddToTail, kAudioRate, kControlRate, kDemandRate, kDoneFree, kDoneFreeAll, kDoneFreeAllPred, kDoneFreeAllSucc, kDoneFreeGroup, kDoneFreePausePred, kDoneFreePauseSucc, kDoneFreePred, kDoneFreePredGroup, kDoneFreePredGroupDeep, kDoneFreeSucc, kDoneFreeSuccGroup, kDoneFreeSuccGroupDeep, kDoneNothing, kDonePause, kDumpBoth, kDumpHex, kDumpOff, kDumpText, kHeaderAIFF, kHeaderIRCAM, kHeaderNeXT, kHeaderRaw, kHeaderWAVE, kSampleALaw, kSampleDouble, kSampleFloat, kSampleInt16, kSampleInt24, kSampleInt32, kSampleInt8, kSampleMuLaw, kScalarRate
 
Constructor Summary
Group(Group target)
           
Group(Node target, int addAction)
           
 
Method Summary
 OSCMessage addAfterMsg(Node aNode)
           
 OSCMessage addBeforeMsg(Node aNode)
           
 OSCMessage addReplaceMsg(Node aNode)
           
 OSCMessage addToHeadMsg(Group aGroup)
           
 OSCMessage addToTailMsg(Group aGroup)
           
static Group after(Node aNode)
           
static Group basicNew(Server server)
           
static Group basicNew(Server server, int nodeID)
           
static Group before(Node aNode)
           
 Enumeration children()
           
 void deepFree()
           
 OSCMessage deepFreeMsg()
           
 void freeAll()
           
 OSCMessage freeAllMsg()
           
 boolean getAllowsChildren()
           
 TreeNode getChildAt(int childIndex)
           
 int getChildCount()
           
 Node getHeadNode()
           
 int getIndex(TreeNode node)
           
 Node getTailNode()
           
static Group head(Group aGroup)
           
 boolean isLeaf()
           
 void moveNodeToHead(Node aNode)
           
 OSCMessage moveNodeToHeadMsg(Node aNode)
           
 void moveNodeToTail(Node aNode)
           
 OSCMessage moveNodeToTailMsg(Node aNode)
           
 OSCMessage newMsg()
           
 OSCMessage newMsg(Group target)
           
 OSCMessage newMsg(Node target, int addAction)
          Note: this sets the group!
static Group replace(Node nodeToReplace)
           
protected  void setHeadNode(Node headNode)
           
protected  void setTailNode(Node tailNode)
           
static Group tail(Group aGroup)
           
 String toString()
           
 
Methods inherited from class de.sciss.jcollider.Node
equals, fill, fill, fillMsg, fillMsg, free, freeMsg, getGroup, getName, getNodeID, getParent, getPredNode, getServer, getSuccNode, hashCode, isPlaying, isRunning, map, map, map, map, mapMsg, mapMsg, mapMsg, mapMsg, mapn, mapn, mapn, mapn, mapnMsg, mapnMsg, mapnMsg, mapnMsg, moveAfter, moveAfterMsg, moveBefore, moveBeforeMsg, moveToHead, moveToHeadMsg, moveToTail, moveToTailMsg, printOn, query, query, queryMsg, register, register, release, release, releaseMsg, releaseMsg, run, run, runMsg, runMsg, set, set, set, set, setGroup, setMsg, setMsg, setMsg, setMsg, setn, setn, setName, setnMsg, setnMsg, setPlaying, setPredNode, setRunning, setSuccNode, trace, traceMsg
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Group

public Group(Group target)
      throws IOException
Throws:
IOException

Group

public Group(Node target,
             int addAction)
      throws IOException
Throws:
IOException
Method Detail

getHeadNode

public Node getHeadNode()

getTailNode

public Node getTailNode()

setHeadNode

protected void setHeadNode(Node headNode)

setTailNode

protected void setTailNode(Node tailNode)

newMsg

public OSCMessage newMsg()

newMsg

public OSCMessage newMsg(Group target)

newMsg

public OSCMessage newMsg(Node target,
                         int addAction)
Note: this sets the group!

Throws:
ClassCastException - if target is not a group and addAction is either kAddToHead or kAddToTail

basicNew

public static Group basicNew(Server server)

basicNew

public static Group basicNew(Server server,
                             int nodeID)

after

public static Group after(Node aNode)
                   throws IOException
Throws:
IOException

before

public static Group before(Node aNode)
                    throws IOException
Throws:
IOException

head

public static Group head(Group aGroup)
                  throws IOException
Throws:
IOException

tail

public static Group tail(Group aGroup)
                  throws IOException
Throws:
IOException

replace

public static Group replace(Node nodeToReplace)
                     throws IOException
Throws:
IOException

addToHeadMsg

public OSCMessage addToHeadMsg(Group aGroup)

addToTailMsg

public OSCMessage addToTailMsg(Group aGroup)

addAfterMsg

public OSCMessage addAfterMsg(Node aNode)

addBeforeMsg

public OSCMessage addBeforeMsg(Node aNode)

addReplaceMsg

public OSCMessage addReplaceMsg(Node aNode)

moveNodeToHead

public void moveNodeToHead(Node aNode)
                    throws IOException
Throws:
IOException

moveNodeToTail

public void moveNodeToTail(Node aNode)
                    throws IOException
Throws:
IOException

moveNodeToHeadMsg

public OSCMessage moveNodeToHeadMsg(Node aNode)

moveNodeToTailMsg

public OSCMessage moveNodeToTailMsg(Node aNode)

freeAll

public void freeAll()
             throws IOException
Throws:
IOException

freeAllMsg

public OSCMessage freeAllMsg()

deepFree

public void deepFree()
              throws IOException
Throws:
IOException

deepFreeMsg

public OSCMessage deepFreeMsg()

toString

public String toString()
Overrides:
toString in class Object

getChildAt

public TreeNode getChildAt(int childIndex)

getChildCount

public int getChildCount()

getIndex

public int getIndex(TreeNode node)

getAllowsChildren

public boolean getAllowsChildren()

isLeaf

public boolean isLeaf()

children

public Enumeration children()