* ./hurricane:

- Bug: In Net.h, force expansion of SlotTemplate<Net*> with the line:
        const SlotTemplate<Net*> dummyNetSlot ( string("dummyNetSlot"), NULL );
          I've no satisfactory explanation, but in the cyclop Inspector the
        Cell's NetMap is correctly created and in the cgt Inspector, Nets
        entries of the NetMap appears as "unsupported", meaning that the
        SlotTemplate<> has not been generated for Net. This correct the
        problem.
This commit is contained in:
Jean-Paul Chaput 2010-05-11 11:02:42 +00:00
parent 37b4e5b423
commit d89379bc64
2 changed files with 12 additions and 4 deletions

View File

@ -305,6 +305,14 @@ IOSTREAM_POINTER_SUPPORT(Hurricane::Net::Direction::Code);
IOSTREAM_VALUE_SUPPORT(Hurricane::Net::Direction::Code); IOSTREAM_VALUE_SUPPORT(Hurricane::Net::Direction::Code);
namespace Hurricane {
// Force SlotTemplate<> expansion on Net* type.
// Because sometimes it didn't happens (?).
const SlotTemplate<Net*> dummyNetSlot ( string("dummyNetSlot"), NULL );
}
#endif // HURRICANE_NET #endif // HURRICANE_NET

View File

@ -328,7 +328,7 @@ namespace Hurricane {
template<typename Data> template<typename Data>
inline Hurricane::Slot* getSlot( std::string& name, Data d ) inline Hurricane::Slot* getSlot( std::string& name, Data d )
{ {
//std::cerr << "getSlot<string&,Data>( \"" << name << "\" )" << std::endl; std::cerr << "getSlot<string&,Data>( \"" << name << "\" )" << std::endl;
return new Hurricane::SlotTemplate<Data> ( name, d ); return new Hurricane::SlotTemplate<Data> ( name, d );
} }
@ -336,7 +336,7 @@ inline Hurricane::Slot* getSlot( std::string& name, Data d )
template<typename Data> template<typename Data>
inline Hurricane::Slot* getSlot( std::string& name, Data* d ) inline Hurricane::Slot* getSlot( std::string& name, Data* d )
{ {
//std::cerr << "getSlot<string&,Data*>( \"" << name << "\" )" << std::endl; std::cerr << "getSlot<string&,Data*>( \"" << name << "\" )" << std::endl;
return new Hurricane::SlotTemplate<Data*> ( name, d ); return new Hurricane::SlotTemplate<Data*> ( name, d );
} }
@ -344,7 +344,7 @@ inline Hurricane::Slot* getSlot( std::string& name, Data* d )
template<typename Data> template<typename Data>
inline Hurricane::Slot* getSlot( const std::string& name, Data d ) inline Hurricane::Slot* getSlot( const std::string& name, Data d )
{ {
//std::cerr << "getSlot<const string&,Data>( \"" << name << "\" )" << std::endl; std::cerr << "getSlot<const string&,Data>( \"" << name << "\" )" << std::endl;
return new Hurricane::SlotTemplate<Data> ( name, d ); return new Hurricane::SlotTemplate<Data> ( name, d );
} }
@ -352,7 +352,7 @@ inline Hurricane::Slot* getSlot( const std::string& name, Data d )
template<typename Data> template<typename Data>
inline Hurricane::Slot* getSlot( const std::string& name, Data* d ) inline Hurricane::Slot* getSlot( const std::string& name, Data* d )
{ {
//std::cerr << "getSlot<const string&,Data*>( \"" << name << "\" )" << std::endl; std::cerr << "getSlot<const string&,Data*>( \"" << name << "\" )" << std::endl;
return new Hurricane::SlotTemplate<Data*> ( name, d ); return new Hurricane::SlotTemplate<Data*> ( name, d );
} }