Addons are modules
In blender the addons folders are added to the system path. Addons are imported as modules.
The preferences displays the path, hence for "Bool Tools"
its the name of the py file object_boolean_tools
and for Add Mesh Extra Objects,
the name of the folder containing the __init__.py
file. (add_mesh_extra_objects
) Standard python module "stuff".
To import the bool tools module:
>>> import object_boolean_tools
>>> object_boolean_tools.
AddonPreferences(
ApplyAll(
ApplyThisBrush(
Auto_Boolean(
BT_ObjectByName(
BToolSetup(
BTool_AllBrushToMesh(
BTool_BrushToMesh(
...
shortcut_list
unregister(
update_BoolHide(
update_panels(
canto import a method from it, etc
from object_boolean_tools import update_panels
Enable the addon
To enable an addon without the user having to do it manually, recommend usage of the Addon Utilities module. Consult the docs. eg there is an option in the enable method to pass an error handler. A simple example of usage, check if the addon is enabled, if not enable it. Could flag its enabling in register and if-so disable in unregister.
>>> from addon_utils import enable, check
>>> loaded_default, loaded_status = check("add_mesh_extra_objects")
>>> if not loaded_status:
... enable("add_mesh_extra_objects")
...
<module 'add_mesh_extra_objects' from '/home/batfinger/blender-git/xxx/bin/2.91/scripts/addons/add_mesh_extra_objects/__init__.py'>
Note on my system the boolean tools addon does not register.