On 06/09/2013 at 11:27, xxxxxxxx wrote:
I'm not sure if I'm understanding your question.
But this is an example how to put an object into the posemorph tag's target field:
#include "..\..\..\resource\modules\ca\res\description caposemorph.h"
BaseObject *obj = doc->GetActiveObject(); //The object the posemorph tag is on
BaseTag *pmTag = obj->GetTag(Tposemorph); //Get the posemorph tag
//Set the target object field in the posemorph tag
BaseObject *target = doc->SearchObject("My Target"); //<--- Your target object
pmTag->SetParameter(DescID(ID_CA_POSE_TARGET), GeData(target), DESCFLAGS_SET_0);
EventAdd();
That part is easy.
But I cannot for the life of me figure out how to get & change the pose slider's values in C++.
I can do it in python..But not in C++. 
There's a sub container with an ID# 4000 that hosts the poses. Which have ID#'s 1101,1201,1301,etc...
No matter what I do. I cannot get the values for these poses in C++. The container is always either NOTOK, or 1.
#include "..\..\..\resource\modules\ca\res\description caposemorph.h"
BaseObject *obj = doc->GetActiveObject(); //The object the posemorph tag is on
BaseTag *pmTag = obj->GetTag(Tposemorph); //Get the tag
BaseContainer *tagdata = pmTag->GetDataInstance(); //Gets the tag's container
BaseContainer bc = tagdata->GetContainer(4000); //The sub container that holds the list of pose sliders(1101,1201,1301,etc..)
GeData pose0 = bc.GetData(1101); //The first pose(pose.0)
Real value = tagdata->GetParameter(DescID(4000), pose0); //Always results in 1!!?
GePrint(LongToString(value));
EventAdd();
Anyone know how to get at these values?
-ScottA