1function [simDoc, section] = saveServerCompatibilities(self, simDoc, section, ind)
2% [SIMDOC, SECTION] = SAVESERVERCOMPATIBILITIES(SIMDOC, SECTION, IND)
3% Saves server-
class compatibility matrix to JMT XML.
4% Generates the serverCompatibilities parameter array.
6% Copyright (c) 2012-2026, Imperial College London
10ist = sn.nodeToStation(ind);
12% Check
if this station has heterogeneous servers
13if isempty(sn.nservertypes) || sn.nservertypes(ist) == 0
17% Get compatibility matrix
for this station
18if isempty(sn.servercompat) || ist > length(sn.servercompat)
22compat = sn.servercompat{ist};
27[nTypes, nClasses] = size(compat);
29% Create serverCompatibilities parameter array
30compatNode = simDoc.createElement(
'parameter');
31compatNode.setAttribute(
'classPath',
'java.lang.Object');
32compatNode.setAttribute(
'name',
'serverCompatibilities');
33compatNode.setAttribute(
'array',
'true');
37 typeNode = simDoc.createElement(
'subParameter');
38 typeNode.setAttribute(
'classPath',
'java.lang.Boolean');
39 typeNode.setAttribute(
'name',
'serverTypesCompatibilities');
40 typeNode.setAttribute(
'array',
'true');
44 classNode = simDoc.createElement(
'subParameter');
45 classNode.setAttribute(
'classPath',
'java.lang.Boolean');
46 classNode.setAttribute(
'name',
'compatibilities');
48 valueNode = simDoc.createElement(
'value');
50 valueNode.appendChild(simDoc.createTextNode(
'true'));
52 valueNode.appendChild(simDoc.createTextNode(
'false'));
54 classNode.appendChild(valueNode);
55 typeNode.appendChild(classNode);
57 compatNode.appendChild(typeNode);
60section.appendChild(compatNode);