Skip to Content
FASTSUITE E2API ReferenzPython APIRückrufeIOlpTechnologyPostTechInitAttributes

PostTechInitAttributes

Der Rückruf

PostTechInitAttributes

(

CENPyOlpTech_AttribInitOperator

) wird direkt nach der Initialisierung der Technologieattribute durch den Kernel aufgerufen.

Es kann verwendet werden, um:

  • Attribute initialisieren

  • Attributwerte erhalten

  • Attributwerte setzen

  • Zugriff auf OlpController

  • Ausgabe in das Logbuch

Der Rückruf ist definiert in der

%TechnologyName%.py

Datei, die sich im Scripts-Ordner des

Plugin

.

def PostTechInitAttributes(techAttribInitOperator): # Create attributes attribCreator = techAttribInitOperator.GetAttribCreator() # get object of CENPyOlpAttribCreator class attribCreator.AddInteger('MyIntAttribute', 0, -100, 0, USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE, 'MyIntAttribute') attribCreator.AddDouble('MyDoubleAttribute', 55.5, 0, 100, 0.5, USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE, ATTRIB_STANDARD, 'MyDoubleAttribute') attribCreator.AddString('MyStringAttribute', 'Hello World', USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE, 'MyStringAttribute') attribCreator.AddBool('MyBoolAttribute', True, USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE, 'MyBoolAttribute') myLiterals = ["earth", "revolves", "around"] # list of three literals myLiterals.insert(0,"The") # insert a new literal at first list position myLiterals.append("sun") # append a new literal at last list position attribCreator.AddEnum('MyEnumAttribute', myLiterals, 'earth', USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE, 'MyEnumAttribute') # Get values from attributes attribGetter = techAttribInitOperator.GetAttribGetter() valOfMyIntAttrib = attribGetter.GetInteger('MyIntAttribute') valOfMyDoubleAttrib = attribGetter.GetDouble('MyDoubleAttribute') valOfMyStrAttrib = attribGetter.GetString('MyStringAttribute') valOfMyBoolAttrib = attribGetter.GetBool('MyBoolAttribute') indexOfMyEnumAttrib = attribGetter.GetEnumIndex('MyEnumAttribute') # Set values to the attributes attribSetter = techAttribInitOperator.GetAttribSetter() attribSetter.SetInteger('MyIntAttribute', 15) attribSetter.SetDouble('MyDoubleAttribute', 15.8) attribSetter.SetString('MyStringAttribute', 'This is new string') attribSetter.SetBool('MyBoolAttribute', False) attribSetter.SetEnumIndex('MyEnumAttribute', 4) # Output attribute value to the log logOperator = techAttribInitOperator.GetLoggerOperator() logOperator.LogDebug('indexOfMyEnumAttrib = ' + str(indexOfMyEnumAttrib)) # Create system attributes sysAttribCreator = attribCreator.GetSystemAttribCreator() min_radius = sysAttribCreator.AddMinRadius(0.01, USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE | OPERATION_ATTRIBUTE) max_radius = sysAttribCreator.AddMaxRadius(9.9, USER_ATTRIBUTE | PROCESS_ATTRIBUTE | GLOBAL_ATTRIBUTE | OPERATION_ATTRIBUTE)

Infolgedessen erscheinen neue Attribute auf der Benutzeroberfläche:

CENPy Olp System Attrib Creator Result class diagram
Was this page helpful?