Apollo: why apollo every two modules depend on each other?

Created on 27 Jan 2018  ·  3Comments  ·  Source: ApolloAuto/apollo

eg. common module depends on percetion , and perception denpends on common,
common <===> planning

I think all common code should be put in common and all modules just depend on common ,what`s your opinions?

Code Structure Question

Most helpful comment

If you take a closer look, common only depends on "//modules/perception/proto:perception_proto" and "//modules/planning/proto:planning_proto", which are the data proto of perception/planning. It's necessary as common::AdapaterManager is a component to manage all the data and thus needs to depend on them. As long as there's no code logic level cyclic dependency we should be good.

All 3 comments

If you take a closer look, common only depends on "//modules/perception/proto:perception_proto" and "//modules/planning/proto:planning_proto", which are the data proto of perception/planning. It's necessary as common::AdapaterManager is a component to manage all the data and thus needs to depend on them. As long as there's no code logic level cyclic dependency we should be good.

It is because of protobuf and adapters.

Closing this issue as it appears to be resolved.

Was this page helpful?
0 / 5 - 0 ratings