# Software Architecture
# DAL - Domotic Abstraction Layer
# Unit Types
# Location Architecture
# Modifications
# Removal
- The root location cannot be removed
- Removing a location causes every unit to be moved to its parent
- Removing a tile causes two additional effects:
- Regions inside the tile are removed recursively
- Every connection connecting this tile and only one other tile is removed
# Guidelines
- The transformation provided by each unit transforms between the unit and its parent location.
- parent location:
unit_config -> placement_config -> location_id
- parent location:
- Regions are translated but not rotated within a tile.
- The position of a unit is anchored to the base of its 3d bounding box.
- Bounding box base should be aligned to the unit position which means the bounding box offset (left_front_bottom) should not be used!
# Actions
# Priorities
# Software Components
# Core Framework
# Registry
# Maven Artifact
<dependency>
<groupId>org.openbase</groupId>
<artifactId>bco.registry</artifactId>
<version>[2.0-SNAPSHOT,2.1-alpha)</version>
</dependency>
1
2
3
4
5
2
3
4
5
Repository: https://github.com/openbase/bco.registry.git
# DAL - Domotic Abstraction Layer
# Maven Artifact
<dependency>
<groupId>org.openbase</groupId>
<artifactId>bco.dal.remote</artifactId>
<version>[2.0-SNAPSHOT,2.1-alpha)</version>
</dependency>
1
2
3
4
5
2
3
4
5
Repository: https://github.com/openbase/bco.dal.git
# Device Manager
Repository: https://github.com/openbase/bco.device.git
# App Manager
Repository: https://github.com/openbase/bco.app.git