aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs')
-rw-r--r--OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs44
1 files changed, 29 insertions, 15 deletions
diff --git a/OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs b/OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs
index 689abcf..bb8b0f7 100644
--- a/OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs
+++ b/OpenSim/Region/Environment/Modules/World/Terrain/FileLoaders/RAW32.cs
@@ -41,22 +41,10 @@ namespace OpenSim.Region.Environment.Modules.World.Terrain.FileLoaders
41 41
42 public ITerrainChannel LoadFile(string filename) 42 public ITerrainChannel LoadFile(string filename)
43 { 43 {
44 TerrainChannel retval = new TerrainChannel();
45
46 FileInfo file = new FileInfo(filename); 44 FileInfo file = new FileInfo(filename);
47 FileStream s = file.Open(FileMode.Open, FileAccess.Read); 45 FileStream s = file.Open(FileMode.Open, FileAccess.Read);
48 BinaryReader bs = new BinaryReader(s); 46 ITerrainChannel retval = LoadStream(s);
49 int y;
50 for (y = 0; y < retval.Height; y++)
51 {
52 int x;
53 for (x = 0; x < retval.Width; x++)
54 {
55 retval[x, y] = bs.ReadSingle();
56 }
57 }
58 47
59 bs.Close();
60 s.Close(); 48 s.Close();
61 49
62 return retval; 50 return retval;
@@ -124,11 +112,38 @@ namespace OpenSim.Region.Environment.Modules.World.Terrain.FileLoaders
124 112
125 return retval; 113 return retval;
126 } 114 }
115
116 public ITerrainChannel LoadStream(Stream s)
117 {
118 TerrainChannel retval = new TerrainChannel();
119
120 BinaryReader bs = new BinaryReader(s);
121 int y;
122 for (y = 0; y < retval.Height; y++)
123 {
124 int x;
125 for (x = 0; x < retval.Width; x++)
126 {
127 retval[x, y] = bs.ReadSingle();
128 }
129 }
127 130
131 bs.Close();
132
133 return retval;
134 }
135
128 public void SaveFile(string filename, ITerrainChannel map) 136 public void SaveFile(string filename, ITerrainChannel map)
129 { 137 {
130 FileInfo file = new FileInfo(filename); 138 FileInfo file = new FileInfo(filename);
131 FileStream s = file.Open(FileMode.Create, FileAccess.Write); 139 FileStream s = file.Open(FileMode.Create, FileAccess.Write);
140 SaveStream(s, map);
141
142 s.Close();
143 }
144
145 public void SaveStream(Stream s, ITerrainChannel map)
146 {
132 BinaryWriter bs = new BinaryWriter(s); 147 BinaryWriter bs = new BinaryWriter(s);
133 148
134 int y; 149 int y;
@@ -141,8 +156,7 @@ namespace OpenSim.Region.Environment.Modules.World.Terrain.FileLoaders
141 } 156 }
142 } 157 }
143 158
144 bs.Close(); 159 bs.Close();
145 s.Close();
146 } 160 }
147 161
148 #endregion 162 #endregion