View Full Version : [SDK] What do these undocumented methods do?


lo
03 March 2012, 03:00 PM
void* Bitmap::GetVFBData ( )
void Bitmap::SetVFBData ( void * vfb )

DWORD Bitmap::GetModifyID ( )
void Bitmap::SetModifyID ( DWORD m )
BMMExport void Bitmap::IncrModifyID ( )

Seeing how it's been about 17 years since the Bitmap class was written I thought the documentation would be completed at some point...
Does anyone have any idea what any of these methods do or what is the data they return?

spacefrog
03 March 2012, 04:30 PM
Not knowing, just guesswork

From Bitmap.h

private:
....
DWORD modifyID; // changes when bitmap changes: used in render effects
void *vfbData;

public:
inline void *GetVFBData( ) { return vfbData; }
inline void SetVFBData(void *vfb ) { vfbData = vfb; }
....
DWORD GetModifyID() { return modifyID; }
void SetModifyID(DWORD m) { modifyID = m; }
BMMExport void IncrModifyID();



After browsing through bitmap.h, they are simple accessor functions to some private members of the Bitmap Class ( private void *vfbData and private DWORD modifyID respectively)

i bet the void *vfbData simply is used to store some arbitrary, max internal data with the bitmap to implement some of the VFB functionality, it's already there in Max 7 SDK (do not have access to older versions), so it was'nt introduced with it's extended VFB render controls in Max 2009 ...

The modifyID on the other hand is, - according to Bitmap.h - used when dealing with effects rendering ( as they are bitmap based) , again i only guess that they are used to allow effects being rendered in the correct sequence

lo
03 March 2012, 04:46 PM
After browsing through bitmap.h, they are simple accessor functions to some private members of the Bitmap Class ( private void *vfbData and private DWORD modifyID respectively)

i bet the void *vfbData simply is used to store some arbitrary, max internal data with the bitmap to implement some of the VFB functionality, it's already there in Max 7 SDK (do not have access to older versions), so it was'nt introduced with it's extended VFB render controls in Max 2009 ...

The modifyID on the other hand is, - according to Bitmap.h - used when dealing with effects rendering ( as they are bitmap based) , again i only guess that they are used to allow effects being rendered in the correct sequence

Thanks, I saw those private members but missed the part about modifyID being related to effects.
void* vfbData does contain some non-null pointer but it's not castable to IImageViewer* or IMaxBitmapViewer*, it's not clear what it's pointing to.

CGTalk Moderation
03 March 2012, 04:46 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.


1