pycram.designators.object_designator
====================================

.. py:module:: pycram.designators.object_designator


Classes
-------

.. autoapisummary::

   pycram.designators.object_designator.OntologyObjectDesignatorDescription
   pycram.designators.object_designator.BelieveObject
   pycram.designators.object_designator.ResolutionStrategyObject
   pycram.designators.object_designator.ObjectPart


Module Contents
---------------

.. py:class:: OntologyObjectDesignatorDescription(search_result: owlready2.triplelite._SearchList)

   Description for Objects that can be found using ontological reasoning


   .. py:attribute:: search_result
      :type:  pycram.external_interfaces.robokudo.List

      The result from the search in the ontology.



   .. py:method:: __iter__() -> typing_extensions.Iterable[pycram.world_concepts.world_object.Object]

      :return: The objects in the current world which match the search result in the 'is_a' relation.



.. py:class:: BelieveObject(names: typing_extensions.Optional[typing_extensions.List[str]] = None, types: typing_extensions.Optional[typing_extensions.List[typing_extensions.Type[pycrap.ontologies.PhysicalObject]]] = None)

   Bases: :py:obj:`pycram.external_interfaces.robokudo.ObjectDesignatorDescription`


   Description for Objects that are only believed in.


.. py:class:: ResolutionStrategyObject(strategy: typing_extensions.Union[pycram.external_interfaces.robokudo.Callable, typing_extensions.Iterable])

   Bases: :py:obj:`pycram.external_interfaces.robokudo.ObjectDesignatorDescription`


   Class for object designator_description descriptions.
   Descriptions hold possible parameter ranges for object designators.


   .. py:attribute:: strategy


   .. py:method:: create_iterator(resolution_strategy: typing_extensions.Union[pycram.external_interfaces.robokudo.Callable, typing_extensions.Iterable])

      Creates an iterator for the given method. If the method is iterable it will be used as is, otherwise it will
      be called as a function.

      :param resolution_strategy: The method to create an iterator for.
      :return: An iterator for the given method.



   .. py:method:: __iter__() -> typing_extensions.Iterable[pycram.world_concepts.world_object.Object]

      Iterates through every possible solution for the given solution strategy.

      :return: A resolved object designator



.. py:class:: ObjectPart(names: pycram.external_interfaces.robokudo.List[str], part_of: typing_extensions.Union[pycram.world_concepts.world_object.Object, typing_extensions.Iterable[pycram.world_concepts.world_object.Object]], type: pycram.external_interfaces.robokudo.Optional[pycram.datastructures.enums.ObjectType] = None)

   Bases: :py:obj:`pycram.external_interfaces.robokudo.ObjectDesignatorDescription`, :py:obj:`typing_extensions.Iterable`\ [\ :py:obj:`pycram.description.ObjectDescription.Link`\ ]


   Object Designator Descriptions for Objects that are part of some other object.


   .. py:attribute:: type
      :type:  pycram.external_interfaces.robokudo.Optional[pycram.datastructures.enums.ObjectType]
      :value: None



   .. py:attribute:: names
      :type:  pycram.external_interfaces.robokudo.Optional[pycram.external_interfaces.robokudo.List[str]]


   .. py:attribute:: part_of


   .. py:method:: ground() -> pycram.description.ObjectDescription.Link

      Default specialized_designators, returns the first result of the iterator of this instance.

      :return: A resolved object designator



   .. py:method:: __iter__() -> typing_extensions.Iterator[pycram.description.ObjectDescription.Link]

      Iterates through every possible solution for the given input parameter.

      :yield: A resolved Object designator



