proc CreateDeviceGroup { args } { set paramList {} set argIndex 0 while {$argIndex < [llength $args]} { set currentArg [lindex $args $argIndex] switch -exact -- $currentArg { -topologyObj { set topologyObj [lindex $args [expr $argIndex + 1]] incr argIndex 2 } -name { set name [lindex $args [expr $argIndex + 1]] append paramList " -name $name" incr argIndex 2 } -multiplier { set multiplier [lindex $args [expr $argIndex + 1]] append paramList " -multiplier $multiplier" incr argIndex 2 } default { puts "Connect: No such parameter: $currentArg" return 1 } } } puts "\nCreateDeviceGroupNgpf: $paramList" set deviceGroupObj [ixNet add $topologyObj "deviceGroup"] if {[catch {eval ixNet setMultiAttribute $deviceGroupObj $paramList} errMsg]} { puts "\nCreateDeviceGroup failed: $paramList" return 1 } ixNet commit return [lindex [ixNet remapIds $deviceGroupObj] 0] }