Changeset 406 for trunk/src/lua/lua_glm.cc
- Timestamp:
- 06/20/15 00:05:17 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lua/lua_glm.cc
r397 r406 11 11 #include "nv/stl/type_traits/common.hh" 12 12 13 static size_t nlua_swizzel_lookup[256];13 static int nlua_swizzel_lookup[256]; 14 14 15 15 using nv::lua::detail::is_vec; … … 18 18 using nv::lua::detail::push_vec; 19 19 20 inline bool nlua_is_swizzel( const unsigned char* str, size_t max )20 inline bool nlua_is_swizzel( const unsigned char* str, int max ) 21 21 { 22 22 while (*str) … … 155 155 { 156 156 if ( lua_type( L, 1 ) == LUA_TNUMBER ) 157 push_vec<T>( L, (typename T::value_type)(lua_tonumber( L, 1 )) + to_vec<T>( L, 2 ) );157 push_vec<T>( L, static_cast<typename T::value_type>(lua_tonumber( L, 1 )) + to_vec<T>( L, 2 ) ); 158 158 else 159 159 if ( lua_type( L, 2 ) == LUA_TNUMBER ) 160 push_vec<T>( L, to_vec<T>( L, 1 ) + (typename T::value_type)(lua_tonumber( L, 2 )) );160 push_vec<T>( L, to_vec<T>( L, 1 ) + static_cast<typename T::value_type>(lua_tonumber( L, 2 )) ); 161 161 else 162 162 push_vec<T>( L, to_vec<T>( L, 1 ) + to_vec<T>( L, 2 ) ); … … 168 168 { 169 169 if ( lua_type( L, 1 ) == LUA_TNUMBER ) 170 push_vec<T>( L, (typename T::value_type)(lua_tonumber( L, 1 )) - to_vec<T>( L, 2 ) );170 push_vec<T>( L, static_cast<typename T::value_type>(lua_tonumber( L, 1 )) - to_vec<T>( L, 2 ) ); 171 171 else 172 172 if ( lua_type( L, 2 ) == LUA_TNUMBER ) 173 push_vec<T>( L, to_vec<T>( L, 1 ) - (typename T::value_type)(lua_tonumber( L, 2 )) );173 push_vec<T>( L, to_vec<T>( L, 1 ) - static_cast<typename T::value_type>(lua_tonumber( L, 2 )) ); 174 174 else 175 175 push_vec<T>( L, to_vec<T>( L, 1 ) - to_vec<T>( L, 2 ) ); … … 181 181 { 182 182 if ( lua_type( L, 1 ) == LUA_TNUMBER ) 183 push_vec<T>( L, (typename T::value_type)(lua_tonumber( L, 1 )) * to_vec<T>( L, 2 ) );183 push_vec<T>( L, static_cast<typename T::value_type>(lua_tonumber( L, 1 )) * to_vec<T>( L, 2 ) ); 184 184 else 185 185 if ( lua_type( L, 2 ) == LUA_TNUMBER ) 186 push_vec<T>( L, to_vec<T>( L, 1 ) * (typename T::value_type)(lua_tonumber( L, 2 )) );186 push_vec<T>( L, to_vec<T>( L, 1 ) * static_cast<typename T::value_type>(lua_tonumber( L, 2 )) ); 187 187 else 188 188 push_vec<T>( L, to_vec<T>( L, 1 ) * to_vec<T>( L, 2 ) ); … … 194 194 { 195 195 if ( lua_type( L, 1 ) == LUA_TNUMBER ) 196 push_vec<T>( L, (typename T::value_type)(lua_tonumber( L, 1 )) / to_vec<T>( L, 2 ) );196 push_vec<T>( L, static_cast<typename T::value_type>(lua_tonumber( L, 1 )) / to_vec<T>( L, 2 ) ); 197 197 else 198 198 if ( lua_type( L, 2 ) == LUA_TNUMBER ) 199 push_vec<T>( L, to_vec<T>( L, 1 ) / (typename T::value_type)(lua_tonumber( L, 2 )) );199 push_vec<T>( L, to_vec<T>( L, 1 ) / static_cast<typename T::value_type>(lua_tonumber( L, 2 )) ); 200 200 else 201 201 push_vec<T>( L, to_vec<T>( L, 1 ) / to_vec<T>( L, 2 ) ); … … 226 226 T* v = to_pvec<T>( L, 1 ); 227 227 size_t len = 0; 228 size_t vlen = v->length();229 const unsigned char * key = (const unsigned char *)( lua_tolstring( L, 2, &len ) );230 size_t idx = 255;228 int vlen = v->length(); 229 const unsigned char * key = reinterpret_cast<const unsigned char *>( lua_tolstring( L, 2, &len ) ); 230 int idx = 255; 231 231 232 232 if ( len == 1 ) … … 264 264 T* v = to_pvec<T>( L, 1 ); 265 265 size_t len = 0; 266 size_t vlen = v->length();267 const unsigned char * key = (const unsigned char *)( lua_tolstring( L, 2, &len ) );268 size_t idx = 255;266 int vlen = v->length(); 267 const unsigned char * key = reinterpret_cast<const unsigned char *>( lua_tolstring( L, 2, &len ) ); 268 int idx = 255; 269 269 if( len == 1 ) 270 270 { … … 272 272 if ( idx < vlen ) 273 273 { 274 (*v)[idx] = (typename T::value_type)luaL_checknumber( L, 3);274 (*v)[idx] = static_cast<typename T::value_type>( luaL_checknumber( L, 3 ) ); 275 275 return 0; 276 276 } … … 279 279 { 280 280 switch (len) { 281 case 2 : { vec2 v2 = to_vec<vec2>(L,3); for ( size_t i = 0; i<len; ++i) (*v)[nlua_swizzel_lookup[key[i]]] = v2[i]; } return 0;282 case 3 : { vec3 v3 = to_vec<vec3>(L,3); for ( size_t i = 0; i<len; ++i) (*v)[nlua_swizzel_lookup[key[i]]] = v3[i]; } return 0;283 case 4 : { vec4 v4 = to_vec<vec4>(L,3); for ( size_t i = 0; i<len; ++i) (*v)[nlua_swizzel_lookup[key[i]]] = v4[i]; } return 0;281 case 2 : { vec2 v2 = to_vec<vec2>(L,3); for ( int i = 0; i<int( len ); ++i) (*v)[nlua_swizzel_lookup[key[i]]] = v2[i]; } return 0; 282 case 3 : { vec3 v3 = to_vec<vec3>(L,3); for ( int i = 0; i<int( len ); ++i) (*v)[nlua_swizzel_lookup[key[i]]] = v3[i]; } return 0; 283 case 4 : { vec4 v4 = to_vec<vec4>(L,3); for ( int i = 0; i<int( len ); ++i) (*v)[nlua_swizzel_lookup[key[i]]] = v4[i]; } return 0; 284 284 default: break; 285 285 }
Note: See TracChangeset
for help on using the changeset viewer.