diff --git a/OpenMetaverse/AssemblyInfo.cs b/OpenMetaverse/AssemblyInfo.cs
index 13958b26..ffd17a2e 100644
--- a/OpenMetaverse/AssemblyInfo.cs
+++ b/OpenMetaverse/AssemblyInfo.cs
@@ -25,7 +25,7 @@ using System.Runtime.CompilerServices;
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
-[assembly: AssemblyVersion("1.0.0.*")]
+[assembly: AssemblyVersion("0.0.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
diff --git a/OpenMetaverse/Imaging/BakeLayer.cs b/OpenMetaverse/Imaging/BakeLayer.cs
index 3c8c3a88..9c7b94c9 100644
--- a/OpenMetaverse/Imaging/BakeLayer.cs
+++ b/OpenMetaverse/Imaging/BakeLayer.cs
@@ -389,7 +389,7 @@ namespace OpenMetaverse.Imaging
public static ManagedImage LoadAlphaLayer(string fileName)
{
- Stream stream = Helpers.GetResourceStream(fileName);
+ Stream stream = Helpers.GetResourceStream(fileName, Settings.RESOURCE_DIR);
if (stream != null)
{
diff --git a/OpenMetaverse/ProtocolManager.cs b/OpenMetaverse/ProtocolManager.cs
index 6d404006..f013dce6 100644
--- a/OpenMetaverse/ProtocolManager.cs
+++ b/OpenMetaverse/ProtocolManager.cs
@@ -27,22 +27,10 @@
using System;
using System.Collections.Generic;
using System.IO;
+using OpenMetaverse;
namespace OpenMetaverse
-{
- ///
- ///
- ///
- public enum PacketFrequency : byte
- {
- ///
- Low,
- ///
- Medium,
- ///
- High
- }
-
+{
///
///
///
diff --git a/OpenMetaverseCore/AssemblyInfo.cs b/OpenMetaverseCore/AssemblyInfo.cs
new file mode 100644
index 00000000..ae3a15d1
--- /dev/null
+++ b/OpenMetaverseCore/AssemblyInfo.cs
@@ -0,0 +1,33 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("OpenMetaverse Networking Core")]
+[assembly: AssemblyDescription("The OpenMetaverse Network abstraction library")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("OpenMetaverse")]
+[assembly: AssemblyProduct("libOpenMetaverse")]
+[assembly: AssemblyCopyright("2009 OpenMetaverse Foundation")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("71acd58b-2794-4ba7-982c-f08568881067")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+[assembly: AssemblyVersion("0.0.0.*")]
+[assembly: AssemblyFileVersion("0.0.0.0")]
diff --git a/OpenMetaverse/CapsToPacket.cs b/OpenMetaverseCore/CapsToPacket.cs
similarity index 96%
rename from OpenMetaverse/CapsToPacket.cs
rename to OpenMetaverseCore/CapsToPacket.cs
index 7a5edfcc..625f2281 100644
--- a/OpenMetaverse/CapsToPacket.cs
+++ b/OpenMetaverseCore/CapsToPacket.cs
@@ -153,7 +153,7 @@ namespace OpenMetaverse.Packets
}
catch (Exception e)
{
- Logger.Log(e.Message, Helpers.LogLevel.Error, e);
+ //FIXME Logger.Log(e.Message, Helpers.LogLevel.Error, e);
}
return packet;
diff --git a/OpenMetaverseCore/CoreTypes.cs b/OpenMetaverseCore/CoreTypes.cs
new file mode 100644
index 00000000..d289efae
--- /dev/null
+++ b/OpenMetaverseCore/CoreTypes.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace OpenMetaverse
+{
+ ///
+ ///
+ ///
+ public enum PacketFrequency : byte
+ {
+ ///
+ Low,
+ ///
+ Medium,
+ ///
+ High
+ }
+}
diff --git a/OpenMetaverse/Helpers.cs b/OpenMetaverseCore/Helpers.cs
similarity index 89%
rename from OpenMetaverse/Helpers.cs
rename to OpenMetaverseCore/Helpers.cs
index 31d73cc4..3a62c84b 100644
--- a/OpenMetaverse/Helpers.cs
+++ b/OpenMetaverseCore/Helpers.cs
@@ -301,11 +301,13 @@ namespace OpenMetaverse
}
catch (Exception ex)
{
- Logger.Log(String.Format("Zerodecoding error: i={0}, srclen={1}, bodylen={2}, zerolen={3}\n{4}\n{5}",
- i, srclen, bodylen, zerolen, Utils.BytesToHexString(src, srclen, null), ex), LogLevel.Error);
- }
+ throw new IndexOutOfRangeException(String.Format("Zerodecoding error: i={0}, srclen={1}, bodylen={2}, zerolen={3}\n{4}\n{5}",
+ i, srclen, bodylen, zerolen, Utils.BytesToHexString(src, srclen, null)), ex.InnerException);
- return 0;
+ //Logger.Log(String.Format("Zerodecoding error: i={0}, srclen={1}, bodylen={2}, zerolen={3}\n{4}\n{5}",
+ // i, srclen, bodylen, zerolen, Utils.BytesToHexString(src, srclen, null), ex), LogLevel.Error);
+ }
+ return 0;
}
///
@@ -442,9 +444,9 @@ namespace OpenMetaverse
/// was not successfully loaded
public static System.IO.Stream GetResourceStream(string resourceName)
{
- return GetResourceStream(resourceName, Settings.RESOURCE_DIR);
+ return GetResourceStream(resourceName, "openmetaverse_data");
}
-
+
///
/// Attempts to load a file either embedded in the assembly or found in
/// a given search path
@@ -479,53 +481,6 @@ namespace OpenMetaverse
}
return null;
- }
-
- ///
- /// Converts a list of primitives to an object that can be serialized
- /// with the LLSD system
- ///
- /// Primitives to convert to a serializable object
- /// An object that can be serialized with LLSD
- public static StructuredData.OSD PrimListToOSD(List prims)
- {
- StructuredData.OSDMap map = new OpenMetaverse.StructuredData.OSDMap(prims.Count);
-
- for (int i = 0; i < prims.Count; i++)
- map.Add(prims[i].LocalID.ToString(), prims[i].GetOSD());
-
- return map;
- }
-
- ///
- /// Deserializes OSD in to a list of primitives
- ///
- /// Structure holding the serialized primitive list,
- /// must be of the SDMap type
- /// A list of deserialized primitives
- public static List OSDToPrimList(StructuredData.OSD osd)
- {
- if (osd.Type != StructuredData.OSDType.Map)
- throw new ArgumentException("LLSD must be in the Map structure");
-
- StructuredData.OSDMap map = (StructuredData.OSDMap)osd;
- List prims = new List(map.Count);
-
- foreach (KeyValuePair kvp in map)
- {
- Primitive prim = Primitive.FromOSD(kvp.Value);
- prim.LocalID = UInt32.Parse(kvp.Key);
- prims.Add(prim);
- }
-
- return prims;
- }
-
- public static AttachmentPoint StateToAttachmentPoint(uint state)
- {
- const uint ATTACHMENT_MASK = 0xF0;
- uint fixedState = (((byte)state & ATTACHMENT_MASK) >> 4) | (((byte)state & ~ATTACHMENT_MASK) << 4);
- return (AttachmentPoint)fixedState;
- }
+ }
}
}
diff --git a/OpenMetaverse/_Packets_.cs b/OpenMetaverseCore/_Packets_.cs
similarity index 100%
rename from OpenMetaverse/_Packets_.cs
rename to OpenMetaverseCore/_Packets_.cs
diff --git a/Programs/PrimWorkshop/frmBrowser.cs b/Programs/PrimWorkshop/frmBrowser.cs
index 75942d17..4c654746 100644
--- a/Programs/PrimWorkshop/frmBrowser.cs
+++ b/Programs/PrimWorkshop/frmBrowser.cs
@@ -328,7 +328,7 @@ namespace PrimWorkshop
textures = 0;
// Write the LLSD to the hard drive in XML format
- string output = OSDParser.SerializeLLSDXmlString(Helpers.PrimListToOSD(primList));
+ string output = OSDParser.SerializeLLSDXmlString(ClientHelpers.PrimListToOSD(primList));
try
{
// Create a temporary directory
@@ -499,7 +499,7 @@ namespace PrimWorkshop
// Decode the .prims file
string raw = File.ReadAllText(primFile);
OSD osd = OSDParser.DeserializeLLSDXml(raw);
- return Helpers.OSDToPrimList(osd);
+ return ClientHelpers.OSDToPrimList(osd);
}
catch (Exception e)
{
diff --git a/Programs/PrimWorkshop/frmPrimWorkshop.cs b/Programs/PrimWorkshop/frmPrimWorkshop.cs
index cc324eb7..4cf302c5 100644
--- a/Programs/PrimWorkshop/frmPrimWorkshop.cs
+++ b/Programs/PrimWorkshop/frmPrimWorkshop.cs
@@ -275,7 +275,7 @@ namespace PrimWorkshop
if (osd != null && osd.Type == OSDType.Map)
{
- List primList = Helpers.OSDToPrimList(osd);
+ List primList = ClientHelpers.OSDToPrimList(osd);
Prims = new List(primList.Count);
for (int i = 0; i < primList.Count; i++)
diff --git a/Programs/examples/TestClient/Commands/Appearance/AttachmentsCommand.cs b/Programs/examples/TestClient/Commands/Appearance/AttachmentsCommand.cs
index 38085ee0..cb8c11ce 100644
--- a/Programs/examples/TestClient/Commands/Appearance/AttachmentsCommand.cs
+++ b/Programs/examples/TestClient/Commands/Appearance/AttachmentsCommand.cs
@@ -23,7 +23,7 @@ namespace OpenMetaverse.TestClient
for (int i = 0; i < attachments.Count; i++)
{
Primitive prim = attachments[i];
- AttachmentPoint point = Helpers.StateToAttachmentPoint(prim.PrimData.State);
+ AttachmentPoint point = StateToAttachmentPoint(prim.PrimData.State);
// TODO: Fetch properties for the objects with missing property sets so we can show names
Logger.Log(String.Format("[Attachment @ {0}] LocalID: {1} UUID: {2} Offset: {3}",
@@ -32,5 +32,12 @@ namespace OpenMetaverse.TestClient
return "Found " + attachments.Count + " attachments";
}
+
+ public static AttachmentPoint StateToAttachmentPoint(uint state)
+ {
+ const uint ATTACHMENT_MASK = 0xF0;
+ uint fixedState = (((byte)state & ATTACHMENT_MASK) >> 4) | (((byte)state & ~ATTACHMENT_MASK) << 4);
+ return (AttachmentPoint)fixedState;
+ }
}
}
diff --git a/Programs/examples/TestClient/Commands/Prims/ExportCommand.cs b/Programs/examples/TestClient/Commands/Prims/ExportCommand.cs
index dd3cc310..4fe4d46b 100644
--- a/Programs/examples/TestClient/Commands/Prims/ExportCommand.cs
+++ b/Programs/examples/TestClient/Commands/Prims/ExportCommand.cs
@@ -100,7 +100,7 @@ namespace OpenMetaverse.TestClient
Logger.Log(uuid.ToString(), Helpers.LogLevel.Warning, Client);
}
- string output = OSDParser.SerializeLLSDXmlString(Helpers.PrimListToOSD(prims));
+ string output = OSDParser.SerializeLLSDXmlString(ClientHelpers.PrimListToOSD(prims));
try { File.WriteAllText(file, output); }
catch (Exception e) { return e.Message; }
diff --git a/Programs/examples/TestClient/Commands/Prims/ImportCommand.cs b/Programs/examples/TestClient/Commands/Prims/ImportCommand.cs
index 5c2755f4..5e20abbe 100644
--- a/Programs/examples/TestClient/Commands/Prims/ImportCommand.cs
+++ b/Programs/examples/TestClient/Commands/Prims/ImportCommand.cs
@@ -63,7 +63,7 @@ namespace OpenMetaverse.TestClient
try { xml = File.ReadAllText(filename); }
catch (Exception e) { return e.Message; }
- try { prims = Helpers.OSDToPrimList(OSDParser.DeserializeLLSDXml(xml)); }
+ try { prims = ClientHelpers.OSDToPrimList(OSDParser.DeserializeLLSDXml(xml)); }
catch (Exception e) { return "Failed to deserialize " + filename + ": " + e.Message; }
// Build an organized structure from the imported prims
diff --git a/mapgen.bat b/mapgen.bat
index ab69895a..95f8b18b 100644
--- a/mapgen.bat
+++ b/mapgen.bat
@@ -1 +1 @@
-"bin/mapgenerator.exe" data/message_template.msg Programs/mapgenerator/template.cs Programs/mapgenerator/unusedpackets.txt OpenMetaverse/_Packets_.cs
\ No newline at end of file
+"bin/mapgenerator.exe" data/message_template.msg Programs/mapgenerator/template.cs Programs/mapgenerator/unusedpackets.txt OpenMetaverseCore/_Packets_.cs
\ No newline at end of file
diff --git a/prebuild.xml b/prebuild.xml
index f02ee900..e5b9262a 100644
--- a/prebuild.xml
+++ b/prebuild.xml
@@ -1 +1,828 @@
-
TRACE;DEBUG
false
false
true
4
false
1591,1574,0419,0618
bin
true
true
false
TRACE
true
false
true
4
false
1591,1574,0419,0618
bin
false
true
false
../bin/
../bin/
../bin/
../bin/
../bin/
OpenMetaverseTypes.XML
../bin/
../bin/
../bin/
OpenMetaverse.StructuredData.XML
../bin/
../bin/
../bin/
OpenMetaverse.Http.XML
../bin/
../bin/
../bin/
OpenMetaverse.XML
../bin/
../bin/
../bin/
OpenMetaverse.Utilities.XML
../bin/
../bin/
../bin/
../bin/
../../bin/
../../bin/
../../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
../bin/
OpenMetaverse.GUI.XML
../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
../../../bin/
\ No newline at end of file
+
+
+
+
+
+ TRACE;DEBUG
+ false
+ false
+ true
+ 4
+ false
+ 1591,1574,0419,0618
+ bin
+ true
+ true
+ false
+
+
+
+
+ TRACE
+ true
+ false
+ true
+ 4
+ false
+ 1591,1574,0419,0618
+ bin
+ false
+ true
+ false
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverseTypes.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverse.StructuredData.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverse.Http.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverseCore.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverse.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverse.Utilities.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+ ../bin/
+
+
+
+
+ ../bin/
+ OpenMetaverse.GUI.XML
+
+
+
+ ../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../bin/
+
+
+
+
+ ../../bin/
+
+
+
+ ../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ../../../bin/
+
+
+
+
+ ../../../bin/
+
+
+
+ ../../../bin/
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+