tweak StringOutputStream use
auto str = StringOutputStream()(bla) use form was not doing copy elision or move, but copy
This commit is contained in:
@@ -223,7 +223,7 @@ private:
|
||||
|
||||
aiString matname = material->GetName();
|
||||
#ifdef _DEBUG
|
||||
globalOutputStream() << "matname: " << matname.C_Str() << "\n";
|
||||
globalOutputStream() << "matname: " << matname.C_Str() << '\n';
|
||||
#endif
|
||||
if( aiString texname;
|
||||
aiReturn_SUCCESS == material->Get( AI_MATKEY_TEXTURE_DIFFUSE(0), texname )
|
||||
@@ -233,18 +233,18 @@ private:
|
||||
&& !string_equal_prefix_nocase( matname.C_Str(), "models/" )
|
||||
&& !string_equal_prefix_nocase( matname.C_Str(), "models\\" ) ){
|
||||
#ifdef _DEBUG
|
||||
globalOutputStream() << "texname: " << texname.C_Str() << "\n";
|
||||
globalOutputStream() << "texname: " << texname.C_Str() << '\n';
|
||||
#endif
|
||||
m_shader = StringOutputStream()( PathCleaned( PathExtensionless( texname.C_Str() ) ) );
|
||||
m_shader = StringStream<64>( PathCleaned( PathExtensionless( texname.C_Str() ) ) );
|
||||
|
||||
}
|
||||
else{
|
||||
m_shader = StringOutputStream()( PathCleaned( PathExtensionless( matname.C_Str() ) ) );
|
||||
m_shader = StringStream<64>( PathCleaned( PathExtensionless( matname.C_Str() ) ) );
|
||||
}
|
||||
|
||||
const CopiedString oldShader( m_shader );
|
||||
if( strchr( m_shader.c_str(), '/' ) == nullptr ){ /* texture is likely in the folder, where model is */
|
||||
m_shader = StringOutputStream()( scene.m_rootPath, m_shader );
|
||||
m_shader = StringStream<64>( scene.m_rootPath, m_shader );
|
||||
}
|
||||
else{
|
||||
const char *name = m_shader.c_str();
|
||||
@@ -255,13 +255,13 @@ private:
|
||||
m_shader = p + 1;
|
||||
}
|
||||
else{
|
||||
m_shader = StringOutputStream()( scene.m_rootPath, path_get_filename_start( name ) );
|
||||
m_shader = StringStream<64>( scene.m_rootPath, path_get_filename_start( name ) );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if( oldShader != m_shader )
|
||||
globalOutputStream() << "substituting: " << oldShader << " -> " << m_shader << "\n";
|
||||
globalOutputStream() << "substituting: " << oldShader << " -> " << m_shader << '\n';
|
||||
}
|
||||
|
||||
m_vertices.resize( mesh->mNumVertices );
|
||||
@@ -688,8 +688,8 @@ scene::Node& loadPicoModel( Assimp::Importer& importer, ArchiveFile& file ){
|
||||
if( scene != nullptr ){
|
||||
if( scene->mFlags & AI_SCENE_FLAGS_INCOMPLETE )
|
||||
globalWarningStream() << "AI_SCENE_FLAGS_INCOMPLETE\n";
|
||||
const auto rootPath = StringOutputStream()( PathFilenameless( file.getName() ) );
|
||||
const auto matName = StringOutputStream()( PathExtensionless( file.getName() ) );
|
||||
const auto rootPath = StringStream<64>( PathFilenameless( file.getName() ) );
|
||||
const auto matName = StringStream<64>( PathExtensionless( file.getName() ) );
|
||||
return ( new PicoModelNode( AssScene{ scene, rootPath, path_extension_is( file.getName(), "mdl" )? matName.c_str() : nullptr } ) )->node();
|
||||
}
|
||||
else{
|
||||
|
||||
@@ -62,24 +62,24 @@ class AssLogger : public Assimp::Logger
|
||||
public:
|
||||
void OnDebug( const char* message ) override {
|
||||
#ifdef _DEBUG
|
||||
globalOutputStream() << message << "\n";
|
||||
globalOutputStream() << message << '\n';
|
||||
#endif
|
||||
}
|
||||
void OnVerboseDebug( const char *message ) override {
|
||||
#ifdef _DEBUG
|
||||
globalOutputStream() << message << "\n";
|
||||
globalOutputStream() << message << '\n';
|
||||
#endif
|
||||
}
|
||||
void OnInfo( const char* message ) override {
|
||||
#ifdef _DEBUG
|
||||
globalOutputStream() << message << "\n";
|
||||
globalOutputStream() << message << '\n';
|
||||
#endif
|
||||
}
|
||||
void OnWarn( const char* message ) override {
|
||||
globalWarningStream() << message << "\n";
|
||||
globalWarningStream() << message << '\n';
|
||||
}
|
||||
void OnError( const char* message ) override {
|
||||
globalErrorStream() << message << "\n";
|
||||
globalErrorStream() << message << '\n';
|
||||
}
|
||||
|
||||
bool attachStream( Assimp::LogStream *pStream, unsigned int severity ) override {
|
||||
@@ -102,7 +102,7 @@ public:
|
||||
*/
|
||||
bool Exists( const char* pFile ) const override {
|
||||
if( strchr( pFile, '\\' ) != nullptr ){
|
||||
globalWarningStream() << "AssIOSystem::Exists " << pFile << "\n";
|
||||
globalWarningStream() << "AssIOSystem::Exists " << pFile << '\n';
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -139,7 +139,7 @@ public:
|
||||
*/
|
||||
Assimp::IOStream* Open( const char* pFile, const char* pMode = "rb" ) override {
|
||||
if( strchr( pFile, '\\' ) != nullptr ){
|
||||
globalWarningStream() << "AssIOSystem::Open " << pFile << "\n";
|
||||
globalWarningStream() << "AssIOSystem::Open " << pFile << '\n';
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
@@ -238,7 +238,7 @@ public:
|
||||
typedef ModelLoader Type;
|
||||
|
||||
ModelPicoAPI( const char* extension ){
|
||||
GlobalFiletypesModule::getTable().addType( Type::Name, extension, filetype_t( StringOutputStream()( extension, " model" ), StringOutputStream()( "*.", extension ) ) );
|
||||
GlobalFiletypesModule::getTable().addType( Type::Name, extension, filetype_t( StringStream<32>( extension, " model" ), StringStream<16>( "*.", extension ) ) );
|
||||
}
|
||||
ModelLoader* getTable(){
|
||||
return &m_modelLoader;
|
||||
@@ -307,7 +307,7 @@ extern "C" void RADIANT_DLLEXPORT Radiant_RegisterModules( ModuleServer& server
|
||||
s_assImporter->GetExtensionList( extensions ); // "*.3ds;*.obj;*.dae"
|
||||
const char *c = extensions.C_Str();
|
||||
while( !string_empty( c ) ){
|
||||
StringOutputStream ext;
|
||||
StringOutputStream ext( 16 );
|
||||
do{
|
||||
if( *c == '*' && *( c + 1 ) == '.' ){
|
||||
c += 2;
|
||||
@@ -326,7 +326,7 @@ extern "C" void RADIANT_DLLEXPORT Radiant_RegisterModules( ModuleServer& server
|
||||
g_PicoModelModules.push_back( PicoModelModule( PicoModelAPIConstructor( ext ) ) );
|
||||
g_PicoModelModules.back().selfRegister();
|
||||
|
||||
// globalOutputStream() << ext << "\n";
|
||||
// globalOutputStream() << ext << '\n';
|
||||
}
|
||||
|
||||
g_ImageMDLModule.selfRegister();
|
||||
|
||||
Reference in New Issue
Block a user