Package edu.wpi.grip.core.sockets
Class SocketImpl<T>
- java.lang.Object
-
- edu.wpi.grip.core.sockets.SocketImpl<T>
-
- Type Parameters:
T- The type of the value that this socket stores
- All Implemented Interfaces:
Socket<T>
- Direct Known Subclasses:
InputSocketImpl,OutputSocketImpl
public class SocketImpl<T> extends java.lang.Object implements Socket<T>
A concrete implementation ofSocket.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface edu.wpi.grip.core.sockets.Socket
Socket.Direction
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddConnection(Connection connection)Adds a connection to the socket.voidflagChanged()Notifies this socket that the value changed.java.util.Set<Connection>getConnections()Socket.DirectiongetDirection()INPUTif this is the input to a step,OUTPUTif this is the output of a step or source.SocketHint<T>getSocketHint()java.util.Optional<Source>getSource()If this socket is in a source return it.java.util.Optional<Step>getStep()If this socket is in a step return it.java.util.Optional<T>getValue()voidremoveConnection(Connection connection)Removes a connnection from this socket.voidsetSource(java.util.Optional<Source> source)voidsetStep(java.util.Optional<Step> step)voidsetValueOptional(java.util.Optional<? extends T> optionalValue)Set the value of the socket using anOptional, and fire off aSocketChangedEvent.java.lang.StringtoString()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface edu.wpi.grip.core.sockets.Socket
onValueChanged, setValue, simpleString
-
-
-
-
Method Detail
-
getSocketHint
public SocketHint<T> getSocketHint()
- Specified by:
getSocketHintin interfaceSocket<T>- Returns:
- A hint at what sort of data is in this socket.
-
setValueOptional
public void setValueOptional(java.util.Optional<? extends T> optionalValue)
Description copied from interface:SocketSet the value of the socket using anOptional, and fire off aSocketChangedEvent.- Specified by:
setValueOptionalin interfaceSocket<T>- Parameters:
optionalValue- The optional value to assign this socket to.
-
flagChanged
public void flagChanged()
Description copied from interface:SocketNotifies this socket that the value changed. This is usually only needed for sockets that contain mutable data such as images or other native classes (Point, Size, etc) that are written to by OpenCV operations.- Specified by:
flagChangedin interfaceSocket<T>
-
getValue
public java.util.Optional<T> getValue()
-
getStep
public java.util.Optional<Step> getStep()
Description copied from interface:SocketIf this socket is in a step return it.- Specified by:
getStepin interfaceSocket<T>- Returns:
- The step that this socket is part of
- See Also:
Socket.getSource()
-
setStep
public void setStep(java.util.Optional<Step> step)
-
getSource
public java.util.Optional<Source> getSource()
Description copied from interface:SocketIf this socket is in a source return it.- Specified by:
getSourcein interfaceSocket<T>- Returns:
- The source that this socket is part of.
- See Also:
Socket.getStep()
-
setSource
public void setSource(java.util.Optional<Source> source)
-
getDirection
public Socket.Direction getDirection()
Description copied from interface:SocketINPUTif this is the input to a step,OUTPUTif this is the output of a step or source.- Specified by:
getDirectionin interfaceSocket<T>- Returns:
- The direction of the socket.
-
getConnections
public java.util.Set<Connection> getConnections()
- Specified by:
getConnectionsin interfaceSocket<T>- Returns:
- The set of connections that have this socket as an input or output.
-
addConnection
public void addConnection(Connection connection)
Description copied from interface:SocketAdds a connection to the socket.- Specified by:
addConnectionin interfaceSocket<T>- Parameters:
connection- The connection to add to this socket.
-
removeConnection
public void removeConnection(Connection connection)
Description copied from interface:SocketRemoves a connnection from this socket.- Specified by:
removeConnectionin interfaceSocket<T>- Parameters:
connection- The connection to remove from this socket.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-