Fix [#25715] [!] key doesn't work on french keyboard with Windows XP/7.\nSubmitted...
[blender-staging.git] / intern / container / CTR_TaggedSetOps.h
index 6c550e6ff223f236dd1aca76d03b77b830c9275c..4790fcccbdcf767ab73071ee1f42c815a9e8e284 100644 (file)
@@ -1,14 +1,11 @@
 /**
  * $Id$
- * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
+ * ***** BEGIN GPL LICENSE BLOCK *****
  *
  * This program is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License
  * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version. The Blender
- * Foundation also sells licenses for use in proprietary software under
- * the Blender License.  See http://www.blender.org/BL/ for information
- * about this.
+ * of the License, or (at your option) any later version.
  *
  * This program is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -17,7 +14,7 @@
  *
  * You should have received a copy of the GNU General Public License
  * along with this program; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  *
  * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
  * All rights reserved.
  *
  * Contributor(s): none yet.
  *
- * ***** END GPL/BL DUAL LICENSE BLOCK *****
+ * ***** END GPL LICENSE BLOCK *****
  */
 
 #ifndef NAN_INCLUDED_LOD_TaggedSetOps_h
-
 #define NAN_INCLUDED_LOD_TaggedSetOps_h
 
 #include "MEM_NonCopyable.h"
@@ -90,8 +86,10 @@ public :
                // iterate through individual members of each vector
                // mark each obejct that the index points to 
 
-               std::vector< std::vector<IndexType> >::const_iterator last_vector = index_list.end();
-               std::vector< std::vector<IndexType> >::const_iterator start_vector = index_list.begin();
+               typename std::vector< std::vector<IndexType> >::const_iterator 
+                       last_vector = index_list.end();
+               typename std::vector< std::vector<IndexType> >::const_iterator 
+                       start_vector = index_list.begin();
 
                // FIXME some temporary space
 
@@ -102,8 +100,10 @@ public :
 
                for (; start_vector != last_vector; ++start_vector) {
 
-                       std::vector<IndexType>::const_iterator last_index = start_vector->end();
-                       std::vector<IndexType>::const_iterator start_index = start_vector->begin();
+                       typename std::vector<IndexType>::const_iterator 
+                               last_index = start_vector->end();
+                       typename std::vector<IndexType>::const_iterator 
+                               start_index = start_vector->begin();
 
                        for (; start_index != last_index; ++start_index) {
 
@@ -124,8 +124,10 @@ public :
                                
                // now iterate through the union and pull out all those with the right tag
                
-               std::vector<IndexType>::const_iterator last_index = temp_union.end();
-               std::vector<IndexType>::const_iterator start_index = temp_union.begin();
+               typename std::vector<IndexType>::const_iterator last_index = 
+                       temp_union.end();
+               typename std::vector<IndexType>::const_iterator start_index = 
+                       temp_union.begin();
 
                for (; start_index != last_index; ++start_index) {
 
@@ -156,8 +158,10 @@ public :
                std::vector<IndexType> &output
        ) {
                
-               std::vector<IndexType>::const_iterator last_index = a.end();
-               std::vector<IndexType>::const_iterator start_index = a.begin();
+               typename std::vector<IndexType>::const_iterator last_index = 
+                       a.end();
+               typename std::vector<IndexType>::const_iterator start_index = 
+                       a.begin();
 
                for (; start_index != last_index; ++start_index) {
                        ObjectType & prim = primitives[*start_index];
@@ -195,13 +199,17 @@ public :
                // iterate through individual members of each vector
                // mark each obejct that the index points to 
 
-               std::vector< std::vector<IndexType> >::const_iterator last_vector = index_list.end();
-               std::vector< std::vector<IndexType> >::iterator start_vector = index_list.begin();
+               typename std::vector< std::vector<IndexType> >::const_iterator 
+                       last_vector = index_list.end();
+               typename std::vector< std::vector<IndexType> >::iterator 
+                       start_vector = index_list.begin();
 
                for (; start_vector != last_vector; ++start_vector) {
 
-                       std::vector<IndexType>::const_iterator last_index = start_vector->end();
-                       std::vector<IndexType>::iterator start_index = start_vector->begin();
+                       typename std::vector<IndexType>::const_iterator 
+                               last_index = start_vector->end();
+                       typename std::vector<IndexType>::iterator 
+                               start_index = start_vector->begin();
 
                        for (; start_index != last_index; ++start_index) {
 
@@ -217,8 +225,10 @@ public :
                                
                // now iterate through the union and reset the tags
                
-               std::vector<IndexType>::const_iterator last_index = output.end();
-               std::vector<IndexType>::iterator start_index = output.begin();
+               typename std::vector<IndexType>::const_iterator last_index = 
+                       output.end();
+               typename std::vector<IndexType>::iterator start_index = 
+                       output.begin();
 
                for (; start_index != last_index; ++start_index) {
 
@@ -240,8 +250,10 @@ public :
                // iterate through b mark all
                // iterate through a and add to output all unmarked 
 
-               std::vector<IndexType>::const_iterator last_index = b.end();
-               std::vector<IndexType>::iterator start_index = b.begin();
+               typename std::vector<IndexType>::const_iterator last_index = 
+                       b.end();
+               typename std::vector<IndexType>::iterator start_index = 
+                       b.begin();
 
                for (; start_index != last_index; ++start_index) {