49 static const boost::uuids::uuid s_namespace =
50 boost::uuids::string_generator()(
"6f9619ff-8b86-d011-b42d-00cf4fc964ff" );
52 boost::uuids::name_generator_sha1 generator( s_namespace );
53 boost::uuids::uuid uuid = generator( aUniqueId.utf8_string() );
55 return KIID( wxString::FromUTF8( boost::uuids::to_string( uuid ) ) );
121 std::map<wxString, wxString> parameters;
124 wxCONFIG_USE_NO_ESCAPE_CHARACTERS );
129 for(
bool more =
config.GetFirstGroup( groupname, groupid ); more;
130 more =
config.GetNextGroup( groupname, groupid ) )
132 if( !groupname.StartsWith( wxS(
"Parameter" ) ) )
137 wxString numStr = groupname.Mid( 9 );
140 if( !numStr.ToLong( &num ) )
143 wxString
name =
config.Read( groupname + wxS(
"/Name" ), wxEmptyString );
148 wxString value =
config.Read( groupname + wxS(
"/Value" ), wxEmptyString );
155 parameters[
name] = value;
164 std::vector<ALTIUM_PROJECT_VARIANT> variants;
167 wxCONFIG_USE_NO_ESCAPE_CHARACTERS );
172 for(
bool more =
config.GetFirstGroup( groupname, groupid ); more;
173 more =
config.GetNextGroup( groupname, groupid ) )
175 if( !groupname.StartsWith( wxS(
"ProjectVariant" ) ) )
178 wxString numStr = groupname.Mid( 14 );
181 if( !numStr.ToLong( &num ) )
186 pv.
description =
config.Read( groupname + wxS(
"/Description" ), wxEmptyString );
189 if( pv.
name.empty() )
192 long variationCount = 0;
193 config.Read( groupname + wxS(
"/VariationCount" ), &variationCount, 0 );
195 for(
long vi = 1; vi <= variationCount; ++vi )
197 wxString key = wxString::Format( wxS(
"%s/Variation%ld" ), groupname, vi );
198 wxString value =
config.Read( key, wxEmptyString );
206 pv.
variations.push_back( std::move( entry ) );
210 variants.push_back( std::move( pv ) );
A single component variation within an Altium project variant.
std::map< wxString, wxString > alternateFields