'Context context' vs 'RTPcontext context'?

The primeSimplePP creates the context in this manner:

RTPcontexttype contextType = RTP_CONTEXT_TYPE_CPU;
Context context = Context::create(contextType);

The Optix Programming Guide creates the context in another manner:
RTPcontext context;
rtpContextCreate( RTP_CONTEXT_TYPE_CUDA, &context)

The Context class and the RTPcontext class are not the same. I can not substitute one for the other. How do they relate?

I already wrote a lot of code based on the Optix Programming Guide, which uses the ‘RTPcontext context’. But, I like ‘Context context’ better because it has the createModel() member. Can I somehow use the context that is created from ‘Context context’ in the calls to rtpBufferDescCreate()?

Is there a more general way of describing how to use either one in place of the other?

Context::create() is the C++ wrapper for the OptiX Prime API (see the OptiX programming guide, chapter 10).
You can retrieve the RTPcontext out of Context by using the Context::getRTPcontext() method, which you can then use with rtpBufferDescCreate(). Or you could use Context::createBufferDesc() instead. ;-)

I hope this answers some of your questions at least.