Bio-MAGE

 view release on metacpan or  search on metacpan

MAGE/QuantitationType/DerivedSignal.pm  view on Meta::CPAN

##############################
#
# Bio::MAGE::QuantitationType::DerivedSignal
#
##############################
# C O P Y R I G H T   N O T I C E
#  Copyright (c) 2001-2006 by:
#    * The MicroArray Gene Expression Database Society (MGED)
#
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation files
# (the "Software"), to deal in the Software without restriction,
# including without limitation the rights to use, copy, modify, merge,
# publish, distribute, sublicense, and/or sell copies of the Software,
# and to permit persons to whom the Software is furnished to do so,
# subject to the following conditions:
#
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.



package Bio::MAGE::QuantitationType::DerivedSignal;
use strict;
use Carp;

use base qw(Bio::MAGE::QuantitationType::StandardQuantitationType);

use Bio::MAGE::Association;

use vars qw($__ASSOCIATIONS
	    $__CLASS_NAME
	    $__PACKAGE_NAME
	    $__SUBCLASSES
	    $__SUPERCLASSES
	    $__ATTRIBUTE_NAMES
	    $__ASSOCIATION_NAMES
	   );


=head1 NAME

Bio::MAGE::QuantitationType::DerivedSignal - Class for the MAGE-OM API

=head1 SYNOPSIS

  use Bio::MAGE::QuantitationType::DerivedSignal

  # creating an empty instance
  my $derivedsignal = Bio::MAGE::QuantitationType::DerivedSignal->new();

  # creating an instance with existing data
  my $derivedsignal = Bio::MAGE::QuantitationType::DerivedSignal->new(
        name=>$name_val,
        isBackground=>$isbackground_val,
        identifier=>$identifier_val,
        dataType=>$ontologyentry_ref,
        auditTrail=>\@audit_list,
        channel=>$channel_ref,
        propertySets=>\@namevaluetype_list,
        confidenceIndicators=>\@confidenceindicator_list,
        descriptions=>\@description_list,
        scale=>$ontologyentry_ref,
        security=>$security_ref,
        quantitationTypeMaps=>\@quantitationtypemap_list,
  );


  # 'name' attribute
  my $name_val = $derivedsignal->name(); # getter
  $derivedsignal->name($value); # setter

  # 'isBackground' attribute
  my $isBackground_val = $derivedsignal->isBackground(); # getter
  $derivedsignal->isBackground($value); # setter

  # 'identifier' attribute
  my $identifier_val = $derivedsignal->identifier(); # getter
  $derivedsignal->identifier($value); # setter


  # 'dataType' association
  my $ontologyentry_ref = $derivedsignal->dataType(); # getter
  $derivedsignal->dataType($ontologyentry_ref); # setter

  # 'auditTrail' association
  my $audit_array_ref = $derivedsignal->auditTrail(); # getter
  $derivedsignal->auditTrail(\@audit_list); # setter

  # 'channel' association
  my $channel_ref = $derivedsignal->channel(); # getter
  $derivedsignal->channel($channel_ref); # setter

  # 'propertySets' association
  my $namevaluetype_array_ref = $derivedsignal->propertySets(); # getter
  $derivedsignal->propertySets(\@namevaluetype_list); # setter

  # 'confidenceIndicators' association
  my $confidenceindicator_array_ref = $derivedsignal->confidenceIndicators(); # getter
  $derivedsignal->confidenceIndicators(\@confidenceindicator_list); # setter

  # 'descriptions' association
  my $description_array_ref = $derivedsignal->descriptions(); # getter
  $derivedsignal->descriptions(\@description_list); # setter

  # 'scale' association
  my $ontologyentry_ref = $derivedsignal->scale(); # getter
  $derivedsignal->scale($ontologyentry_ref); # setter

  # 'security' association
  my $security_ref = $derivedsignal->security(); # getter
  $derivedsignal->security($security_ref); # setter

  # 'quantitationTypeMaps' association
  my $quantitationtypemap_array_ref = $derivedsignal->quantitationTypeMaps(); # getter
  $derivedsignal->quantitationTypeMaps(\@quantitationtypemap_list); # setter



=head1 DESCRIPTION

From the MAGE-OM documentation for the C<DerivedSignal> class:

A calculated measurement of the intensity of a signal, for example, after a transformation involving normalization and/or replicate DesignElements.  Of type float.



=cut

=head1 INHERITANCE


Bio::MAGE::QuantitationType::DerivedSignal has the following superclasses:

=over


=item * Bio::MAGE::QuantitationType::StandardQuantitationType


=back



=cut

BEGIN {
  $__CLASS_NAME        = q[Bio::MAGE::QuantitationType::DerivedSignal];
  $__PACKAGE_NAME      = q[QuantitationType];
  $__SUBCLASSES        = [];
  $__SUPERCLASSES      = ['Bio::MAGE::QuantitationType::StandardQuantitationType'];
  $__ATTRIBUTE_NAMES   = ['name', 'isBackground', 'identifier'];
  $__ASSOCIATION_NAMES = ['dataType', 'auditTrail', 'propertySets', 'channel', 'confidenceIndicators', 'descriptions', 'security', 'scale', 'quantitationTypeMaps'];
  $__ASSOCIATIONS      = []

}

=head1 CLASS METHODS

The following methods can all be called without first having an
instance of the class via the Bio::MAGE::QuantitationType::DerivedSignal->methodname() syntax.

=over

=item new()

=item new(%args)


The object constructor C<new()> accepts the following optional
named-value style arguments:

=over

=item * name

MAGE/QuantitationType/DerivedSignal.pm  view on Meta::CPAN

#
# code for get_slots() inherited from Base.pm
#

=item $val = $obj->set_slot($name,$val)

The C<set_slot()> method sets the slot C<$name> to the value C<$val>

B<Return value>: the new value of the slot, i.e. C<$val>

B<Side effects>: none

=cut

#
# code for set_slot() inherited from Base.pm
#

=item $val = $obj->get_slot($name)

The C<get_slot()> method is used to get the values of a number of
slots at the same time.

B<Return value>: a single slot value, or undef if the slot has not been
initialized.

B<Side effects>: none

=cut

#
# code for get_slot() inherited from Base.pm
#


=head2 ATTRIBUTES

Attributes are simple data types that belong to a single instance of a
class. In the Perl implementation of the MAGE-OM classes, the
interface to attributes is implemented using separate setter and
getter methods for each attribute.

C<Bio::MAGE::QuantitationType::DerivedSignal> has the following attribute accessor methods:

=over


=item name

Methods for the C<name> attribute.


From the MAGE-OM documentation:

The potentially ambiguous common identifier.


=over


=item $val = $derivedsignal->setName($val)

The restricted setter method for the C<name> attribute.


Input parameters: the value to which the C<name> attribute will be set 

Return value: the current value of the C<name> attribute 

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified

=cut


sub setName {
  my $self = shift;
  croak(__PACKAGE__ . "::setName: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setName: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  
  return $self->{__NAME} = $val;
}


=item $val = $derivedsignal->getName()

The restricted getter method for the C<name> attribute.

Input parameters: none

Return value: the current value of the C<name> attribute 

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getName {
  my $self = shift;
  croak(__PACKAGE__ . "::getName: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__NAME};
}





=back


=item isBackground

Methods for the C<isBackground> attribute.


From the MAGE-OM documentation:

Indicates whether the quantitation has been measured from the background or from the feature itself.


=over


=item $val = $derivedsignal->setIsBackground($val)

The restricted setter method for the C<isBackground> attribute.


Input parameters: the value to which the C<isBackground> attribute will be set 

Return value: the current value of the C<isBackground> attribute 

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified

=cut


sub setIsBackground {
  my $self = shift;
  croak(__PACKAGE__ . "::setIsBackground: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setIsBackground: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  
  return $self->{__ISBACKGROUND} = $val;
}


=item $val = $derivedsignal->getIsBackground()

The restricted getter method for the C<isBackground> attribute.

Input parameters: none

Return value: the current value of the C<isBackground> attribute 

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getIsBackground {
  my $self = shift;
  croak(__PACKAGE__ . "::getIsBackground: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__ISBACKGROUND};
}





=back


=item identifier

Methods for the C<identifier> attribute.


From the MAGE-OM documentation:

An identifier is an unambiguous string that is unique within the scope (i.e. a document, a set of related documents, or a repository) of its use.


=over


=item $val = $derivedsignal->setIdentifier($val)

The restricted setter method for the C<identifier> attribute.


Input parameters: the value to which the C<identifier> attribute will be set 

Return value: the current value of the C<identifier> attribute 

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified

=cut


sub setIdentifier {
  my $self = shift;
  croak(__PACKAGE__ . "::setIdentifier: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setIdentifier: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  
  return $self->{__IDENTIFIER} = $val;
}


=item $val = $derivedsignal->getIdentifier()

The restricted getter method for the C<identifier> attribute.

Input parameters: none

Return value: the current value of the C<identifier> attribute 

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getIdentifier {
  my $self = shift;
  croak(__PACKAGE__ . "::getIdentifier: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__IDENTIFIER};
}





=back


=back


=head2 ASSOCIATIONS

Associations are references to other classes. Associations in MAGE-OM have a cardinality that determines the minimum and
maximum number of instances of the 'other' class that maybe included
in the association:

=over

=item 1

There B<must> be exactly one item in the association, i.e. this is a
mandatory data field.

=item 0..1

There B<may> be one item in the association, i.e. this is an optional
data field.

=item 1..N

There B<must> be one or more items in the association, i.e. this is a
mandatory data field, with list cardinality.

=item 0..N

There B<may> be one or more items in the association, i.e. this is an
optional data field, with list cardinality.

=back

Bio::MAGE::QuantitationType::DerivedSignal has the following association accessor methods:

=over


=item dataType

Methods for the C<dataType> association.


From the MAGE-OM documentation:

The specific type for the quantitations.  From a controlled vocabulary of {float, int, boolean, etc.}


=over


=item $val = $derivedsignal->setDataType($val)

The restricted setter method for the C<dataType> association.


Input parameters: the value to which the C<dataType> association will be set : one of the accepted enumerated values.

Return value: the current value of the C<dataType> association : one of the accepted enumerated values.

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$val> is not an instance of class C<Bio::MAGE::Description::OntologyEntry>

=cut


sub setDataType {
  my $self = shift;
  croak(__PACKAGE__ . "::setDataType: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setDataType: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  croak(__PACKAGE__ . "::setDataType: wrong type: " . ref($val) . " expected Bio::MAGE::Description::OntologyEntry") unless (not defined $val) or UNIVERSAL::isa($val,'Bio::MAGE::Description::OntologyEntry');
  return $self->{__DATATYPE} = $val;
}


=item $val = $derivedsignal->getDataType()

The restricted getter method for the C<dataType> association.

Input parameters: none

Return value: the current value of the C<dataType> association : an instance of type C<Bio::MAGE::Description::OntologyEntry>.

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getDataType {
  my $self = shift;
  croak(__PACKAGE__ . "::getDataType: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__DATATYPE};
}





=back


=item auditTrail

Methods for the C<auditTrail> association.


From the MAGE-OM documentation:

A list of Audit instances that track changes to the instance of Describable.


=over


=item $array_ref = $derivedsignal->setAuditTrail($array_ref)

The restricted setter method for the C<auditTrail> association.


Input parameters: the value to which the C<auditTrail> association will be set : a reference to an array of objects of type C<Bio::MAGE::AuditAndSecurity::Audit>

Return value: the current value of the C<auditTrail> association : a reference to an array of objects of type C<Bio::MAGE::AuditAndSecurity::Audit>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$array_ref> is not a reference to an array class C<Bio::MAGE::AuditAndSecurity::Audit> instances

=cut


sub setAuditTrail {
  my $self = shift;
  croak(__PACKAGE__ . "::setAuditTrail: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setAuditTrail: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
    croak(__PACKAGE__ . "::setAuditTrail: expected array reference, got $self")
    unless (not defined $val) or UNIVERSAL::isa($val,'ARRAY');
  if (defined $val) {
    foreach my $val_ent (@{$val}) {
      croak(__PACKAGE__ . "::setAuditTrail: wrong type: " . ref($val_ent) . " expected Bio::MAGE::AuditAndSecurity::Audit")
        unless UNIVERSAL::isa($val_ent,'Bio::MAGE::AuditAndSecurity::Audit');
    }
  }

  return $self->{__AUDITTRAIL} = $val;
}


=item $array_ref = $derivedsignal->getAuditTrail()

The restricted getter method for the C<auditTrail> association.

Input parameters: none

Return value: the current value of the C<auditTrail> association : a reference to an array of objects of type C<Bio::MAGE::AuditAndSecurity::Audit>

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getAuditTrail {
  my $self = shift;
  croak(__PACKAGE__ . "::getAuditTrail: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__AUDITTRAIL};
}




=item $val = $derivedsignal->addAuditTrail(@vals)

Because the auditTrail association has list cardinality, it may store more
than one value. This method adds the current list of objects in the auditTrail association.

Input parameters: the list of values C<@vals> to add to the auditTrail association. B<NOTE>: submitting a single value is permitted.

Return value: the number of items stored in the slot B<after> adding C<@vals>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or if any of the objects in @vals is not an instance of class C<Bio::MAGE::AuditAndSecurity::Audit>

=cut


sub addAuditTrail {
  my $self = shift;
  croak(__PACKAGE__ . "::addAuditTrail: no arguments passed to adder")
    unless @_;
  my @vals = @_;
    foreach my $val (@vals) {
    croak(__PACKAGE__ . "::addAuditTrail: wrong type: " . ref($val) . " expected Bio::MAGE::AuditAndSecurity::Audit")
      unless UNIVERSAL::isa($val,'Bio::MAGE::AuditAndSecurity::Audit');
  }

  return push(@{$self->{__AUDITTRAIL}},@vals);
}





=back


=item propertySets

Methods for the C<propertySets> association.


From the MAGE-OM documentation:

Allows specification of name/value pairs.  Meant to primarily help in-house, pipeline processing of instances by providing a place for values that aren't part of the specification proper.


=over


=item $array_ref = $derivedsignal->setPropertySets($array_ref)

The restricted setter method for the C<propertySets> association.


Input parameters: the value to which the C<propertySets> association will be set : a reference to an array of objects of type C<Bio::MAGE::NameValueType>

Return value: the current value of the C<propertySets> association : a reference to an array of objects of type C<Bio::MAGE::NameValueType>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$array_ref> is not a reference to an array class C<Bio::MAGE::NameValueType> instances

=cut


sub setPropertySets {
  my $self = shift;
  croak(__PACKAGE__ . "::setPropertySets: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setPropertySets: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
    croak(__PACKAGE__ . "::setPropertySets: expected array reference, got $self")
    unless (not defined $val) or UNIVERSAL::isa($val,'ARRAY');
  if (defined $val) {
    foreach my $val_ent (@{$val}) {
      croak(__PACKAGE__ . "::setPropertySets: wrong type: " . ref($val_ent) . " expected Bio::MAGE::NameValueType")
        unless UNIVERSAL::isa($val_ent,'Bio::MAGE::NameValueType');
    }
  }

  return $self->{__PROPERTYSETS} = $val;
}


=item $array_ref = $derivedsignal->getPropertySets()

The restricted getter method for the C<propertySets> association.

Input parameters: none

Return value: the current value of the C<propertySets> association : a reference to an array of objects of type C<Bio::MAGE::NameValueType>

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getPropertySets {
  my $self = shift;
  croak(__PACKAGE__ . "::getPropertySets: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__PROPERTYSETS};
}




=item $val = $derivedsignal->addPropertySets(@vals)

Because the propertySets association has list cardinality, it may store more
than one value. This method adds the current list of objects in the propertySets association.

Input parameters: the list of values C<@vals> to add to the propertySets association. B<NOTE>: submitting a single value is permitted.

Return value: the number of items stored in the slot B<after> adding C<@vals>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or if any of the objects in @vals is not an instance of class C<Bio::MAGE::NameValueType>

=cut


sub addPropertySets {
  my $self = shift;
  croak(__PACKAGE__ . "::addPropertySets: no arguments passed to adder")
    unless @_;
  my @vals = @_;
    foreach my $val (@vals) {
    croak(__PACKAGE__ . "::addPropertySets: wrong type: " . ref($val) . " expected Bio::MAGE::NameValueType")
      unless UNIVERSAL::isa($val,'Bio::MAGE::NameValueType');
  }

  return push(@{$self->{__PROPERTYSETS}},@vals);
}





=back


=item channel

Methods for the C<channel> association.


From the MAGE-OM documentation:

The optional channel associated with the QuantitationType.


=over


=item $val = $derivedsignal->setChannel($val)

The restricted setter method for the C<channel> association.


Input parameters: the value to which the C<channel> association will be set : one of the accepted enumerated values.

Return value: the current value of the C<channel> association : one of the accepted enumerated values.

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$val> is not an instance of class C<Bio::MAGE::BioAssay::Channel>

=cut


sub setChannel {
  my $self = shift;
  croak(__PACKAGE__ . "::setChannel: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setChannel: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  croak(__PACKAGE__ . "::setChannel: wrong type: " . ref($val) . " expected Bio::MAGE::BioAssay::Channel") unless (not defined $val) or UNIVERSAL::isa($val,'Bio::MAGE::BioAssay::Channel');
  return $self->{__CHANNEL} = $val;
}


=item $val = $derivedsignal->getChannel()

The restricted getter method for the C<channel> association.

Input parameters: none

Return value: the current value of the C<channel> association : an instance of type C<Bio::MAGE::BioAssay::Channel>.

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getChannel {
  my $self = shift;
  croak(__PACKAGE__ . "::getChannel: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__CHANNEL};
}





=back


=item confidenceIndicators

Methods for the C<confidenceIndicators> association.


From the MAGE-OM documentation:

The association between a ConfidenceIndicator and the QuantitationType its is an indicator for.


=over


=item $array_ref = $derivedsignal->setConfidenceIndicators($array_ref)

The restricted setter method for the C<confidenceIndicators> association.


Input parameters: the value to which the C<confidenceIndicators> association will be set : a reference to an array of objects of type C<Bio::MAGE::QuantitationType::ConfidenceIndicator>

Return value: the current value of the C<confidenceIndicators> association : a reference to an array of objects of type C<Bio::MAGE::QuantitationType::ConfidenceIndicator>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$array_ref> is not a reference to an array class C<Bio::MAGE::QuantitationType::ConfidenceIndicator> instances

=cut


sub setConfidenceIndicators {
  my $self = shift;
  croak(__PACKAGE__ . "::setConfidenceIndicators: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setConfidenceIndicators: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
    croak(__PACKAGE__ . "::setConfidenceIndicators: expected array reference, got $self")
    unless (not defined $val) or UNIVERSAL::isa($val,'ARRAY');
  if (defined $val) {
    foreach my $val_ent (@{$val}) {
      croak(__PACKAGE__ . "::setConfidenceIndicators: wrong type: " . ref($val_ent) . " expected Bio::MAGE::QuantitationType::ConfidenceIndicator")
        unless UNIVERSAL::isa($val_ent,'Bio::MAGE::QuantitationType::ConfidenceIndicator');
    }
  }

  return $self->{__CONFIDENCEINDICATORS} = $val;
}


=item $array_ref = $derivedsignal->getConfidenceIndicators()

The restricted getter method for the C<confidenceIndicators> association.

Input parameters: none

Return value: the current value of the C<confidenceIndicators> association : a reference to an array of objects of type C<Bio::MAGE::QuantitationType::ConfidenceIndicator>

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getConfidenceIndicators {
  my $self = shift;
  croak(__PACKAGE__ . "::getConfidenceIndicators: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__CONFIDENCEINDICATORS};
}




=item $val = $derivedsignal->addConfidenceIndicators(@vals)

Because the confidenceIndicators association has list cardinality, it may store more
than one value. This method adds the current list of objects in the confidenceIndicators association.

Input parameters: the list of values C<@vals> to add to the confidenceIndicators association. B<NOTE>: submitting a single value is permitted.

Return value: the number of items stored in the slot B<after> adding C<@vals>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or if any of the objects in @vals is not an instance of class C<Bio::MAGE::QuantitationType::ConfidenceIndicator>

=cut


sub addConfidenceIndicators {
  my $self = shift;
  croak(__PACKAGE__ . "::addConfidenceIndicators: no arguments passed to adder")
    unless @_;
  my @vals = @_;
    foreach my $val (@vals) {
    croak(__PACKAGE__ . "::addConfidenceIndicators: wrong type: " . ref($val) . " expected Bio::MAGE::QuantitationType::ConfidenceIndicator")
      unless UNIVERSAL::isa($val,'Bio::MAGE::QuantitationType::ConfidenceIndicator');
  }

  return push(@{$self->{__CONFIDENCEINDICATORS}},@vals);
}





=back


=item descriptions

Methods for the C<descriptions> association.


From the MAGE-OM documentation:

Free hand text descriptions.  Makes available the associations of Description to an instance of Describable.


=over


=item $array_ref = $derivedsignal->setDescriptions($array_ref)

The restricted setter method for the C<descriptions> association.


Input parameters: the value to which the C<descriptions> association will be set : a reference to an array of objects of type C<Bio::MAGE::Description::Description>

Return value: the current value of the C<descriptions> association : a reference to an array of objects of type C<Bio::MAGE::Description::Description>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$array_ref> is not a reference to an array class C<Bio::MAGE::Description::Description> instances

=cut


sub setDescriptions {
  my $self = shift;
  croak(__PACKAGE__ . "::setDescriptions: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setDescriptions: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
    croak(__PACKAGE__ . "::setDescriptions: expected array reference, got $self")
    unless (not defined $val) or UNIVERSAL::isa($val,'ARRAY');
  if (defined $val) {
    foreach my $val_ent (@{$val}) {
      croak(__PACKAGE__ . "::setDescriptions: wrong type: " . ref($val_ent) . " expected Bio::MAGE::Description::Description")
        unless UNIVERSAL::isa($val_ent,'Bio::MAGE::Description::Description');
    }
  }

  return $self->{__DESCRIPTIONS} = $val;
}


=item $array_ref = $derivedsignal->getDescriptions()

The restricted getter method for the C<descriptions> association.

Input parameters: none

Return value: the current value of the C<descriptions> association : a reference to an array of objects of type C<Bio::MAGE::Description::Description>

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getDescriptions {
  my $self = shift;
  croak(__PACKAGE__ . "::getDescriptions: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__DESCRIPTIONS};
}




=item $val = $derivedsignal->addDescriptions(@vals)

Because the descriptions association has list cardinality, it may store more
than one value. This method adds the current list of objects in the descriptions association.

Input parameters: the list of values C<@vals> to add to the descriptions association. B<NOTE>: submitting a single value is permitted.

Return value: the number of items stored in the slot B<after> adding C<@vals>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or if any of the objects in @vals is not an instance of class C<Bio::MAGE::Description::Description>

=cut


sub addDescriptions {
  my $self = shift;
  croak(__PACKAGE__ . "::addDescriptions: no arguments passed to adder")
    unless @_;
  my @vals = @_;
    foreach my $val (@vals) {
    croak(__PACKAGE__ . "::addDescriptions: wrong type: " . ref($val) . " expected Bio::MAGE::Description::Description")
      unless UNIVERSAL::isa($val,'Bio::MAGE::Description::Description');
  }

  return push(@{$self->{__DESCRIPTIONS}},@vals);
}





=back


=item security

Methods for the C<security> association.


From the MAGE-OM documentation:

Information on the security for the instance of the class.


=over


=item $val = $derivedsignal->setSecurity($val)

The restricted setter method for the C<security> association.


Input parameters: the value to which the C<security> association will be set : one of the accepted enumerated values.

Return value: the current value of the C<security> association : one of the accepted enumerated values.

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$val> is not an instance of class C<Bio::MAGE::AuditAndSecurity::Security>

=cut


sub setSecurity {
  my $self = shift;
  croak(__PACKAGE__ . "::setSecurity: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setSecurity: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  croak(__PACKAGE__ . "::setSecurity: wrong type: " . ref($val) . " expected Bio::MAGE::AuditAndSecurity::Security") unless (not defined $val) or UNIVERSAL::isa($val,'Bio::MAGE::AuditAndSecurity::Security');
  return $self->{__SECURITY} = $val;
}


=item $val = $derivedsignal->getSecurity()

The restricted getter method for the C<security> association.

Input parameters: none

Return value: the current value of the C<security> association : an instance of type C<Bio::MAGE::AuditAndSecurity::Security>.

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getSecurity {
  my $self = shift;
  croak(__PACKAGE__ . "::getSecurity: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__SECURITY};
}





=back


=item scale

Methods for the C<scale> association.


From the MAGE-OM documentation:

Indication of how to interpret the value.  From a suggested vocabulary of {LINEAR | LN | LOG2 |LOG10 | FOLD_CHANGE | OTHER} 


=over


=item $val = $derivedsignal->setScale($val)

The restricted setter method for the C<scale> association.


Input parameters: the value to which the C<scale> association will be set : one of the accepted enumerated values.

Return value: the current value of the C<scale> association : one of the accepted enumerated values.

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$val> is not an instance of class C<Bio::MAGE::Description::OntologyEntry>

=cut


sub setScale {
  my $self = shift;
  croak(__PACKAGE__ . "::setScale: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setScale: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
  croak(__PACKAGE__ . "::setScale: wrong type: " . ref($val) . " expected Bio::MAGE::Description::OntologyEntry") unless (not defined $val) or UNIVERSAL::isa($val,'Bio::MAGE::Description::OntologyEntry');
  return $self->{__SCALE} = $val;
}


=item $val = $derivedsignal->getScale()

The restricted getter method for the C<scale> association.

Input parameters: none

Return value: the current value of the C<scale> association : an instance of type C<Bio::MAGE::Description::OntologyEntry>.

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getScale {
  my $self = shift;
  croak(__PACKAGE__ . "::getScale: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__SCALE};
}





=back


=item quantitationTypeMaps

Methods for the C<quantitationTypeMaps> association.


From the MAGE-OM documentation:

The QuantitationType whose value will be produced from the values of the source QuantitationType according to the Protocol.


=over


=item $array_ref = $derivedsignal->setQuantitationTypeMaps($array_ref)

The restricted setter method for the C<quantitationTypeMaps> association.


Input parameters: the value to which the C<quantitationTypeMaps> association will be set : a reference to an array of objects of type C<Bio::MAGE::BioAssayData::QuantitationTypeMap>

Return value: the current value of the C<quantitationTypeMaps> association : a reference to an array of objects of type C<Bio::MAGE::BioAssayData::QuantitationTypeMap>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or
if too many input parameters are specified, or if C<$array_ref> is not a reference to an array class C<Bio::MAGE::BioAssayData::QuantitationTypeMap> instances

=cut


sub setQuantitationTypeMaps {
  my $self = shift;
  croak(__PACKAGE__ . "::setQuantitationTypeMaps: no arguments passed to setter")
    unless @_;
  croak(__PACKAGE__ . "::setQuantitationTypeMaps: too many arguments passed to setter")
    if @_ > 1;
  my $val = shift;
    croak(__PACKAGE__ . "::setQuantitationTypeMaps: expected array reference, got $self")
    unless (not defined $val) or UNIVERSAL::isa($val,'ARRAY');
  if (defined $val) {
    foreach my $val_ent (@{$val}) {
      croak(__PACKAGE__ . "::setQuantitationTypeMaps: wrong type: " . ref($val_ent) . " expected Bio::MAGE::BioAssayData::QuantitationTypeMap")
        unless UNIVERSAL::isa($val_ent,'Bio::MAGE::BioAssayData::QuantitationTypeMap');
    }
  }

  return $self->{__QUANTITATIONTYPEMAPS} = $val;
}


=item $array_ref = $derivedsignal->getQuantitationTypeMaps()

The restricted getter method for the C<quantitationTypeMaps> association.

Input parameters: none

Return value: the current value of the C<quantitationTypeMaps> association : a reference to an array of objects of type C<Bio::MAGE::BioAssayData::QuantitationTypeMap>

Side effects: none

Exceptions: will call C<croak()> if any input parameters are specified

=cut


sub getQuantitationTypeMaps {
  my $self = shift;
  croak(__PACKAGE__ . "::getQuantitationTypeMaps: arguments passed to getter")
    if @_;
  my $val = shift;
  return $self->{__QUANTITATIONTYPEMAPS};
}




=item $val = $derivedsignal->addQuantitationTypeMaps(@vals)

Because the quantitationTypeMaps association has list cardinality, it may store more
than one value. This method adds the current list of objects in the quantitationTypeMaps association.

Input parameters: the list of values C<@vals> to add to the quantitationTypeMaps association. B<NOTE>: submitting a single value is permitted.

Return value: the number of items stored in the slot B<after> adding C<@vals>

Side effects: none

Exceptions: will call C<croak()> if no input parameters are specified, or if any of the objects in @vals is not an instance of class C<Bio::MAGE::BioAssayData::QuantitationTypeMap>

=cut


sub addQuantitationTypeMaps {
  my $self = shift;
  croak(__PACKAGE__ . "::addQuantitationTypeMaps: no arguments passed to adder")
    unless @_;
  my @vals = @_;
    foreach my $val (@vals) {
    croak(__PACKAGE__ . "::addQuantitationTypeMaps: wrong type: " . ref($val) . " expected Bio::MAGE::BioAssayData::QuantitationTypeMap")
      unless UNIVERSAL::isa($val,'Bio::MAGE::BioAssayData::QuantitationTypeMap');
  }

  return push(@{$self->{__QUANTITATIONTYPEMAPS}},@vals);
}





=back


sub initialize {


  my $self = shift;
  return 1;


}

=back


=cut


=head1 SLOTS, ATTRIBUTES, AND ASSOCIATIONS

In the Perl implementation of MAGE-OM classes, there are
three types of class data members: C<slots>, C<attributes>, and
C<associations>.

=head2 SLOTS

This API uses the term C<slot> to indicate a data member of the class
that was not present in the UML model and is used for mainly internal



( run in 1.551 second using v1.01-cache-2.11-cpan-71847e10f99 )