Documentation ¶
Index ¶
- Constants
- Variables
- func AnnounceSelf(metadata *agentlogic.Agent)
- func ClosePath(disconnectedAgent agentlogic.Agent, messageType MessageType)
- func InitCommunicationType(path string, messageType MessageType)
- func InitD2DCommuncation(agentType agentlogic.AgentType)
- func SendGoalFound(senderId string, goal agentlogic.Goal, posiition agentlogic.Vector, ...) error
- func SendMission(senderId string, mission *agentlogic.Mission, channelPath string) error
- func SendRecalculation(metadata agentlogic.Agent, selfId string)
- func SendReorganization(metadata agentlogic.Agent, selfId string)
- func SendState(state *agentlogic.State)
- func SendVizGoal(goal GoalMessage)
- type Channel
- type DiscoveryMessage
- type GoalMessage
- type Message
- type MessageMeta
- type MessageType
- type MissionMessage
- type StateMessage
- type VisualizationChannel
- type VisualizationMessage
Constants ¶
View Source
const ( DiscoveryMessageType = 0 StateMessageType = 1 MissionMessageType = 2 ReorganizationMessageType = 3 RecalculatorMessageType = 4 GoalMessageType = 5 )
View Source
const BufferSize = 128
BufferSize is the number of incoming messages to buffer for each topic.
View Source
const DiscoveryInterval = time.Hour
DiscoveryInterval is how often we re-publish our mDNS records.
View Source
const DiscoveryServiceTag = "D2D_Comunidad"
DiscoveryServiceTag is used in our mDNS advertisements to discover other chat peers.
View Source
const VisualizationAgentType = -133
View Source
const VisualizationMessageType = -13
Variables ¶
View Source
var ChannelVisualization = make(chan Message, BufferSize)
View Source
var DiscoveryChannel = make(chan *DiscoveryMessage, BufferSize)
View Source
var GoalChannel = make(chan *GoalMessage, BufferSize)
View Source
var MissionChannel = make(chan *MissionMessage, BufferSize)
View Source
var RecalculationChannel = make(chan *DiscoveryMessage, BufferSize)
View Source
var ReorganizationChannel = make(chan *DiscoveryMessage, BufferSize)
View Source
var SelfId peer.ID
View Source
var StateChannel = make(chan *StateMessage, BufferSize)
Functions ¶
func AnnounceSelf ¶
func AnnounceSelf(metadata *agentlogic.Agent)
func ClosePath ¶
func ClosePath(disconnectedAgent agentlogic.Agent, messageType MessageType)
func InitCommunicationType ¶
func InitCommunicationType(path string, messageType MessageType)
func InitD2DCommuncation ¶
func InitD2DCommuncation(agentType agentlogic.AgentType)
func SendGoalFound ¶
func SendGoalFound(senderId string, goal agentlogic.Goal, posiition agentlogic.Vector, channelPath string) error
func SendMission ¶
func SendMission(senderId string, mission *agentlogic.Mission, channelPath string) error
func SendRecalculation ¶
func SendRecalculation(metadata agentlogic.Agent, selfId string)
func SendReorganization ¶
func SendReorganization(metadata agentlogic.Agent, selfId string)
func SendState ¶
func SendState(state *agentlogic.State)
func SendVizGoal ¶
func SendVizGoal(goal GoalMessage)
Types ¶
type Channel ¶
type Channel struct { // Messages is a channel of messages received from other peers in the chat room Messages chan *Message Close bool // contains filtered or unexported fields }
Channel represents a subscription to a single PubSub topic. Messages can be published to the topic with Channel.Publish, and received messages are pushed to the Messages channel.
type DiscoveryMessage ¶
type DiscoveryMessage struct { MessageMeta MessageMeta Content agentlogic.Agent }
type GoalMessage ¶
type GoalMessage struct { MessageMeta MessageMeta Content agentlogic.Goal Position agentlogic.Vector Poi string }
type MessageMeta ¶
type MessageMeta struct { MsgType MessageType SenderId string SenderType agentlogic.AgentType }
type MessageType ¶
type MessageType int
type MissionMessage ¶
type MissionMessage struct { MessageMeta MessageMeta Content agentlogic.Mission }
type StateMessage ¶
type StateMessage struct { MessageMeta MessageMeta Content agentlogic.State }
type VisualizationChannel ¶
type VisualizationChannel struct { Messages chan *VisualizationMessage // contains filtered or unexported fields }
func GetVizChannel ¶
func GetVizChannel() *VisualizationChannel
func InitVisualizationMessages ¶
func InitVisualizationMessages(subscribe bool) *VisualizationChannel
type VisualizationMessage ¶
type VisualizationMessage struct { MsgType MessageType ContentType MessageType DiscoveryMessage agentlogic.Agent StateMessage agentlogic.State MissionMessage agentlogic.Mission GoalMessage GoalMessage SenderId string SenderType agentlogic.AgentType MissionBound orb.Bound }
Click to show internal directories.
Click to hide internal directories.