I can't seem to figure out how to find the current camera type that is being rendered i.e. physical vs free vs targeted.
I have tried looking around in what GetCOREInterface returns as well as the 3ds max SDK documentation but nothing completely matches what I want.
GetCOREInterface()->GetActiveViewExp().GetViewCamera()
seems promising, but the camera in the active view may not be what's currently being rendered.
Answering the question myself. Found out there is a method to get the current view that is being rendered. From there it is trivial to get the camera.
https://help.autodesk.com/view/3DSMAX/2017/ENU/?guid=__cpp_ref_class_interface16_html
GetCOREInterface16()->GetCurrentRenderView()->GetViewCamera()
From there you can get the cameras name or class_id.
Note this method only works on 3ds max 2016+. For pre 3ds max 2016 I recommend the method in my question which will work for most cases.