ovm_agent.svh

Go to the documentation of this file.
00001 // $Id: ovm_agent.svh 17 2009-12-28 18:29:28Z seanoboyle $
00002 //------------------------------------------------------------------------------
00003 //   Copyright 2007-2009 Mentor Graphics Corporation
00004 //   Copyright 2007-2009 Cadence Design Systems, Inc.
00005 //   All Rights Reserved Worldwide
00006 //
00007 //   Licensed under the Apache License, Version 2.0 (the
00008 //   "License"); you may not use this file except in
00009 //   compliance with the License.  You may obtain a copy of
00010 //   the License at
00011 //
00012 //       http://www.apache.org/licenses/LICENSE-2.0
00013 //
00014 //   Unless required by applicable law or agreed to in
00015 //   writing, software distributed under the License is
00016 //   distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
00017 //   CONDITIONS OF ANY KIND, either express or implied.  See
00018 //   the License for the specific language governing
00019 //   permissions and limitations under the License.
00020 //------------------------------------------------------------------------------
00021 
00022 `ifndef OVM_AGENT_SVH
00023 `define OVM_AGENT_SVH
00024 
00025 //------------------------------------------------------------------------------
00026 //
00027 // CLASS: ovm_agent
00028 //
00029 // The ovm_agent virtual class should be used as the base class for the user-
00030 // defined agents. Deriving from ovm_agent will allow you to distinguish agents
00031 // from other component types also using its inheritance. Such agents will
00032 // automatically inherit features that may be added to ovm_agent in the future.
00033 // 
00034 // While an agent's build function, inherited from <ovm_component>, can be
00035 // implemented to define any agent topology, an agent typically contains three
00036 // subcomponents: a driver, sequencer, and monitor. If the agent is active,
00037 // subtypes should contain all three subcomponents. If the agent is passive,
00038 // subtypes should contain only the monitor.
00039 //------------------------------------------------------------------------------
00040 
00041 virtual class ovm_agent extends ovm_component;
00042 
00043   // Function: new
00044   //
00045   // Creates and initializes an instance of this class using the normal
00046   // constructor arguments for <ovm_component>: ~name~ is the name of the
00047   // instance, and ~parent~ is the handle to the hierarchical parent, if any.
00048 
00049   function new (string name, ovm_component parent);
00050     super.new(name, parent);
00051   endfunction
00052 
00053   const static string type_name = "ovm_agent";
00054 
00055   virtual function string get_type_name ();
00056     return type_name;
00057   endfunction
00058 
00059 endclass
00060 
00061 `endif // OVM_AGENT_SVH

Intelligent Design Verification
Intelligent Design Verification
Project: OVM, Revision: 2.0.3
Copyright (c) 2008-2010 Intelligent Design Verification.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
A copy of the license is included here:
http://www.intelligentdv.com/licenses/fdl.txt
doxygen
Doxygen Version: 1.6.3
IDV SV Filter Version: 2.6.3
Sat Jun 19 11:47:30 2010
Find a documentation bug? Report bugs to: bugs.intelligentdv.com Project: DoxygenFilterSV