source: trunk/IPs/systemC/processor/Morpheo/Behavioural/src/Interfaces_get_clock.cpp @ 81

Last change on this file since 81 was 81, checked in by rosiere, 16 years ago
  • Finish Environment (and test)
  • Continue predictor_unit
  • Add external tools
  • svn keyword "Id" set
  • Property svn:keywords set to Id
File size: 1002 bytes
Line 
1#ifdef VHDL_TESTBENCH
2/*
3 * $Id: Interfaces_get_clock.cpp 81 2008-04-15 18:40:01Z rosiere $
4 *
5 * [ Description ]
6 *
7 */
8
9#include "Behavioural/include/Interfaces.h"
10
11
12namespace morpheo              {
13namespace behavioural          {
14 
15#undef  FUNCTION
16#define FUNCTION "Interfaces::get_clock"
17  Signal * Interfaces::get_clock (void)
18  {
19    log_printf(FUNC,Behavioural,FUNCTION,"Begin");
20
21    Signal * clock = NULL;
22   
23    if (not _list_interface->empty())
24      {
25        std::list<Interface_fifo*>::iterator i = _list_interface->begin();
26       
27        while (i != _list_interface->end())
28          {
29            Signal * sig = (*i)->get_clock ();
30
31            if (sig != NULL)
32              {
33                if (clock != NULL)
34                  throw ErrorMorpheo ("<Interfaces.get_clock> : find too many clock.");
35                clock = sig;
36              }
37            ++i;
38          }
39      }
40
41    if (clock == NULL)
42      throw ErrorMorpheo ("<Interfaces.get_clock> : no clock find.");
43 
44    log_printf(FUNC,Behavioural,FUNCTION,"Begin"); 
45    return clock;
46  };
47
48}; // end namespace behavioural         
49}; // end namespace morpheo             
50#endif
Note: See TracBrowser for help on using the repository browser.