About

Introduction

This library makes tools available in vba to easily access the HUGIN decision engine.  It is build upon the HUGIN .NET API and follows most if it’s conventions.  A description of the methods in the interface can be found in the .NET API.  Although they are largely similar, the vba API contains a few distinct differences to the .NET API:

  • No constructors exist in vba, instead the HVBA class is used
  • There are no overloaded methods
  • Methods using arrays can currently have unpredictable results
Summary
AboutThis library makes tools available in vba to easily access the HUGIN decision engine.
Library SetupThe 32 and 64 bit versions of hugin each contain 4 libraries for vba.
Differences from .NETThe primary differences between the .NET API and the vba API are that the vba API uses the HVBA class instead of constructors and that it does not contain any overloaded methods.
LicenseThe HUGIN vba API and the HUGIN decision engine are copyright HUGIN EXPERT A/S.

Library Setup

The 32 and 64 bit versions of hugin each contain 4 libraries for vba.  Both versions contain a library for single and double precision as well as .NET framework 2.0 and 4.0.  The libraries are named as follows

huginCOM[single/double]-[HUGIN version]-[framework version]-[32/64 bit]

So to use a 32 bit double precision on the 4.0 .NET framework in the hugin 8.2, the library to be included should be

huginCOM2-8.2-4.0

And to use a 64 bit single precision on the 2.0 .NET framework in the hugin 8.2, the library to be included should be

huginCOM-8.2-2.0-x64

Differences from .NET

The primary differences between the .NET API and the vba API are that the vba API uses the HVBA class instead of constructors and that it does not contain any overloaded methods.

The HVBA Class

As constructors do not exist in vba, the library instead includes the HVBA class.  This class is used as a container of constructors for all other useable classes in the library.  An object of this class is therefore needed to create an object of any other class from the API.  As an example, creating a labelled discrete chance node is achieved by

Dim vbafactory as HVBA
Dim dcnd as LabelledDCNode
Set dcnd = vbafactory.LabelledDCNode(Domain)

Overloaded methods

Since overloading is impossible in vba, any methods overloaded in the .NET API have been renamed.  All renamings are extensions of the original name to make them easy to find with IntelliSense, e.g.  Triangulate becomes Triangulate, TriangulateWithOrder and TriangulateDefault.  A full list of the overloaded methods and their new names can be found at Overloads

License

The HUGIN vba API and the HUGIN decision engine are copyright HUGIN EXPERT A/S.

Visit the HUGIN homepage: http://www.hugin.com/

Developer forum: http://forum.hugin.com/

Send a message: sup.nosp@m.port@hugi.nosp@m.n.com

This page contains a list of all overloaded methods, their new names and inputs.
Close