/**
* $Id: AdapterDesite.js 9694 2026-01-09 22:05:48Z jochen.hanff $
*/
'use strict'
import { IModelViewer } from "./IModelViewer.js";
import { ApiResponse } from "../tools/ApiResponse.js";
import { AdptDESITE_30 , AdptDESITE_32 } from "./AdapterDesite_30_32.js";
import { AdptDESITE_34 , AdptVDC_40 } from "./AdapterDesite_34_40.js";
/**
*
* @category Model Viewer
*
*/
export class DesiteAdapterServices {
constructor() {
}
/**
* Create instance of correct DESITE version API class
*
* @returns {Promise<IModelViewer>} Adapter instrance
*
*/
static async createAdapter() {
let desiteVersionString = await desiteAPI.getVersionAsString()
this.recognizedModelViewerVersion = desiteVersionString
let parts = desiteVersionString.split('.');
for (let i = 0; i < parts.length; i++) {
if (i === 0) {
parts[i] = parts[i];
} else {
parts[i] = parts[i].padStart(1, '0');
}
}
let desiteVersionNumber = parseInt(parts.join(''));
if (desiteVersionNumber >= 400) {
console.log(`VDC Manager Version:`, desiteVersionNumber)
} else {
console.log(`DESITE Version:`, desiteVersionNumber)
}
if (desiteVersionNumber >= 400) {
const adpt = new AdptVDC_40();
return adpt
} else if (desiteVersionNumber >= 340) {
const adpt = new AdptDESITE_34();
return adpt
} else if (desiteVersionNumber >= 320) {
const adpt = new AdptDESITE_32();
return adpt
} else if (desiteVersionNumber >= 300) {
const adpt = new AdptDESITE_30();
// desiteMD.setFooterVisible(false);
// desiteMD.setHeaderVisible(false);
// desiteAPI.selectionChanged.connect( adpt.onSelectionChanged )
return adpt
}
}
}
Source