DOpusFactory

The DOpusFactory object is a helper object that you can use to create various other objects. Unlike the objects that represent existing things (e.g. Lister or Tab), the objects created by DOpusFactory are independent objects that you can instantiate whenever you need their functionality. The DOpusFactory object is obtained via the DOpus.Create method.

 

Method Name

Arguments

Return Type

Description

Blob

none

or <int:size>

or <byte, byte, ...>

or <Blob:source>

object:Blob 

Returns a new Blob object, that lets you access and manipulate a chunk of binary data from a script. If no parameters are given the new Blob will be empty - you can set its size using the resize method - otherwise you can specify the initial size as a parameter.

You can also create a Blob pre-filled with data by specifying the actual byte values (e.g. Blob(72,69,76,76,79)).

If another Blob (or an array - see the documentation on the Blob object for a discussion of this) is given then the new Blob will be created as a copy of the existing one.

Command

none

object:Command

Creates a new Command object, that lets you run Opus commands from a script.

Date

none
or <variant:date>

object:Date 

Creates a new Date object. If an existing Date object or date value is specified the new object will be initialized to that value, otherwise the date will be set to the current local time.

Map

none
or <variant:key>,

<variant:value>...

object:Map 

Creates a new Map object. If no arguments are provided, the Map will be empty. Otherwise, the Map will be pre-initialized with the supplied key/value pairs. For example: Map("firstname","fred","lastname","bloggs");. The individual keys and values can be different types.

StringSet

none
or <string>, ...

object:StringSet 

Creates a new case-sensitive StringSet object. If no arguments are provided, the StringSet will be empty. Otherwise it will be pre-initialized with the supplied strings; for example: StringSet("dog","cat","pony");

StringSetI

none
or <string>, ...

object:StringSet 

Creates a new case-insensitive StringSet object. If no arguments are provided, the StringSet will be empty. Otherwise it will be pre-initialized with the supplied strings.

StringTools

none

object:StringTools 

Creates a new StringTools object, that provides helper functions for string encoding and decoding.

Vector

none
or <int:elements>
or variants...

object:Vector 

Creates a new Vector object. If no arguments are provided, the Vector will be empty.

If a single integer argument is provided, the Vector will be pre-initialized to that number of elements.

If more than one argument is provided, the Vector will be pre-initialized with those elements; for example: Vector("dog","cat","horse"); The individual elements can be different types.