TPOS
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 08/11/2002 at 09:08, xxxxxxxx wrote:
User Information:
Cinema 4D Version: 8.012
Platform: Windows ; Mac ; Mac OSX ;
Language(s) : C++ ;---------
I can include the c4d_particles.h and assumed I could make the following call:
(*TPOS->MSYS->NumParticles)();
The compiler tells me that 'term does not evaluate to a function'. Any ideas?
How do I call the functions within the 'TP_MasterSystem' structure?
darf - bhodiNUT -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 09/11/2002 at 17:24, xxxxxxxx wrote:
does anyone know how to do this?
-
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 10/11/2002 at 06:52, xxxxxxxx wrote:
Quote: Originally posted by mdme sadie on 09 November 2002
>
> * * *
>
> does anyone know how to do this?
>
> * * *
Sorry, but your posts don't accelerate the support process. (In fact they just slowed it down since I had to reply to this.) Further one-liners will be deleted.
/The stern moderator... -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 10/11/2002 at 06:57, xxxxxxxx wrote:
Quote: Originally posted by darf on 08 November 2002
>
> * * *
>
> I can include the c4d_particles.h and assumed I could make the following call:
>
> (*TPOS->MSYS->NumParticles)();
>
> The compiler tells me that 'term does not evaluate to a function'. Any ideas?
>
> How do I call the functions within the 'TP_MasterSystem' structure?
Who ever said member function pointers were nice? (They're a good candidate for worst C++ syntax.)
However, you're not supposed to be using these structures. Look further down at TP_MasterSystem. There you have a real class with real functions.
(If you really want to know the syntax, have a look at the TpCall macro.)
You can probably get your TP_MasterSystem with "FindSceneHook(doc, ID_THINKINGPARTICLES)". (I'm not 100% sure about the ID part.) -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 13/11/2002 at 08:38, xxxxxxxx wrote:
Quote: Originally posted by Mikael Sterner on 10 November 2002
>
> * * *
>
> You can probably get your TP_MasterSystem with "FindSceneHook(doc, ID_THINKINGPARTICLES)". (I'm not 100% sure about the ID part.)
>
> * * *Tried this. There is a valid pointer received but I am not sure where to go to retrieve the actual data that would contain the TP_MasterSystem. GetData retrieves a BaseContainer with a couple of items ( LONGs ) that are not of importance in this case ( I don't believe they are anyway ). I also tried GetCustomData but that did not seem to turn up a valid pointer.
Any ideas?
Did I mention your help has been invaluable!? Thank you!
darf - bhodiNUT -
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 13/11/2002 at 09:10, xxxxxxxx wrote:
Quote: Originally posted by darf on 13 November 2002
>
> * * *
>
> Tried this. There is a valid pointer received but I am not sure where to go to retrieve the actual data that would contain the TP_MasterSystem. GetData retrieves a BaseContainer with a couple of items ( LONGs ) that are not of importance in this case ( I don't believe they are anyway ). I also tried GetCustomData but that did not seem to turn up a valid pointer.
>
> Any ideas?
Uhm, what you get *is* the master system. However, it seems to assume that the global TPOS variable has been initialized. So you'll have to help it with a CheckLib:PluginSceneHook* hook = doc->FindSceneHook(ID_THINKINGPARTICLES); if (!hook || hook->GetType() != ID_THINKINGPARTICLES) return FALSE; if (!CheckLib( ID_THINKINGPARTICLES, LIBOFFSET(C4DLibrary_TPOS, MSYS), reinterpret_cast<C4DLibrary**>(&TPOS))) return FALSE; TP_MasterSystem* tpms = static_cast<TP_MasterSystem*>(hook); for (LONG pid = 0; pid < tpms->NumParticles(); ++pid) { GePrint(" pid: " + LongToString(pid) + " age: " + RealToString(tpms->Age(pid).Get())); }
> Did I mention your help has been invaluable!? Thank you!
You're welcome!