History

Added GridSolutionsFramework.sln to source control.

StephenCWills committed 14 years ago

Commit c5f7ca6No parent (first commit)915 files · +335125 −-73Browse files

Showing the changes to Source/Libraries/TSFJavaLibrary/src/org/gpa/tsf/util/ArrayExtensions.java (1 of 915 files). Show all

Unified · Split

Source/Libraries/TSFJavaLibrary/src/org/gpa/tsf/util/ArrayExtensions.java+195−0
@@ -0,0 +1,195 @@
1+//******************************************************************************************************
2+// ArrayExtensions.java - Gbtc
3+//
4+// Copyright � 2010, Grid Protection Alliance. All Rights Reserved.
5+//
6+// Licensed to the Grid Protection Alliance (GPA) under one or more contributor license agreements. See
7+// the NOTICE file distributed with this work for additional information regarding copyright ownership.
8+// The GPA licenses this file to you under the Eclipse Public License -v 1.0 (the "License"); you may
9+// not use this file except in compliance with the License. You may obtain a copy of the License at:
10+//
11+// http://www.opensource.org/licenses/eclipse-1.0.php
12+//
13+// Unless agreed to in writing, the subject software distributed under the License is distributed on an
14+// "AS-IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. Refer to the
15+// License for the specific language governing permissions and limitations.
16+//
17+// Code Modification History:
18+// ----------------------------------------------------------------------------------------------------
19+// 04/18/2012 - Stephen C. Wills
20+// Generated original version of source code.
21+//
22+//******************************************************************************************************
23+
24+package org.gpa.tsf.util;
25+
26+/**
27+ * Utility class that provides additional functionality for arrays.
28+ */
29+public class ArrayExtensions
30+{
31+ /**
32+ * Copies the specified number of bytes from the source array to the
33+ * destination array, starting from the given offsets in each array.
34+ *
35+ * @param source the source array
36+ * @param srcOffset the offset into the source array where the data
37+ * to be copied starts
38+ * @param dest the destination array
39+ * @param destOffset the offset into the destination array where the
40+ * data is to be copied
41+ * @param length the amount of data to be copied
42+ */
43+ public static void blockCopy(byte[] source, int srcOffset, byte[] dest, int destOffset, int length)
44+ {
45+ for (int i = 0; i < length; i++)
46+ dest[destOffset + i] = source[srcOffset + i];
47+ }
48+
49+ /**
50+ * Copies the specified number of short integers from the source array
51+ * to the destination array, starting from the given offsets in each
52+ * array.
53+ *
54+ * @param source the source array
55+ * @param srcOffset the offset into the source array where the data
56+ * to be copied starts
57+ * @param dest the destination array
58+ * @param destOffset the offset into the destination array where the
59+ * data is to be copied
60+ * @param length the amount of data to be copied
61+ */
62+ public static void blockCopy(short[] source, int srcOffset, short[] dest, int destOffset, int length)
63+ {
64+ for (int i = 0; i < length; i++)
65+ dest[destOffset + i] = source[srcOffset + i];
66+ }
67+
68+ /**
69+ * Copies the specified number of integers from the source array to the
70+ * destination array, starting from the given offsets in each array.
71+ *
72+ * @param source the source array
73+ * @param srcOffset the offset into the source array where the data
74+ * to be copied starts
75+ * @param dest the destination array
76+ * @param destOffset the offset into the destination array where the
77+ * data is to be copied
78+ * @param length the amount of data to be copied
79+ */
80+ public static void blockCopy(int[] source, int srcOffset, int[] dest, int destOffset, int length)
81+ {
82+ for (int i = 0; i < length; i++)
83+ dest[destOffset + i] = source[srcOffset + i];
84+ }
85+
86+ /**
87+ * Copies the specified number of long integers from the source array
88+ * to the destination array, starting from the given offsets in each
89+ * array.
90+ *
91+ * @param source the source array
92+ * @param srcOffset the offset into the source array where the data
93+ * to be copied starts
94+ * @param dest the destination array
95+ * @param destOffset the offset into the destination array where the
96+ * data is to be copied
97+ * @param length the amount of data to be copied
98+ */
99+ public static void blockCopy(long[] source, int srcOffset, long[] dest, int destOffset, int length)
100+ {
101+ for (int i = 0; i < length; i++)
102+ dest[destOffset + i] = source[srcOffset + i];
103+ }
104+
105+ /**
106+ * Copies the specified number of floats from the source array to the
107+ * destination array, starting from the given offsets in each array.
108+ *
109+ * @param source the source array
110+ * @param srcOffset the offset into the source array where the data
111+ * to be copied starts
112+ * @param dest the destination array
113+ * @param destOffset the offset into the destination array where the
114+ * data is to be copied
115+ * @param length the amount of data to be copied
116+ */
117+ public static void blockCopy(float[] source, int srcOffset, float[] dest, int destOffset, int length)
118+ {
119+ for (int i = 0; i < length; i++)
120+ dest[destOffset + i] = source[srcOffset + i];
121+ }
122+
123+ /**
124+ * Copies the specified number of doubles from the source array to the
125+ * destination array, starting from the given offsets in each array.
126+ *
127+ * @param source the source array
128+ * @param srcOffset the offset into the source array where the data
129+ * to be copied starts
130+ * @param dest the destination array
131+ * @param destOffset the offset into the destination array where the
132+ * data is to be copied
133+ * @param length the amount of data to be copied
134+ */
135+ public static void blockCopy(double[] source, int srcOffset, double[] dest, int destOffset, int length)
136+ {
137+ for (int i = 0; i < length; i++)
138+ dest[destOffset + i] = source[srcOffset + i];
139+ }
140+
141+ /**
142+ * Copies the specified number of boolean values from the source array
143+ * to the destination array, starting from the given offsets in each
144+ * array.
145+ *
146+ * @param source the source array
147+ * @param srcOffset the offset into the source array where the data
148+ * to be copied starts
149+ * @param dest the destination array
150+ * @param destOffset the offset into the destination array where the
151+ * data is to be copied
152+ * @param length the amount of data to be copied
153+ */
154+ public static void blockCopy(boolean[] source, int srcOffset, boolean[] dest, int destOffset, int length)
155+ {
156+ for (int i = 0; i < length; i++)
157+ dest[destOffset + i] = source[srcOffset + i];
158+ }
159+
160+ /**
161+ * Copies the specified number of characters from the source array to the
162+ * destination array, starting from the given offsets in each array.
163+ *
164+ * @param source the source array
165+ * @param srcOffset the offset into the source array where the data
166+ * to be copied starts
167+ * @param dest the destination array
168+ * @param destOffset the offset into the destination array where the
169+ * data is to be copied
170+ * @param length the amount of data to be copied
171+ */
172+ public static void blockCopy(char[] source, int srcOffset, char[] dest, int destOffset, int length)
173+ {
174+ for (int i = 0; i < length; i++)
175+ dest[destOffset + i] = source[srcOffset + i];
176+ }
177+
178+ /**
179+ * Copies the specified number of objects from the source array to the
180+ * destination array, starting from the given offsets in each array.
181+ *
182+ * @param source the source array
183+ * @param srcOffset the offset into the source array where the data
184+ * to be copied starts
185+ * @param dest the destination array
186+ * @param destOffset the offset into the destination array where the
187+ * data is to be copied
188+ * @param length the amount of data to be copied
189+ */
190+ public static <T> void blockCopy(T[] source, int srcOffset, T[] dest, int destOffset, int length)
191+ {
192+ for (int i = 0; i < length; i++)
193+ dest[destOffset + i] = source[srcOffset + i];
194+ }
195+}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t