Web Analytics Made Easy - Statcounter
Skip to content

Changelog for SDK 2022 R1 (v.3.0.0)#

This release includes major changes in the SDK, various new features, and fixes of known and reported issues.

Below is the list of the changes in SAMSON SDK per library and per class.

One of the major changes that needs to be taken care by developers is the introduction of a lazy loading of extensions when launching SAMSON. This concerns only Apps. To take care of that, it is necessary to add a few new lines in the App's class descriptor describing the App's public name, its GUI's UUID, a logo image, and a tooltip.

SB_CLASS_BEGIN(SEMyExtension);

    SB_CLASS_TYPE(SBCClass::App);
    SB_CLASS_DESCRIPTION("SAMSON Extension generator pro tip: modify me");
    SB_CLASS_VERSION_NUMBER("1.0.0");

    // new lines
    SB_CLASS_PUBLIC_NAME("My Extension");
    SB_CLASS_GUI_UUID("2B45533B-D03C-40CB-B8D5-05C5F36A0E6F");
    SB_CLASS_GUI_SHORTCUT("");
    SB_CLASS_ICON_FILE_NAME(SB_ELEMENT_PATH + "/Resource/icons/logo.png");
    SB_CLASS_TOOL_TIP("Tool tip text");

    // ...

SB_CLASS_END(SEAutoDockVinaMain);

Core library group#

Class#

SBProxy#

New functions that can be used via class proxies: SBProxy::getGUIUUID, SBProxy::getGUIShortcut

Class interface#

New macros to declare a class attribute: SB_ATTRIBUTE_READ_ONLY_NONCONST

Heap#

SAMSON's managed heap functionality has been expanded to ease memory management for developers.

Log#

Add new logging functionality.

DataModel library group#

Color library#

Add new color schemes: SBDColorSchemeConstantIllustrate, SBDColorSchemePerChainIllustrate.

Color schemes now have a clone function.

Add new default color palettes in SBDColorPaletteDefaultPalette.

DataGraph library#

SBNode#

New functions for computing statistics that might need to be implemented by a class based on SBNode:

  • SBDDataGraphNode::getNumberOfChains
  • SBDDataGraphNode::getNumberOfMolecules
  • SBDDataGraphNode::getNumberOfResidues
  • SBDDataGraphNode::getNumberOfSegments
  • SBDDataGraphNode::getNumberOfStructuralGroups
  • SBDDataGraphNode::getNumberOfStructuralModels
  • SBDDataGraphNode::getNumberOfAtoms
  • SBDDataGraphNode::getNumberOfCarbons
  • SBDDataGraphNode::getNumberOfHydrogens
  • SBDDataGraphNode::getNumberOfNitrogens
  • SBDDataGraphNode::getNumberOfOxygens
  • SBDDataGraphNode::getNumberOfSulfurs
  • SBDDataGraphNode::getNumberOfOtherAtoms
  • SBDDataGraphNode::getSumOfFormalCharges
  • SBDDataGraphNode::getSumOfPartialCharges
  • SBDDataGraphNode::getMolecularWeight

New functions:

  • SBDDataGraphNode::hasMaterial
  • SBDDataGraphNode::ownsMaterial

and corresponding node predicates:

  • SBDDataGraphNode::HasMaterial
  • SBDDataGraphNode::OwnsMaterial

SBNodeColorScheme#

Color schemes now have a clone function: SBNodeColorScheme::clone.

Document library#

SBLabel#

New functions:

  • SBLabel::getFontString, SBLabel::setFontString
  • SBLabel::getViewportOffset, SBLabel::setViewportOffset

Type library#

SBColor#

New functions: SBColor::getRedInt, SBColor::getGreenInt, SBColor::getBlueInt, SBColor::getAlphaInt

SBColorConversion#

New functions: SBColorConversion::SRGBfromCIELab, SBColorConversion::CIELabfromSRGB, SBColorConversion::darkenSRGBColor, SBColorConversion::lightenSRGBColor

Visualization library#

SBVisualPreset#

Change in arguments of one of the constructors.

Facade library group#

New functions:

  • SAMSON::getIntegerIntervalFromUser
  • SAMSON::getDoubleIntervalFromUser
  • SAMSON::getItemFromUser
  • SAMSON::getSaveFileNameFromUser

GUI library group#

Window library#

New functions:

  • SBGWindowDialog::getIntegerIntervalFromUser
  • SBGWindowDialog::getDoubleIntervalFromUser
  • SBGWindowDialog::getItemFromUser
  • SBGWindowDialog::getSaveFileNameFromUser

Modeling library group#

Changes accross various classes of this library due to changes in SBNode, see changes in SBNode.

StructuralModel library#

SBStructuralModel#

New utility functions:

  • SBStructuralModel::populateChainIDs
  • SBStructuralModel::getShapeParameter
  • SBStructuralModel::getInertiaTensor
  • SBStructuralModel::getPrincipalAxes
  • SBStructuralModel::getSpatialTransform

SBAtom#

New functions:

  • SBAtom::isInAminoAcid, SBAtom::isInNucleicAcid
  • SBAtom::isInSideChain, SBAtom::getSideChain

and associated predicates:

  • SBMStructuralModelNodeAtom::IsInAminoAcid, SBMStructuralModelNodeAtom::IsInNucleicAcid
  • SBMStructuralModelNodeAtom::IsInSideChain

SBHydrogenBond#

Renamed and new functions:

  • SBHydrogenBond::getDonorAcceptorDistance
  • SBHydrogenBond::getHydrogenAcceptorDistance
  • SBHydrogenBond::getDonorHydrogenDistance

and associated predicates:

  • SBMStructuralModelNodeHydrogenBond::GetDonorAcceptorDistance
  • SBMStructuralModelNodeHydrogenBond::GetHydrogenAcceptorDistance
  • SBMStructuralModelNodeHydrogenBond::GetDonorHydrogenDistance