//+--------------------------------------------------------------------------+ //| From PFOperatorMaterialStaticState::IPFActionState | //+--------------------------------------------------------------------------+ IOResult PFOperatorMaterialStaticState::Save(ISave* isave) const { ULONG nb; IOResult res; isave->BeginChunk(IPFActionState::kChunkActionHandle); ULONG handle = actionHandle(); if ((res = isave->Write(&handle, sizeof(ULONG), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkRandGen); if ((res = isave->Write(randGen(), sizeof(RandGenerator), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkData); float offset = cycleOffset(); if ((res = isave->Write(&offset, sizeof(float), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkData2); TimeValue time = offsetTime(); if ((res = isave->Write(&time, sizeof(TimeValue), &nb)) != IO_OK) return res; isave->EndChunk(); return IO_OK; }
//+--------------------------------------------------------------------------+ //| From PFTestSplitByAmountState::IPFActionState | //+--------------------------------------------------------------------------+ IOResult PFTestSplitByAmountState::Save(ISave* isave) const { ULONG nb; IOResult res; isave->BeginChunk(IPFActionState::kChunkActionHandle); ULONG handle = actionHandle(); if ((res = isave->Write(&handle, sizeof(ULONG), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkRandGen); if ((res = isave->Write(randGen(), sizeof(RandGenerator), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkData); int wT = wentThru(); if ((res = isave->Write(&wT, sizeof(int), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkData2); int wTA = wentThruAccum(); if ((res = isave->Write(&wTA, sizeof(int), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkData3); int wTT = wentThruTotal(); if ((res = isave->Write(&wTT, sizeof(int), &nb)) != IO_OK) return res; isave->EndChunk(); return IO_OK; }
//+--------------------------------------------------------------------------+ //| From PFOperatorMaterialFrequencyState::IPFActionState | //+--------------------------------------------------------------------------+ IOResult PFOperatorMaterialFrequencyState::Save(ISave* isave) const { ULONG nb; IOResult res; isave->BeginChunk(IPFActionState::kChunkActionHandle); ULONG handle = actionHandle(); if ((res = isave->Write(&handle, sizeof(ULONG), &nb)) != IO_OK) return res; isave->EndChunk(); isave->BeginChunk(IPFActionState::kChunkRandGen); if ((res = isave->Write(randGen(), sizeof(RandGenerator), &nb)) != IO_OK) return res; isave->EndChunk(); return IO_OK; }