public void AddGenericData(string Key, object Value) { if (Value is OSD) { m_GenericMap[Key] = Value as OSD; } else { m_GenericMap[Key] = OSD.FromObject(Value); } }
public OSDArray ArrayListToOSDArray(ArrayList arrlst) { OSDArray llsdBack = new OSDArray(); foreach (Hashtable ht in arrlst) { OSDMap mp = new OSDMap(); foreach (DictionaryEntry deHt in ht) { mp.Add((string)deHt.Key, OSD.FromObject(deHt.Value)); } llsdBack.Add(mp); } return(llsdBack); }
public object ObjectToLisp(object prim) { OSD data = OSD.FromObject(prim); if (data.Type != OSDType.Unknown) { return(SerializeLisp(data)); } Type t = prim.GetType(); foreach (FieldInfo PI in t.GetFields(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public)) { object value = ToLispValue(PI.FieldType, PI.GetValue(prim)); object kv = new Cons(PI.Name, new Cons(value, null)); } return(prim); }
private static OSD BuildLLSDBlock(object block) { OSDMap map = new OSDMap(); Type blockType = block.GetType(); foreach (FieldInfo field in blockType.GetFields()) { if (field.IsPublic) { map[field.Name] = OSD.FromObject(field.GetValue(block)); } } foreach (PropertyInfo property in blockType.GetProperties()) { if (property.Name != "Length") { map[property.Name] = OSD.FromObject(property.GetValue(block, null)); } } return(map); }