Added code to serialization/deserialize LocalFlags. Need further testing to see if it's necessary.

dsg
Huaiyu (Kitty) Liu 2011-02-08 15:55:00 -08:00
parent e8e9a0fb43
commit 2dc857b31d
2 changed files with 12 additions and 3 deletions

View File

@ -5734,6 +5734,7 @@ namespace OpenSim.Region.Framework.Scenes
"EveryoneMask", "EveryoneMask",
"NextOwnerMask", "NextOwnerMask",
"Flags", "Flags",
"LocalFlags",
"CollisionSound", "CollisionSound",
"CollisionSoundVolume", "CollisionSoundVolume",
"MediaUrl", "MediaUrl",

View File

@ -330,6 +330,7 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
m_SOPXmlProcessors.Add("ParticleSystem", ProcessParticleSystem); m_SOPXmlProcessors.Add("ParticleSystem", ProcessParticleSystem);
//SYMMETRIC SYNC //SYMMETRIC SYNC
m_SOPXmlProcessors.Add("LocalFlags", ProcessLocalFlags);
//m_SOPXmlProcessors.Add("LastUpdateTimeStamp", ProcessUpdateTimeStamp); //m_SOPXmlProcessors.Add("LastUpdateTimeStamp", ProcessUpdateTimeStamp);
//m_SOPXmlProcessors.Add("LastUpdateActorID", ProcessLastUpdateActorID); //m_SOPXmlProcessors.Add("LastUpdateActorID", ProcessLastUpdateActorID);
m_SOPXmlProcessors.Add("BucketSyncInfoList", ProcessBucketSyncInfo); m_SOPXmlProcessors.Add("BucketSyncInfoList", ProcessBucketSyncInfo);
@ -715,6 +716,11 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
} }
* */ * */
private static void ProcessLocalFlags(SceneObjectPart obj, XmlTextReader reader)
{
obj.LocalFlags = Util.ReadEnum<PrimFlags>(reader, "LocalFlags");
}
public static void ProcessBucketSyncInfo(SceneObjectPart obj, XmlTextReader reader) public static void ProcessBucketSyncInfo(SceneObjectPart obj, XmlTextReader reader)
{ {
obj.BucketSyncInfoList = new Dictionary<string, BucketSyncInfo>(); obj.BucketSyncInfoList = new Dictionary<string, BucketSyncInfo>();
@ -1236,8 +1242,10 @@ namespace OpenSim.Region.Framework.Scenes.Serialization
writer.WriteElementString("EveryoneMask", sop.EveryoneMask.ToString()); writer.WriteElementString("EveryoneMask", sop.EveryoneMask.ToString());
writer.WriteElementString("NextOwnerMask", sop.NextOwnerMask.ToString()); writer.WriteElementString("NextOwnerMask", sop.NextOwnerMask.ToString());
//SYMMETRIC SYNC: also serialize SceneObjectPart:LocalFlags, so that it can be propogated across actors //SYMMETRIC SYNC: also serialize SceneObjectPart:LocalFlags, so that it can be propogated across actors
//WriteFlags(writer, "Flags", sop.Flags.ToString(), options); WriteFlags(writer, "Flags", sop.Flags.ToString(), options);
WriteFlags(writer, "Flags", sop.GetEffectiveObjectFlags().ToString(), options); WriteFlags(writer, "LocalFlags", sop.LocalFlags.ToString(), options);
//writer.WriteElementString("Flags", sop.Flags.ToString());
//writer.WriteElementString("LocalFlags", sop.Flags.ToString());
//end SYMMETRIC SYNC //end SYMMETRIC SYNC
WriteUUID(writer, "CollisionSound", sop.CollisionSound, options); WriteUUID(writer, "CollisionSound", sop.CollisionSound, options);
writer.WriteElementString("CollisionSoundVolume", sop.CollisionSoundVolume.ToString()); writer.WriteElementString("CollisionSoundVolume", sop.CollisionSoundVolume.ToString());