Browse Prior Art Database

Software Algorithm for Initializing Masks for Objects

IP.com Disclosure Number: IPCOM000112605D
Original Publication Date: 1994-Jun-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 4 page(s) / 97K

Publishing Venue

IBM

Related People

Dobbelstein, SL: AUTHOR

Abstract

An algorithm for initializing masks that represent the states of objects is disclosed. Given a set of objects, each of which can be enabled or disabled, the masks, each of which can represent several objects, are initialized to represent the states of the objects.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Software Algorithm for Initializing Masks for Objects

      An algorithm for initializing masks that represent the states
of objects is disclosed.  Given a set of objects, each of which can
be enabled or disabled, the masks, each of which can represent
several objects, are initialized to represent the states of the
objects.

      There is a group of software objects.  Each object in the group
has a name.  Each object can be enabled or disabled.

      There is an ordered list of masks for the objects.  Each mask
has a name.  The name specifies which objects the mask represents.  A
mask represents an object if the mask name matches the object name.
The name can have a question mark (?) in any character position.  The
question mark matches any character in the same position in an object
name.  Masks with question marks can represent multiple objects.  The
order of the masks is important.  An object will be represented by
the first mask in the list that matches the object name.  If another
mask that also matches the object appears further in the list, it
will not represent the object.  Only the first occurrence of the mask
in the list that matches a given object will represent that object.

For example, consider the following lists of objects and masks.

 Objects                Masks
    OBJ01                  1.  OBJ?3
    OBJ02                  2.  OBJ1?
    OBJ03                  3.  ?????
    OBJ11
    OBJ12
    OBJ13

      The mask OBJ?3 will represent objects OBJ03 and OBJ13.  The
mask OBJ1?  will represent objects OBJ11 and OBJ12.  It will not
represent OBJ13 since OBJ13 is represented by a prior mask in the
list, namely, OBJ?3.  The mask ????? will represent objects OBJ01 and
OBJ02.  It will not represent any of the other objects since they are
represented by a prior mask in the list.

      Given a set of objects, each one being enabled or disabled, and
a list of masks, the masks are to be initialized to "enable" or
"disable" based on the state of the objects.  The initialized state
of the masks should cover as many objects as possible.  All objects
must be covered by a mask.  If after the initialization of the masks
some objects are not represented by a mask, new masks are to be
created for objects that are not represented.

      A "voting" algorithm is used to initialize the masks.  Each
object is checked against a mask to see if it will be represented by
the mask.  If so, the object "votes" on the state of the mask.  If
the object is enabled, it votes that the mask should be enabled.  If
the object is disabled, it votes that the mask should be disabled.
Each object casts its vote on the mask that...