How does odm works?

I am trying to read the ODM source code to understand how it works. But I’m still confused about the opensfm mesh, texture, geoference What these three steps do specifically.
Can someone please explain? Thank you very much.

This might help: Where can I find background information on the concepts of ODM?