コード例 #1
0
static PyObject* pyResManager_getSceneNode(pyResManager* self, PyObject* args) {
    pyLocation* loc;
    if (!PyArg_ParseTuple(args, "O", &loc)) {
        PyErr_SetString(PyExc_TypeError, "getSceneNode expects a plLocation");
        return NULL;
    }
    if (!pyLocation_Check((PyObject*)loc)) {
        PyErr_SetString(PyExc_TypeError, "getSceneNode expects a plLocation");
        return NULL;
    }
    return pySceneNode_FromSceneNode(self->fThis->getSceneNode(*loc->fThis));
}
コード例 #2
0
PyObject* ICreate(plCreatable* pCre)
{
    if (pCre == NULL)
        Py_RETURN_NONE;
    if ((typeid(*pCre)) == typeid(hsKeyedObjectStub))
        return pyKeyedObjectStub_FromKeyedObjectStub(dynamic_cast<hsKeyedObjectStub*>(pCre));
    if ((typeid(*pCre)) == typeid(plCreatableStub))
        return pyCreatableStub_FromCreatableStub(dynamic_cast<plCreatableStub*>(pCre));
    switch (pCre->ClassIndex()) {
        case kKeyedObject: return pyKeyedObject_FromKeyedObject(hsKeyedObject::Convert(pCre));
        case kSceneNode: return pySceneNode_FromSceneNode(plSceneNode::Convert(pCre));
        case kSynchedObject: return pySynchedObject_FromSynchedObject(plSynchedObject::Convert(pCre));
        case kSceneObject: return pySceneObject_FromSceneObject(plSceneObject::Convert(pCre));
        case kObjInterface: return pyObjInterface_FromObjInterface(plObjInterface::Convert(pCre));
        case kAudioInterface: return pyAudioInterface_FromAudioInterface(plAudioInterface::Convert(pCre));
        case kCoordinateInterface: return pyCoordinateInterface_FromCoordinateInterface(plCoordinateInterface::Convert(pCre));
        case kDrawInterface: return pyDrawInterface_FromDrawInterface(plDrawInterface::Convert(pCre));
        case kSimulationInterface: return pySimulationInterface_FromSimulationInterface(plSimulationInterface::Convert(pCre));
        case kDrawable: return pyDrawable_FromDrawable(plDrawable::Convert(pCre));
        case kDrawableSpans: return pyDrawableSpans_FromDrawableSpans(plDrawableSpans::Convert(pCre));
        case kGMaterial: return pyGMaterial_FromGMaterial(hsGMaterial::Convert(pCre));
        case kLayerInterface: return pyLayerInterface_FromLayerInterface(plLayerInterface::Convert(pCre));
        case kLayer: return pyLayer_FromLayer(plLayer::Convert(pCre));
        case kLayerDepth: return pyLayerDepth_FromLayerDepth(plLayerDepth::Convert(pCre));
        case kShader: return pyShader_FromShader(plShader::Convert(pCre));
        case kRenderTarget: return pyRenderTarget_FromRenderTarget(plRenderTarget::Convert(pCre));
        case kCubicRenderTarget: return pyCubicRenderTarget_FromCubicRenderTarget(plCubicRenderTarget::Convert(pCre));
        case kBitmap: return pyBitmap_FromBitmap(plBitmap::Convert(pCre));
        case kMipmap: return pyMipmap_FromMipmap(plMipmap::Convert(pCre));
        case kCubicEnvironmap: return pyCubicEnvironmap_FromCubicEnvironmap(plCubicEnvironmap::Convert(pCre));
        case kLightInfo: return pyLightInfo_FromLightInfo(plLightInfo::Convert(pCre));
        case kDirectionalLightInfo: return pyDirectionalLightInfo_FromDirectionalLightInfo(plDirectionalLightInfo::Convert(pCre));
        case kLimitedDirLightInfo: return pyLimitedDirLightInfo_FromLimitedDirLightInfo(plLimitedDirLightInfo::Convert(pCre));
        case kOmniLightInfo: return pyOmniLightInfo_FromOmniLightInfo(plOmniLightInfo::Convert(pCre));
        case kSpotLightInfo: return pySpotLightInfo_FromSpotLightInfo(plSpotLightInfo::Convert(pCre));
        case kSoundBuffer: return pySoundBuffer_FromSoundBuffer(plSoundBuffer::Convert(pCre));
        case kSound: return pySound_FromSound(plSound::Convert(pCre));
        case kWin32Sound: return pyWin32Sound_FromWin32Sound(plWin32Sound::Convert(pCre));
        case kWin32StreamingSound: return pyWin32StreamingSound_FromWin32StreamingSound(plWin32StreamingSound::Convert(pCre));
        case kWin32StaticSound: return pyWin32StaticSound_FromWin32StaticSound(plWin32StaticSound::Convert(pCre));
        case kPhysical: return pyPhysical_FromPhysical(plPhysical::Convert(pCre));
        case kGenericPhysical: return pyGenericPhysical_FromGenericPhysical(plGenericPhysical::Convert(pCre));
        case kModifier: return pyModifier_FromModifier(plModifier::Convert(pCre));
        case kSingleModifier: return pySingleModifier_FromSingleModifier(plSingleModifier::Convert(pCre));
        case kMultiModifier: return pyMultiModifier_FromMultiModifier(plMultiModifier::Convert(pCre));
        case kPythonFileMod: return pyPythonFileMod_FromPythonFileMod(plPythonFileMod::Convert(pCre));
        case kActivatorActivatorConditionalObject: return pyActivatorActivatorConditionalObject_FromActivatorActivatorConditionalObject(plActivatorActivatorConditionalObject::Convert(pCre));
        case kActivatorConditionalObject: return pyActivatorConditionalObject_FromActivatorConditionalObject(plActivatorConditionalObject::Convert(pCre));
        case kANDConditionalObject: return pyANDConditionalObject_FromANDConditionalObject(plANDConditionalObject::Convert(pCre));
        case kAnimationEventConditionalObject: return pyAnimationEventConditionalObject_FromAnimationEventConditionalObject(plAnimationEventConditionalObject::Convert(pCre));
        case kControlEventConditionalObject: return pyControlEventConditionalObject_FromControlEventConditionalObject(plControlEventConditionalObject::Convert(pCre));
        case kFacingConditionalObject: return pyFacingConditionalObject_FromFacingConditionalObject(plFacingConditionalObject::Convert(pCre));
        case kKeyPressConditionalObject: return pyKeyPressConditionalObject_FromKeyPressConditionalObject(plKeyPressConditionalObject::Convert(pCre));
        case kLocalPlayerInBoxConditionalObject: return pyLocalPlayerInBoxConditionalObject_FromLocalPlayerInBoxConditionalObject(plLocalPlayerInBoxConditionalObject::Convert(pCre));
        case kLocalPlayerIntersectPlaneConditionalObject: return pyLocalPlayerIntersectPlaneConditionalObject_FromLocalPlayerIntersectPlaneConditionalObject(plLocalPlayerIntersectPlaneConditionalObject::Convert(pCre));
        case kObjectInBoxConditionalObject: return pyObjectInBoxConditionalObject_FromObjectInBoxConditionalObject(plObjectInBoxConditionalObject::Convert(pCre));
        case kObjectIntersectPlaneConditionalObject: return pyObjectIntersectPlaneConditionalObject_FromObjectIntersectPlaneConditionalObject(plObjectIntersectPlaneConditionalObject::Convert(pCre));
        case kORConditionalObject: return pyORConditionalObject_FromORConditionalObject(plORConditionalObject::Convert(pCre));
        case kVolActivatorConditionalObject: return pyVolActivatorConditionalObject_FromVolActivatorConditionalObject(plVolActivatorConditionalObject::Convert(pCre));
        case kVolumeSensorConditionalObject: return pyVolumeSensorConditionalObject_FromVolumeSensorConditionalObject(plVolumeSensorConditionalObject::Convert(pCre));
        case kSpawnModifier: return pySpawnModifier_FromSpawnModifier(plSpawnModifier::Convert(pCre));
        case kViewFaceModifier: return pyViewFaceModifier_FromViewFaceModifier(plViewFaceModifier::Convert(pCre));
        case kMaintainersMarkerModifier: return pyMaintainersMarkerModifier_FromMaintainersMarkerModifier(plMaintainersMarkerModifier::Convert(pCre));
        case kExcludeRegionModifier: return pyExcludeRegionModifier_FromExcludeRegionModifier(plExcludeRegionModifier::Convert(pCre));
        case kClusterGroup: return pyClusterGroup_FromClusterGroup(plClusterGroup::Convert(pCre));
        case kLayerAnimationBase: return pyLayerAnimationBase_FromLayerAnimationBase(plLayerAnimationBase::Convert(pCre));
        case kLayerAnimation: return pyLayerAnimation_FromLayerAnimation(plLayerAnimation::Convert(pCre));
        case kLayerLinkAnimation: return pyLayerLinkAnimation_FromLayerLinkAnimation(plLayerLinkAnimation::Convert(pCre));
        case kLayerSDLAnimation: return pyLayerSDLAnimation_FromLayerSDLAnimation(plLayerSDLAnimation::Convert(pCre));
        case kLayerMovie: return pyLayerMovie_FromLayerMovie(plLayerMovie::Convert(pCre));
        case kLayerAVI: return pyLayerAVI_FromLayerAVI(plLayerAVI::Convert(pCre));
        case kLayerBink: return pyLayerBink_FromLayerBink(plLayerBink::Convert(pCre));
        case kOneShotMod: return pyOneShotMod_FromOneShotMod(plOneShotMod::Convert(pCre));
        case kObjectInVolumeDetector: return pyObjectInVolumeDetector_FromObjectInVolumeDetector(plObjectInVolumeDetector::Convert(pCre));
        case kObjectInVolumeAndFacingDetector: return pyObjectInVolumeAndFacingDetector_FromObjectInVolumeAndFacingDetector(plObjectInVolumeAndFacingDetector::Convert(pCre));
        case kResponderModifier: return pyResponderModifier_FromResponderModifier(plResponderModifier::Convert(pCre));
        case kFollowMod: return pyFollowMod_FromFollowMod(plFollowMod::Convert(pCre));
        case kFadeOpacityMod: return pyFadeOpacityMod_FromFadeOpacityMod(plFadeOpacityMod::Convert(pCre));
        case kDistOpacityMod: return pyDistOpacityMod_FromDistOpacityMod(plDistOpacityMod::Convert(pCre));
        case kDynamicEnvMap: return pyDynamicEnvMap_FromDynamicEnvMap(plDynamicEnvMap::Convert(pCre));
        case kDynamicCamMap: return pyDynamicCamMap_FromDynamicCamMap(plDynamicCamMap::Convert(pCre));
        case kDynamicTextMap: return pyDynamicTextMap_FromDynamicTextMap(plDynamicTextMap::Convert(pCre));
        case kSittingModifier: return pySittingModifier_FromSittingModifier(plSittingModifier::Convert(pCre));
        case kAGAnim: return pyAGAnim_FromAGAnim(plAGAnim::Convert(pCre));
        case kAGModifier: return pyAGModifier_FromAGModifier(plAGModifier::Convert(pCre));
        case kAGMasterMod: return pyAGMasterMod_FromAGMasterMod(plAGMasterMod::Convert(pCre));
        case kAgeGlobalAnim: return pyAgeGlobalAnim_FromAgeGlobalAnim(plAgeGlobalAnim::Convert(pCre));
        case kATCAnim: return pyATCAnim_FromATCAnim(plATCAnim::Convert(pCre));
        case kSubworldRegionDetector: return pySubworldRegionDetector_FromSubworldRegionDetector(plSubworldRegionDetector::Convert(pCre));
        case kPanicLinkRegion: return pyPanicLinkRegion_FromPanicLinkRegion(plPanicLinkRegion::Convert(pCre));
        case kEmoteAnim: return pyEmoteAnim_FromEmoteAnim(plEmoteAnim::Convert(pCre));
        case kAGAnimBink: return pyAGAnimBink_FromAGAnimBink(plAGAnimBink::Convert(pCre));
        case kVolumeSensorConditionalObjectNoArbitration: return pyVolumeSensorConditionalObjectNoArbitration_FromVolumeSensorConditionalObjectNoArbitration(plVolumeSensorConditionalObjectNoArbitration::Convert(pCre));
        case kMsgForwarder: return pyMsgForwarder_FromMsgForwarder(plMsgForwarder::Convert(pCre));
        case kOccluder: return pyOccluder_FromOccluder(plOccluder::Convert(pCre));
        case kMobileOccluder: return pyMobileOccluder_FromMobileOccluder(plMobileOccluder::Convert(pCre));
        case kMultistageBehMod: return pyMultistageBehMod_FromMultistageBehMod(plMultistageBehMod::Convert(pCre));
        case kInterfaceInfoModifier: return pyInterfaceInfoModifier_FromInterfaceInfoModifier(plInterfaceInfoModifier::Convert(pCre));
        case kPickingDetector: return pyPickingDetector_FromPickingDetector(plPickingDetector::Convert(pCre));
        case kLogicModBase: return pyLogicModBase_FromLogicModBase(plLogicModBase::Convert(pCre));
        case kLogicModifier: return pyLogicModifier_FromLogicModifier(plLogicModifier::Convert(pCre));
        case kAudible: return pyAudible_FromAudible(plAudible::Convert(pCre));
        case kAudibleNull: return pyAudibleNull_FromAudibleNull(plAudibleNull::Convert(pCre));
        case kWinAudible: return pyWinAudible_FromWinAudible(plWinAudible::Convert(pCre));
        case k2WayWinAudible: return py2WayWinAudible_From2WayWinAudible(pl2WayWinAudible::Convert(pCre));
        case kShadowCaster: return pyShadowCaster_FromShadowCaster(plShadowCaster::Convert(pCre));
        case kShadowMaster: return pyShadowMaster_FromShadowMaster(plShadowMaster::Convert(pCre));
        case kPointShadowMaster: return pyPointShadowMaster_FromPointShadowMaster(plPointShadowMaster::Convert(pCre));
        case kDirectShadowMaster: return pyDirectShadowMaster_FromDirectShadowMaster(plDirectShadowMaster::Convert(pCre));
        case kWaveSetBase: return pyWaveSetBase_FromWaveSetBase(plWaveSetBase::Convert(pCre));
        case kWaveSet7: return pyWaveSet7_FromWaveSet7(plWaveSet7::Convert(pCre));
        case kSoftVolume: return pySoftVolume_FromSoftVolume(plSoftVolume::Convert(pCre));
        case kSoftVolumeSimple: return pySoftVolumeSimple_FromSoftVolumeSimple(plSoftVolumeSimple::Convert(pCre));
        case kSoftVolumeComplex: return pySoftVolumeComplex_FromSoftVolumeComplex(plSoftVolumeComplex::Convert(pCre));
        case kSoftVolumeUnion: return pySoftVolumeUnion_FromSoftVolumeUnion(plSoftVolumeUnion::Convert(pCre));
        case kSoftVolumeIntersect: return pySoftVolumeIntersect_FromSoftVolumeIntersect(plSoftVolumeIntersect::Convert(pCre));
        case kSoftVolumeInvert: return pySoftVolumeInvert_FromSoftVolumeInvert(plSoftVolumeInvert::Convert(pCre));
        case kVisRegion: return pyVisRegion_FromVisRegion(plVisRegion::Convert(pCre));
        case kSwimRegionInterface: return pySwimRegionInterface_FromSwimRegionInterface(plSwimRegionInterface::Convert(pCre));
        case kSwimCircularCurrentRegion: return pySwimCircularCurrentRegion_FromSwimCircularCurrentRegion(plSwimCircularCurrentRegion::Convert(pCre));
        case kSwimStraightCurrentRegion: return pySwimStraightCurrentRegion_FromSwimStraightCurrentRegion(plSwimStraightCurrentRegion::Convert(pCre));
        case kSimpleRegionSensor: return pySimpleRegionSensor_FromSimpleRegionSensor(plSimpleRegionSensor::Convert(pCre));
        case kSwimDetector: return pySwimDetector_FromSwimDetector(plSwimDetector::Convert(pCre));
        case kSpaceTree: return pySpaceTree_FromSpaceTree(plSpaceTree::Convert(pCre));
        case kController: return pyController_FromController(plController::Convert(pCre));
        case kCompoundController: return pyCompoundController_FromCompoundController(plCompoundController::Convert(pCre));
        case kTMController: return pyTMController_FromTMController(plTMController::Convert(pCre));
        case kPosController: return pyPosController_FromPosController(plPosController::Convert(pCre));
        case kSimplePosController: return pySimplePosController_FromSimplePosController(plSimplePosController::Convert(pCre));
        case kCompoundPosController: return pyCompoundPosController_FromCompoundPosController(plCompoundPosController::Convert(pCre));
        case kRotController: return pyRotController_FromRotController(plRotController::Convert(pCre));
        case kSimpleRotController: return pySimpleRotController_FromSimpleRotController(plSimpleRotController::Convert(pCre));
        case kCompoundRotController: return pyCompoundRotController_FromCompoundRotController(plCompoundRotController::Convert(pCre));
        case kScaleController: return pyScaleController_FromScaleController(plScaleController::Convert(pCre));
        case kSimpleScaleController: return pySimpleScaleController_FromSimpleScaleController(plSimpleScaleController::Convert(pCre));
        case kLeafController: return pyLeafController_FromLeafController(plLeafController::Convert(pCre));
        case kEaseController: return pyEaseController_FromEaseController(plEaseController::Convert(pCre));
        case kMatrix33Controller: return pyMatrix33Controller_FromMatrix33Controller(plMatrix33Controller::Convert(pCre));
        case kMatrix44Controller: return pyMatrix44Controller_FromMatrix44Controller(plMatrix44Controller::Convert(pCre));
        case kPoint3Controller: return pyPoint3Controller_FromPoint3Controller(plPoint3Controller::Convert(pCre));
        case kQuatController: return pyQuatController_FromQuatController(plQuatController::Convert(pCre));
        case kScalarController: return pyScalarController_FromScalarController(plScalarController::Convert(pCre));
        case kScaleValueController: return pyScaleValueController_FromScaleValueController(plScaleValueController::Convert(pCre));
        case kATCEaseCurve: return pyATCEaseCurve_FromATCEaseCurve(plATCEaseCurve::Convert(pCre));
        case kSplineEaseCurve: return pySplineEaseCurve_FromSplineEaseCurve(plSplineEaseCurve::Convert(pCre));
        case kConstAccelEaseCurve: return pyConstAccelEaseCurve_FromConstAccelEaseCurve(plConstAccelEaseCurve::Convert(pCre));
        case kAnimTimeConvert: return pyAnimTimeConvert_FromAnimTimeConvert(plAnimTimeConvert::Convert(pCre));
        case kMessage: return pyMessage_FromMessage(plMessage::Convert(pCre));
        case kEventCallbackMsg: return pyEventCallbackMsg_FromEventCallbackMsg(plEventCallbackMsg::Convert(pCre));
        case kResponderEnableMsg: return pyResponderEnableMsg_FromResponderEnableMsg(plResponderEnableMsg::Convert(pCre));
        case kAGApplicator: return pyAGApplicator_FromAGApplicator(plAGApplicator::Convert(pCre));
        case kAGChannel: return pyAGChannel_FromAGChannel(plAGChannel::Convert(pCre));
        case kSoundVolumeApplicator: return pySoundVolumeApplicator_FromSoundVolumeApplicator(plSoundVolumeApplicator::Convert(pCre));
        case kLightAmbientApplicator: return pyLightAmbientApplicator_FromLightAmbientApplicator(plLightAmbientApplicator::Convert(pCre));
        case kLightDiffuseApplicator: return pyLightDiffuseApplicator_FromLightDiffuseApplicator(plLightDiffuseApplicator::Convert(pCre));
        case kLightSpecularApplicator: return pyLightSpecularApplicator_FromLightSpecularApplicator(plLightSpecularApplicator::Convert(pCre));
        case kOmniApplicator: return pyOmniApplicator_FromOmniApplicator(plOmniApplicator::Convert(pCre));
        case kOmniCutoffApplicator: return pyOmniCutoffApplicator_FromOmniCutoffApplicator(plOmniCutoffApplicator::Convert(pCre));
        case kOmniSqApplicator: return pyOmniSqApplicator_FromOmniSqApplicator(plOmniSqApplicator::Convert(pCre));
        case kSpotInnerApplicator: return pySpotInnerApplicator_FromSpotInnerApplicator(plSpotInnerApplicator::Convert(pCre));
        case kSpotOuterApplicator: return pySpotOuterApplicator_FromSpotOuterApplicator(plSpotOuterApplicator::Convert(pCre));
        case kMatrixChannel: return pyMatrixChannel_FromMatrixChannel(plMatrixChannel::Convert(pCre));
        case kMatrixBlend: return pyMatrixBlend_FromMatrixBlend(plMatrixBlend::Convert(pCre));
        case kMatrixConstant: return pyMatrixConstant_FromMatrixConstant(plMatrixConstant::Convert(pCre));
        case kMatrixControllerCacheChannel: return pyMatrixControllerCacheChannel_FromMatrixControllerCacheChannel(plMatrixControllerCacheChannel::Convert(pCre));
        case kMatrixControllerChannel: return pyMatrixControllerChannel_FromMatrixControllerChannel(plMatrixControllerChannel::Convert(pCre));
        case kMatrixTimeScale: return pyMatrixTimeScale_FromMatrixTimeScale(plMatrixTimeScale::Convert(pCre));
        case kQuatPointCombine: return pyQuatPointCombine_FromQuatPointCombine(plQuatPointCombine::Convert(pCre));
        case kMatrixChannelApplicator: return pyMatrixChannelApplicator_FromMatrixChannelApplicator(plMatrixChannelApplicator::Convert(pCre));
        case kMatrixDelayedCorrectionApplicator: return pyMatrixDelayedCorrectionApplicator_FromMatrixDelayedCorrectionApplicator(plMatrixDelayedCorrectionApplicator::Convert(pCre));
        case kMatrixDifferenceApp: return pyMatrixDifferenceApp_FromMatrixDifferenceApp(plMatrixDifferenceApp::Convert(pCre));
        case kRelativeMatrixChannelApplicator: return pyRelativeMatrixChannelApplicator_FromRelativeMatrixChannelApplicator(plRelativeMatrixChannelApplicator::Convert(pCre));
        case kPointChannel: return pyPointChannel_FromPointChannel(plPointChannel::Convert(pCre));
        case kPointBlend: return pyPointBlend_FromPointBlend(plPointBlend::Convert(pCre));
        case kPointConstant: return pyPointConstant_FromPointConstant(plPointConstant::Convert(pCre));
        case kPointControllerCacheChannel: return pyPointControllerCacheChannel_FromPointControllerCacheChannel(plPointControllerCacheChannel::Convert(pCre));
        case kPointControllerChannel: return pyPointControllerChannel_FromPointControllerChannel(plPointControllerChannel::Convert(pCre));
        case kPointTimeScale: return pyPointTimeScale_FromPointTimeScale(plPointTimeScale::Convert(pCre));
        case kPointChannelApplicator: return pyPointChannelApplicator_FromPointChannelApplicator(plPointChannelApplicator::Convert(pCre));
        case kQuatChannel: return pyQuatChannel_FromQuatChannel(plQuatChannel::Convert(pCre));
        case kQuatBlend: return pyQuatBlend_FromQuatBlend(plQuatBlend::Convert(pCre));
        case kQuatConstant: return pyQuatConstant_FromQuatConstant(plQuatConstant::Convert(pCre));
        case kQuatTimeScale: return pyQuatTimeScale_FromQuatTimeScale(plQuatTimeScale::Convert(pCre));
        case kQuatChannelApplicator: return pyQuatChannelApplicator_FromQuatChannelApplicator(plQuatChannelApplicator::Convert(pCre));
        case kScalarChannel: return pyScalarChannel_FromScalarChannel(plScalarChannel::Convert(pCre));
        case kScalarBlend: return pyScalarBlend_FromScalarBlend(plScalarBlend::Convert(pCre));
        case kScalarConstant: return pyScalarConstant_FromScalarConstant(plScalarConstant::Convert(pCre));
        case kScalarControllerCacheChannel: return pyScalarControllerCacheChannel_FromScalarControllerCacheChannel(plScalarControllerCacheChannel::Convert(pCre));
        case kScalarControllerChannel: return pyScalarControllerChannel_FromScalarControllerChannel(plScalarControllerChannel::Convert(pCre));
        case kScalarTimeScale: return pyScalarTimeScale_FromScalarTimeScale(plScalarTimeScale::Convert(pCre));
        case kScalarSDLChannel: return pyScalarSDLChannel_FromScalarSDLChannel(plScalarSDLChannel::Convert(pCre));
        case kATCChannel: return pyATCChannel_FromATCChannel(plATCChannel::Convert(pCre));
        case kScalarChannelApplicator: return pyScalarChannelApplicator_FromScalarChannelApplicator(plScalarChannelApplicator::Convert(pCre));
        case kAnimStage: return pyAnimStage_FromAnimStage(plAnimStage::Convert(pCre));
        case kLinkToAgeMsg: return pyLinkToAgeMsg_FromLinkToAgeMsg(plLinkToAgeMsg::Convert(pCre));
        case kNotifyMsg: return pyNotifyMsg_FromNotifyMsg(plNotifyMsg::Convert(pCre));
        case kAgeLinkStruct: return pyAgeLinkStruct_FromAgeLinkStruct(plAgeLinkStruct::Convert(pCre));
        case kAgeInfoStruct: return pyAgeInfoStruct_FromAgeInfoStruct(plAgeInfoStruct::Convert(pCre));
        case kArmatureEffectStateMsg: return pyArmatureEffectStateMsg_FromArmatureEffectStateMsg(plArmatureEffectStateMsg::Convert(pCre));
        case kCursorChangeMsg: return pyCursorChangeMsg_FromCursorChangeMsg(plCursorChangeMsg::Convert(pCre));
        case kResponderMsg: return pyResponderMsg_FromResponderMsg(plResponderMsg::Convert(pCre));
        case kOneShotMsg: return pyOneShotMsg_FromOneShotMsg(plOneShotMsg::Convert(pCre));
        case kMessageWithCallbacks: return pyMessageWithCallbacks_FromMessageWithCallbacks(plMessageWithCallbacks::Convert(pCre));
        case kAnimCmdMsg: return pyAnimCmdMsg_FromAnimCmdMsg(plAnimCmdMsg::Convert(pCre));
        case kTimerCallbackMsg: return pyTimerCallbackMsg_FromTimerCallbackMsg(plTimerCallbackMsg::Convert(pCre));
        case kEnableMsg: return pyEnableMsg_FromEnableMsg(plEnableMsg::Convert(pCre));
        case kExcludeRegionMsg: return pyExcludeRegionMsg_FromExcludeRegionMsg(plExcludeRegionMsg::Convert(pCre));
        case kVolumeIsect: return pyVolumeIsect_FromVolumeIsect(plVolumeIsect::Convert(pCre));
        case kConvexIsect: return pyConvexIsect_FromConvexIsect(plConvexIsect::Convert(pCre));
        case kSoundMsg: return pySoundMsg_FromSoundMsg(plSoundMsg::Convert(pCre));
        case kSwimMsg: return pySwimMsg_FromSwimMsg(plSwimMsg::Convert(pCre));
        case kGUIButtonMod: return pyGUIButtonMod_FromGUIButtonMod(pfGUIButtonMod::Convert(pCre));
        case kGUIMenuItem: return pyGUIMenuItem_FromGUIMenuItem(pfGUIMenuItem::Convert(pCre));
        case kGUICheckBoxCtrl: return pyGUICheckBoxCtrl_FromGUICheckBoxCtrl(pfGUICheckBoxCtrl::Convert(pCre));
        case kGUIControlMod: return pyGUIControlMod_FromGUIControlMod(pfGUIControlMod::Convert(pCre));
        case kGUIDialogMod: return pyGUIDialogMod_FromGUIDialogMod(pfGUIDialogMod::Convert(pCre));
        case kGUIDynDisplayCtrl: return pyGUIDynDisplayCtrl_FromGUIDynDisplayCtrl(pfGUIDynDisplayCtrl::Convert(pCre));
        case kGUIKnobCtrl: return pyGUIKnobCtrl_FromGUIKnobCtrl(pfGUIKnobCtrl::Convert(pCre));
        case kGUIListBoxMod: return pyGUIListBoxMod_FromGUIListBoxMod(pfGUIListBoxMod::Convert(pCre));
        case kGUIClickMapCtrl: return pyGUIClickMapCtrl_FromGUIClickMapCtrl(pfGUIClickMapCtrl::Convert(pCre));
        case kGUIDragBarCtrl: return pyGUIDragBarCtrl_FromGUIDragBarCtrl(pfGUIDragBarCtrl::Convert(pCre));
        case kGUIDraggableMod: return pyGUIDraggableMod_FromGUIDraggableMod(pfGUIDraggableMod::Convert(pCre));
        case kGUIEditBoxMod: return pyGUIEditBoxMod_FromGUIEditBoxMod(pfGUIEditBoxMod::Convert(pCre));
        case kGUIMultiLineEditCtrl: return pyGUIMultiLineEditCtrl_FromGUIMultiLineEditCtrl(pfGUIMultiLineEditCtrl::Convert(pCre));
        case kGUIPopUpMenu: return pyGUIPopUpMenu_FromGUIPopUpMenu(pfGUIPopUpMenu::Convert(pCre));
        case kGUIProgressCtrl: return pyGUIProgressCtrl_FromGUIProgressCtrl(pfGUIProgressCtrl::Convert(pCre));
        case kGUIRadioGroupCtrl: return pyGUIRadioGroupCtrl_FromGUIRadioGroupCtrl(pfGUIRadioGroupCtrl::Convert(pCre));
        case kGUISkin: return pyGUISkin_FromGUISkin(pfGUISkin::Convert(pCre));
        case kGUITextBoxMod: return pyGUITextBoxMod_FromGUITextBoxMod(pfGUITextBoxMod::Convert(pCre));
        case kGUIUpDownPairMod: return pyGUIUpDownPairMod_FromGUIUpDownPairMod(pfGUIUpDownPairMod::Convert(pCre));
        case kGUIValueCtrl: return pyGUIValueCtrl_FromGUIValueCtrl(pfGUIValueCtrl::Convert(pCre));
        case kImageLibMod: return pyImageLibMod_FromImageLibMod(plImageLibMod::Convert(pCre));
        case kPostEffectMod: return pyPostEffectMod_FromPostEffectMod(plPostEffectMod::Convert(pCre));
        case kAvLadderMod: return pyAvLadderMod_FromAvLadderMod(plAvLadderMod::Convert(pCre));
        case kLadderModifier: return pyLadderModifier_FromLadderModifier(plLadderModifier::Convert(pCre));
        default:
            // many messages are not implemented, make sure they are at least a plMessage
            if (pCre->ClassInstance(kMessage))
                return pyMessage_FromMessage(plMessage::Convert(pCre));
            else if (pCre->ClassInstance(kKeyedObject))
                return pyKeyedObject_FromKeyedObject(hsKeyedObject::Convert(pCre));
            return pyCreatable_FromCreatable(pCre);
    }
}