hmi.environment.semaine
Class XuukSemaineBridge
java.lang.Object
java.lang.Thread
eu.semaine.components.Component
hmi.environment.semaine.XuukSemaineBridge
- All Implemented Interfaces:
- eu.semaine.jms.SEMAINEMessageAvailableListener, XuukListener, Runnable
public class XuukSemaineBridge
- extends eu.semaine.components.Component
- implements XuukListener
sends messages from the Xuuk EyeBox program to the semaine API over the channel semaine.data.hmi.sensor.facetracker.
Does NOT send the eye-loking info, because that part of the xuuk software does not work.
singleton -- i.e. one of these per JVM (actually, only one per machine as you cannot have more than one xuuk connected); using static getXuukSemaineBridge you get the instance.
message content:
type (content): faceappeared (Face) | facedisappeared (int id as attrib) | newfacepositions (more faces) | eyeschange (EyePair) | eyesdisappeared (int id as attrib) \ neweyespositions (list of eyepairs)
| Nested classes/interfaces inherited from class eu.semaine.components.Component |
eu.semaine.components.Component.State |
| Fields inherited from class eu.semaine.components.Component |
inputWaiting, isInput, isOutput, log, meta, receivers, senders, state, waitingTime |
| Methods inherited from class eu.semaine.components.Component |
exitRequested, messageAvailableFrom, requestExit, run |
| Methods inherited from class java.lang.Thread |
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield |
logger
private static org.slf4j.Logger logger
facetrackSender
private eu.semaine.jms.sender.XMLSender facetrackSender
singleton
private static XuukSemaineBridge singleton
XuukSemaineBridge
public XuukSemaineBridge()
throws javax.jms.JMSException
- Throws:
javax.jms.JMSException
getXuukSemaineBridge
public static XuukSemaineBridge getXuukSemaineBridge()
customStartIO
public void customStartIO()
throws Exception
- Slow loop, because there is no proactive element here...
- Overrides:
customStartIO in class eu.semaine.components.Component
- Throws:
Exception
act
protected void act()
throws javax.jms.JMSException
- Overrides:
act in class eu.semaine.components.Component
- Throws:
javax.jms.JMSException
react
protected void react(eu.semaine.jms.message.SEMAINEMessage m)
throws eu.semaine.exceptions.MessageFormatException
- Overrides:
react in class eu.semaine.components.Component
- Throws:
eu.semaine.exceptions.MessageFormatException
faceAppeared
public void faceAppeared(Face face)
- Specified by:
faceAppeared in interface XuukListener
faceDisappeared
public void faceDisappeared(int id)
- Specified by:
faceDisappeared in interface XuukListener
newFacePositions
public void newFacePositions(ArrayList<Face> faces)
- Specified by:
newFacePositions in interface XuukListener
eyesChange
public void eyesChange(EyePair eyes)
- Specified by:
eyesChange in interface XuukListener
eyesDisappeared
public void eyesDisappeared(int id)
- Specified by:
eyesDisappeared in interface XuukListener
newEyesPositions
public void newEyesPositions(ArrayList<EyePair> eyes)
- Specified by:
newEyesPositions in interface XuukListener