Initial commit of OpenSPARC T2 design and verification files.
[OpenSPARC-T2-DV] / tools / perlmod / AnalyzeDiag / 1.07 / lib / site_perl / 5.8.0 / AnalyzeDiag / Measurement.pm
CommitLineData
86530b38
AT
1# ========== Copyright Header Begin ==========================================
2#
3# OpenSPARC T2 Processor File: Measurement.pm
4# Copyright (C) 1995-2007 Sun Microsystems, Inc. All Rights Reserved
5# 4150 Network Circle, Santa Clara, California 95054, U.S.A.
6#
7# * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
8#
9# This program is free software; you can redistribute it and/or modify
10# it under the terms of the GNU General Public License as published by
11# the Free Software Foundation; version 2 of the License.
12#
13# This program is distributed in the hope that it will be useful,
14# but WITHOUT ANY WARRANTY; without even the implied warranty of
15# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16# GNU General Public License for more details.
17#
18# You should have received a copy of the GNU General Public License
19# along with this program; if not, write to the Free Software
20# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21#
22# For the avoidance of doubt, and except that if any non-GPL license
23# choice is available it will apply instead, Sun elects to use only
24# the General Public License version 2 (GPLv2) at this time for any
25# software where a choice of GPL license versions is made
26# available with the language indicating that GPLv2 or any later version
27# may be used, or where a choice of which version of the GPL is applied is
28# otherwise unspecified.
29#
30# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
31# CA 95054 USA or visit www.sun.com if you need additional information or
32# have any questions.
33#
34# ========== Copyright Header End ============================================
35package AnalyzeDiag::Measurement;
36
37use strict;
38use warnings;
39
40use AnalyzeDiag::SymbolTable;
41
42use fields qw(name start end
43 );
44
45###############################################################################
46
47sub new {
48 my $this = shift;
49 my %args = @_;
50
51 unless (ref $this) {
52 $this = fields::new($this);
53 }
54
55 foreach my $key (keys %args) {
56 $this->{$key} = $args{$key};
57 }
58
59 return $this;
60}
61
62###############################################################################
63
64sub name {
65 my $this = shift;
66 my $name = shift;
67 $this->{name} = $name if defined $name;
68 return $this->{name};
69}
70
71###############################################################################
72
73sub start {
74 my $this = shift;
75 my $start = shift;
76 $this->{start} = $start if defined $start;
77 return $this->{start};
78}
79
80###############################################################################
81
82sub end {
83 my $this = shift;
84 my $end = shift;
85 $this->{end} = $end if defined $end;
86 return $this->{end};
87}
88
89###############################################################################
901;