void PoseSeq::store(Mapping& archive, const BodyPtr body) const { archive.write("type", "PoseSeq"); archive.write("name", name(), DOUBLE_QUOTED); archive.write("targetBody", body->name(), DOUBLE_QUOTED); Listing& refsNode = *archive.createListing("refs"); for(PoseRefList::const_iterator p = refs.begin(); p != refs.end(); ++p){ const PoseRef& ref = *p; MappingPtr refNode = refsNode.newMapping(); refNode->write("time", ref.time()); if(ref.maxTransitionTime() > 0.0){ refNode->write("maxTransitionTime", ref.maxTransitionTime()); } const string& name = ref.name(); if((storedNames.find(name) == storedNames.end() /* && !ref.isExternalReference()*/) || name.empty()){ const_cast<PoseSeq*>(this)->storedNames.insert(name); MappingPtr childNode = refNode->createMapping("refer"); ref.poseUnit()->store(*childNode, body); } else { refNode->write("refer", name, DOUBLE_QUOTED); } } }
bool MovieRecorderImpl::store(Mapping& archive) { if(targetView){ archive.write("target", targetView->name()); } archive.write("recordingMode", recordingMode.selectedSymbol()); return dialog->store(archive); }
bool ConfigDialog::store(Mapping& archive) { archive.write("showViewMarker", viewMarkerCheck.isChecked()); archive.write("directory", directoryEntry.string()); archive.write("basename", basenameEntry.string()); archive.write("checkStartTime", startTimeCheck.isChecked()); archive.write("startTime", startTimeSpin.value()); archive.write("checkFinishTime", finishTimeCheck.isChecked()); archive.write("finishTime", finishTimeSpin.value()); archive.write("fps", fpsSpin.value()); archive.write("setSize", imageSizeCheck.isChecked()); archive.write("width", imageWidthSpin.value()); archive.write("height", imageHeightSpin.value()); archive.write("mouseCursor", mouseCursorCheck.isChecked()); return true; }
bool Task::storeState(AbstractTaskSequencer* sequencer, Mapping& archive) { archive.write("phaseIndex", sequencer->currentPhaseIndex()); return true; }