---
name: "TFBS::SiteSet"
section: "3pm"
platform: "linux"
package: "libtfbs-perl"
version: "0.7.1+ds-4+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/TFBS::SiteSet"
---

# TFBS::SiteSet(3pm)

a set of TFBS::Site objects

## NAME

TFBS::SiteSet - a set of TFBS::Site objects

## SYNOPSIS

```
    my $site_set = TFBS::SiteSet->new(@list_of_site_objects);
    # add a TFBS::Site object to set:

    $site_set->add_site($site_obj);
    # append another TFBS::SiteSet contents:
    $site_pair_set->add_site_set($site_obj);
    # create an iterator:
    my $it = $site_set->Iterator(-sort_by => 'start');
```

## DESCRIPTION

TFBS::SiteSet is an aggregate class that contains a collection of TFBS::Site objects. It can be created anew and filled with  TFBS::Site object. It is also returned by **search\_seq()** method call  of some TFBS::PatternI subclasses (e.g. TFBS::Matrix::PWM).

## FEEDBACK

Please send bug reports and other comments to the author.

## AUTHOR - Boris Lenhard

Boris Lenhard \<Boris.Lenhard@cgb.ki.se\>

## APPENDIX

The rest of the documentation details each of the object methods. Internal methods are preceded with an underscore.

### add\_site

```
 Title   : add_site
 Usage   : $siteset->add_site($site_object)
           $siteset->add_site(@list_of_site_objects)
 Function: adds TFBS::Site objects to an existing TFBS::SiteSet object
 Returns : $sitepair object (usually ignored)
 Args    : A list of TFBS::Site objects to add
```

### add\_site\_set

```
 Title   : add_site_set
 Usage   : $siteset->add_site_set($site_set_object)
           $siteset->add_site(@list_of_site_set_objects)
 Function: adds the contents of other TFBS::SiteSet objects
           to an existing TFBS::SiteSet object
 Returns : $siteset object (usually ignored)
 Args    : A list of TFBS::SiteSet objects whose contents should be
           added to $siteset
```

### size

```
 Title   : size
 Usage   : my $size = $siteset->size()
 Function: returns a number of TFBS::Site objects contained in the set
 Returns : a scalar (integer)
 Args    : none
```

### Iterator

```
 Title   : Iterator
 Usage   : my $siteset_iterator =
                   $siteset->Iterator(-sort_by =>'start');
           while (my $site = $siteset_iterator->next) {
               # do whatever you want with individual matrix objects
           }
 Function: Returns an iterator object that can be used to go through
           all members of the set (TFBS::Site objects)
 Returns : an iterator object (currently undocumentened in TFBS -
                               but understands the 'next' method)
 Args    : -sort_by # optional - currently it accepts
                    #   (default sort order in parenthetse)
                    #    'name' (pattern name, alphabetically)
                    #    'ID' (pattern/matrix ID, alphabetically)
                    #    'start' (site start in sequence,
                    #             numerically,increasing order)
                    #    'end' (site end in sequence,
                    #           numerically, increasing order)
                    #    'score' (numerically, decreasing order)

           -reverse # optional - reverses the default sorting order if true
```

### GFF

```
 Title   : GFF
 Usage   : print $siteset->GFF();
         : print $siteset->GFF($gff_formatter)
 Function: returns a "standard" multiline GFF string
 Returns : a string (multiline, newline terminated)
 Args    : a $gff_formatter function reference (optional)
```
