Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
On 31/08/2017 at 02:17, xxxxxxxx wrote:
User Information: Cinema 4D Version: R16 Platform: Windows ; Language(s) : C++ ;
--------- I have a tag plugin with a sorted basearray and everything was ok, until I implemented CopyTo(). Now I am getting "error C2248: 'maxon::SortedArray<MYSELF,ARRAY>::operator =' : cannot access private member declared in class 'maxon::SortedArray<MYSELF,ARRAY>' c:\program files\maxon\cinema 4d r16\plugins oggle visibility development\source oggle visibility.cpp 10 1 Toggle Visibility"
What to do? I read other posts about this issue, but I did not see a solution.
struct MySortedIntegerArray : public maxon::SortedArray<MySortedIntegerArray, maxon::BaseArray<Int> > { // your sorted array must implement a LessThan() method static inline maxon::Bool LessThan(Int a, Int b) { return a < b; } }; class ToggleVisibilityC : public TagData { public: MySortedIntegerArray switchFramesList; //is automatically sorted. Int32 switchFramesStartOnOff; virtual Bool Init(GeListNode* node); virtual EXECUTIONRESULT Execute(BaseTag* tag, BaseDocument* doc, BaseObject* op, BaseThread* bt, Int32 priority, EXECUTIONFLAGS flags); virtual Bool GetDDescription(GeListNode* node, Description* description, DESCFLAGS_DESC& flags); virtual Bool Message(GeListNode* node, Int32 type, void* data); virtual Bool CopyTo(NodeData* dest, GeListNode* snode, GeListNode* dnode, COPYFLAGS flags, AliasTrans* trn); .... }; Bool ToggleVisibilityC::CopyTo(NodeData* dest, GeListNode* snode, GeListNode* dnode, COPYFLAGS flags, AliasTrans* trn) { ((ToggleVisibilityC* )dest)->switchFramesList = switchFramesList; // <== Error ((ToggleVisibilityC* )dest)->switchFramesStartOnOff = switchFramesStartOnOff; return NodeData::CopyTo(dest, snode, dnode, flags, trn); //return true; }
On 31/08/2017 at 13:26, xxxxxxxx wrote:
((ToggleVisibilityC* )dest)->switchFramesList.CopyFrom(switchFramesList);
On 31/08/2017 at 23:10, xxxxxxxx wrote:
That works, thank you very much!
-Pim
On 01/09/2017 at 08:07, xxxxxxxx wrote:
Hello,
the documentation includes the description of the BaseArray class (and its member functions like CopyFrom() ).
best wishes, Sebastian