We need to figure out how to handle multiple aircraft at the same time in IADS. One way to handle this would be the brute force method of duplicating all the parameters, displays, etc. with a prefix of the tail number. The Global Parameter Replace seems to be the logical choice but it doesn’t handle everything such as constants, datagroup names, envelopes, or text-based tables for ICAW and Event Monitors. Merging the text-based ICAW and Event Monitors into the config file would help. All the desktops and analysis windows would need to be renamed too especially if they are tail-number specific. Most of our external IAP/COM functions use datagroups for parameters but there a few that directly reference constants so those DLLs would need to be updated on our end. I was thinking o f using a combination of the config interface to retrieve all the things that need to be changed, then a script of some sort to go through the config and rename everything. I haven’t used the config interface in a few years – can it be used to extract out all the names of parameters, displays, constants, etc.? Can you think of anything else that we are missing or a better way to do this?
If it weren’t for a requirement to create derived equations that are function of more than one aircraft (distance or bearing between them for example), we could just run multiple CDS instances and have the users launch separate copies of the client. Well, that assumes we can connect multiple CDSs to the same front end which I’m not sure will work.
Thanks,
-Bob
Thanks Jim. The request is actually coming from EDW so it would be with their custom front end. We were going to try and prototype it here to see what all the problems are. I thought in the config file that the parameter names dropped onto a control would still show up as text in the file. Or are there other cases where it won’t be so readable? In the example below, I dropped Parameter1 and Parameter2 onto the text control:
Table IadsActiveXControls
{
TableDefinition Name|X|Y|Z|Width|Height|ProgId|ParentName|PropertyBag
TableType String|Int|Int|Int|Int|Int|String|String|String
TableContents
{
14-ThuDec0216:53:412010@AER1WU8353WL6 Text1|487|295|0|150|50|IadsPrimitives.IadsText.1|Window1|\FC=7,19\Text=-9.297765,8\AP=Text,Parameter1,0,FillColor,Parameter2,0,8\Layer=1,3\_DI=22722_22182_6992_3754,8
}
}
I was figuring we’d have to just search and replace in the overall config file with a Perl script and a giant CSV replacement table. Then we would just merge them all in together. An IADS native solution would be a lot better as long as it addressed every unique parameter, desktop name, etc.
-Bob
“As long as you don't have parameter names with subsets that match each other”
Hmmm… good point – trying to select a set of delimiters for the replace operation may be problematic. I suspect there are at least a few deriveds named such as “some_parameter” and “some_parameter_version2” which might make it tough. Even worse would be “some_parameter” and “some_parameter version2”. Is there a known/safe set of delimiters to use? This a good example of why parsing the config file directly is a bad idea J