Creating custom instance catalogs?

Are there any examples of creating custom instance catalogs with mixins?
I think this is what I need to do, anyway … I need to
(a) query the moving object database for the positions and velocities and vMag of the objects (I think this is all the moving object db contains as far as instantaneous values … maybe also phase/solar elongation).
(b) translate the vMag to the magnitude in the observed bandpass [this could be done using something like the stars photometry, but the moving object colors are even simpler, so probably will write something super short] – this is a SsmPhotometry mixin yes?
© translate the mag in bandpass + m5 of the observation to SNR and also to a probabilistic “detected” (yes/no) flag (another method on the photometry mixin?)
(d) incorporate the focal plane footprint to see if the object actually landed on active silicon (does this kind of mixin already exist?)
(e) translate velocity into length/position angle of the trailing vector (some other mixin - SsmAstrometry?)
(f) calculate an uncertainty on the object’s reported position, and output ra/dec values that include uncertainty (is this kind of thing already in some other astrometry mixin?)

Do I have the right idea here - that I’d use the base instance catalog, write a subclass for moving objects, then write moving object mixins as above, and then combine then into my custom instance catalog object?
If not, what should I be thinking of instead? And if so, can you point me to some (or ‘the best’) examples?

Do any of the tasks above already exist in mixins that I haven’t found yet?

Yes. You will want to write mixins to accomplish this. To date, we do not yet have any mixins written for the SSM catalogs.

Probably the best examples for you to look at are in

sims_catUtils/python/lsst/sims/catUtils/mixins/AstrometryMixin.py

You can look at the classes AstrometryStars and CameraCoords.

For a generic example of how InstanceCatalogs mixins are meant to work, you can look at this notebook

or, my personal favorite (though this covers everything about CatSim)

Great, thanks Scott.
Looking through the available mixins, it looks like I will have to write one for ssm photometry and add one for astrometric uncertainty and trailing vector.
On the other hand, it looks like I could use the CameraCoords mixin, if I make sure that the appropriate columns already exist in the right format in my instance catalog at that point, in order to add the focal plane footprint.
Okay!