42 lines
1.1 KiB
C#
42 lines
1.1 KiB
C#
using System;
|
|
using CSiAPIv1;
|
|
|
|
namespace CSiAPIPlayground
|
|
{
|
|
class Program
|
|
{
|
|
private const string ProgID_SAP2000 = "CSI.SAP2000.API.SapObject";
|
|
private const string ProgID_ETABS = "CSI.ETABS.API.ETABSObject";
|
|
private const string ProgID_CSiBridge = "CSI.CSiBridge.API.SapObject";
|
|
private const string ProgID_SAFE = "CSI.SAFE.API.SAFEObject";
|
|
|
|
static void Main(string[] _)
|
|
{
|
|
var apiObj = GetActiveAPIObject(new Helper());
|
|
var playground = new Playground(apiObj.SapModel);
|
|
playground.Play();
|
|
}
|
|
|
|
private static cOAPI GetActiveAPIObject(Helper helper)
|
|
{
|
|
if (helper.GetObject(ProgID_ETABS) is cOAPI etabsModel)
|
|
{
|
|
return etabsModel;
|
|
}
|
|
else if (helper.GetObject(ProgID_SAP2000) is cOAPI sapModel)
|
|
{
|
|
return sapModel;
|
|
}
|
|
else if (helper.GetObject(ProgID_SAFE) is cOAPI safeModel)
|
|
{
|
|
return safeModel;
|
|
}
|
|
else if (helper.GetObject(ProgID_CSiBridge) is cOAPI bridgeModel)
|
|
{
|
|
return bridgeModel;
|
|
}
|
|
throw new Exception("Unable to find running instance of csi application :(");
|
|
}
|
|
}
|
|
}
|