All Classes and Interfaces

Class
Description
 
 
 
 
 
Annotation used to identify which DIARC Component methods are available to the Goal Manager.
 
 
An ActionBinding is an association between a variable name and a value.
 
 
 
 
 
 
An ActionDBEntry is the general-purpose container for one unit of knowledge; can be factual (e.g., "person") or procedural (e.g., "goHome").
 
 
ActionInterpreter is the primary step execution module for the robot.
Top level class in charge of maintaining action learning, including the current learning state and other paused learning states (a paused learning state is different from a parent learning state), ...
 
 
 
An interface that can be used by the ActionInterpreter to notify other objects of progress during action execution.
A WebSocket adapter for the client to direct the creation of particular actions, or to modify Action Script Language (.asl) files.
ActionResourceLock is the base class for Action's resource locks.
ActionResourceLockLinear implements FCFS locks--no preemption based on priority.
ActionResourceLockPreempt implements priority-based locks.
 
 
 
The ActionStack stores the currently executed steps.
Enumeration for the status of actions.
 
 
 
 
This class wraps an ActionDBEntry and provides methods to edit this entry without actually changing anything within the ActionDBEntry (final fields).
 
 
 
 
 
 
 
 
 
 
Question Answering
 
 
 
This class provides an empty implementation of ASLListener, which can be extended to create a listener which only needs to handle a subset of the available methods.
This class provides an empty implementation of ASLVisitor, which can be extended to create a visitor which only needs to handle a subset of the available methods.
 
This interface defines a complete listener for a parse tree produced by ASLParser.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This interface defines a complete generic visitor for a parse tree produced by ASLParser.
 
A WebSocket adapter for communication between the BeliefComponent and the frontend Belief Viewer GUI.
 
Note: The maps of bindings from Variables to Lists of Symbols are here represented by HashMap<Variable, ArrayList<Symbol>>.
 
 
 
 
 
 
 
 
 
 
 
A WebSocket adapter for communication between DIARC and the frontend Chat Viewer GUI.
 
 
 
 
 
 
 
 
 
 
 
 
 
Code to compress/decompress a byte array.
Annotation used to specify a condition for an action.
A Condition is a (set of) predicate(s) that has(ve) to hold before or during the execution of an action.
Disjunction constructor.
 
 
Containing annotation type for Condition.
 
 
 
 
 
 
 
 
 
Manages application configurations such as base URL and CORS origins.
Representation of constant logical form.
 
 
ConsultantInterface is the base set of methods for reference resolution (i.e., POWER) in DIARC.
 
 
 
 
 
Utility methods for exploring, searching, analyzing, etc the Context tree.
 
 
 
 
 
 
 
Core interface for robot coordinate frames and their transformations.
 
 
 
Interface used by the Database to notify other objects of changes in its contents.
TODO: this class (and all sub-classes) are meant to be immutable, but currently several methods return ActionBindings which are not immutable, which breaks the immutability of this class.
Interface for the Talos/DCEC logical proof generator Contains the following functionality: - Solve query via online Talos/DCEC server - Knowledge database in DCEC syntax - Prolog to DCEC syntax converter Mimics the way the prolog is used in DIARC/Belief: - Add facts to the database through the assert asserta, assertz commands - Remove facts from the database through the retract, retractall commands - Prove conjecture Features from prolog that are missing: - Get bindings - Probably some more stuff...
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Annotation used to specify an effect of an action.
An Effect is the result of an action.
 
Containing annotation type for Effect.
Effect types.
 
Gson can't directly populate this class because it contains a java.util.Map, so it must be populated manually after the JSON has been parsed.
 
An event specification is a description of a step (event) in an action script.
 
 
 
Enum used alongside goal notification updates to indicate whether the goal was added, removed, or already present in the relevant collection
 
The Exit control can be used to end the execution of a script.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Definition for ROS2 GoalIdMessage
Definition for test_server/FibonacciActionGoal ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
Definition for test_server/FibonacciActionResult ====== DO NOT MODIFY! AUTOGENERATED FROM AN ACTION DEFINITION ======
Definition for test_server/FibonacciGoal
Definition for test_server/FibonacciResult
 
 
 
This represents the semantics of the FOR control in an action script.
 
 
This represents the semantics of the FOR EACH control in an action script.
 
 
 
 
 
 
 
 
 
 
Goal encapsulates a goal Predicate, the ActionInterpreter in charge of executing it and some additional information.
 
 
 
 
An interface that can be used to send notifications about Goals.
A WebSocket adapter for communication between the GoalManagerImpl and the frontend Goal Manager GUI.
The Goal Manager (also called the Action Manager or simply “Action”) manages and executes agents' tasks (goals) in DIARC.
Notification mechanism for the GoalManagerComponent.
 
 
 
A WebSocket adapter for communication between the GoalManagerImpl and the frontend Goal Viewer GUI.
Describes a position from which an object can be grasped.
 
 
An abstract class which defines required behavior for GUI adapters.
An implementation of the Spring server backend.
An interface which marks the implementing class as a component with a GUI.
A WebSocket handler which instantiates GuiAdapters when their respective GuiProvider are registered with TRADE, distributes incoming messages to the relevant GuiAdapters, and collects outgoing messages for transmission to the frontend.
 
 
 
 
A thread-safe way to assign unique IDs
This represents the semantics of the IF-THEN-ELSE controls in an action script.
 
 
 
 
Gson can't directly populate this class because it contains a java.util.Map, so it must be populated manually after the JSON has been parsed.
 
 
 
 
Generic ROS2 node implementation using JROSClient.
JRosClientPublisher<T extends id.jrosmessages.Message>
Wrapper on JROSClient's TopicSubmissionPublisher.
 
JRosClientSubscriber<T extends id.jrosmessages.Message>
Wrapper on JROSClient's TopicSubscriber.
Justification why a context has specific status only stored for single status getFailedPredicates, get predicates contributing to failure of context getBindings, get bindings for predicates
LearningComponent is the base set of methods for learning/unlearning concepts.
LearningState is used to store relevant information during learning of a new action (task or skill), including the roles (argument and local variables), action steps, effects (success and failure), conditions (pre and operational), also contains additional information about skills and instructions This class is modified by the ActionLearning class
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Gson can't directly populate this class because it contains a java.util.Map, so it must be populated manually after the JSON has been parsed.
Handles WebSocket messages for MapComponent-related functionalities within the web interface.
 
 
 
 
 
 
Custom implementation of an MCTS tree node.
 
 
MemoryObject - A Java class-wrapper for the data to be passed between the vision system and the rest of the Java system.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Provides simplified access to the ROS move base component on the PR2.
 
 
 
 
 
 
In lieu of a Pair class, this class is to store a name and description pair.
 
The NaoComponent interface.
Enumeration for specifying Nao joints.
 
NaoWizardComponent.
 
 
 
Interface for complex/stateful motion commands (e.g., move to a location, turn a given amount).
This uses SimpleNLG to translate a list of lemmas into a sentence.
 
Base set of methods for natural language understanding in DIARC.
 
 
 
 
 
This class is VERY MUCH still a work in progress.
 
 
 
 
 
Indicates whether a state should be - observed (TRUE): look for an observer than can verify it - inferred (FALSE): check in StateMachine/Belief - both (DEFAULT): try to observe first, if it fails (no observer or not found), check in StateMachine/Belief.
 
 
Annotation used to specify an observation that an action can make.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This class contains all the numeric operator logic that is not possible in prolog (prolog is bad with numbers, especially non-integers).
 
 
 
 
 
 
 
 
Interface for complex/stateful motion commands (e.g., move to a location, turn a given amount).
 
 
 
 
 
 
 
 
 
 
 
 
 
This class gathers information from several places/components in DIARC to generate a pddl domain and problem file on the fly.
This class parses a PDDL domain and problem file and populates several DIARC components with the parsed information.
 
 
 
 
Tree to keep track of the probability an action will succeed and the expect time given arguments Using tree instead of table for easier lookup of queries using unbound args
This represents the semantics of a persistent action in an action script.
 
 
 
 
 
 
 
Constraints that define when a RecoveryPolicy is applicable.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Representation of predicate logical form.
Helper methods to deal with Predicates in VisionComponent.
 
 
 
 
 
 
 
 
 
 
 
 
 
Available provers.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
This is used to explicitly return from an action script early, just as you would from Java.
 
 
 
 
 
Factory class to allow users to generate ROS 2 objects without needing to know a specific underlying implementation.
 
Todo: Remove service dependencies
Generic Ros2 Publisher, which takes in a specific message type
Generic Ros2 Subscriber, which takes in a specific message type
 
This class helps with finding and listing out ROS package information.
A collection of static methods to help out with rotations.
 
 
 
 
 
 
 
 
 
This class is mostly to help with finding the relevant parts of a control block (e.g., while, if/else, for, etc).
Stores audio data into numbered (MS-)wav files.
 
 
 
 
 
 
 
 
 
 
 
Provides static methods for geometry calculations.
 
SimSpeechProductionComponent.
SimSpeechProductionComponentVis.
SimSpeechRecognitionComponent provides a keyboard interface to replace a speech recognition component.
GUI clicky speech interface to stand in for speech recognition for testing NLP, etc.
 
 
 
 
 
 
 
Defines a standard set of methods that must be defined in an DIARCComponent to send text for speech production.
The implementation of an DIARCComponent with the Sphinx4 speech recognizer.
 
 
Defines a standard set of methods that must be defined in an DIARCComponent that utilizes Sphinx4 speech recognition.
High-level class for live speech recognition.
 
 
 
 
 
 
 
 
 
 
 
StepExecution the execution process for executing a context step: canDoStep, doStep, getNextStep, finishStep.
Utility methods for stereo image processing.
 
 
 
 
 
 
 
Representation of symbol logical form.
 
 
 
 
 
 
 
Representation of term logical form.
 
 
 
 
 
 
TradeServiceAdapter.
TradeServiceComponent.
 
Generic GUI for any class that offers TRADE services.
 
 
Generic GUI for any class that offers TRADE services.
 
This represents the semantics of the TRY control in an action script.
Defines a PDDL type and it's sub-types and super-types.
 
Routes agent-specific messages from UnityComponent to and from TRADE services.
Provides a socket-based connection to Unity for message passing from and to TRADE services.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
An Utterance is used to transmit information between component, including the semantic meaning, the dialogue act, the speaker, and the listener(s).
 
An UtteranceType is an allowed dialogue act.
 
 
 
 
 
Representation of variable logical form.
Minimal interface for setting and getting velocities.
 
 
Core interface for vision servers.
Interface for the DIARC Vision Component.
 
 
 
 
Web MVC Configuration for handling CORS policies and static resource locations.
 
This represents the semantics of the WHILE-DO controls in an action script.
The implementation of an DIARCComponent with the Sphinx4 speech recognizer.
 
 
MZ: I obtained this XML code from an internet blog, with permission (see below) It is a very nice simple code, and makes XML parsing and writing easy.
Class to launch a DIARC configuration specified in a YAML file.
Class that gets populated from parsed YAML file.