Is it possible to use Views for listing data created in a custom module? The title says it all.

I'd like to create a view and provide rows for that view from a custom module where I've prepared the data for it.

The data is prepared when a page is visited and a callback function has run, the data is not stored in the database.

Is that possible somehow?

Thank you!
I know link-only answers are generally frowned upon, but this series of blog posts are unlikely to ever go anywhere and are WELL worth a read:

Building Views Query Plugins: Part 1 - Mapping web service data to the Views model

Building Views Query Plugins: Part 2 - Writing and testing the plugin itself

Building Views Query Plugins: Part 3 - Exposing options and configuration

Building Views Query Plugins: Part 4 - Building custom pager plugins

Note: In the unlikely event that someone gets here and the links are dead, please comment and let me know so I can address it :-)