1/***************************************************************************** 2 3 Licensed to Accellera Systems Initiative Inc. (Accellera) under one or 4 more contributor license agreements. See the NOTICE file distributed 5 with this work for additional information regarding copyright ownership. 6 Accellera licenses this file to you under the Apache License, Version 2.0 7 (the "License"); you may not use this file except in compliance with the 8 License. You may obtain a copy of the License at 9 10 http://www.apache.org/licenses/LICENSE-2.0 11 12 Unless required by applicable law or agreed to in writing, software 13 distributed under the License is distributed on an "AS IS" BASIS, 14 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 15 implied. See the License for the specific language governing 16 permissions and limitations under the License. 17 18 *****************************************************************************/ 19 20/***************************************************************************** 21 22 sc_value_base.cpp -- Base class for all SystemC data values. 23 24 Original Author: Andy Goodrich, Forte Design Systems 25 26 *****************************************************************************/ 27 28/***************************************************************************** 29 30 MODIFICATION LOG - modifiers, enter your name, affiliation, date and 31 changes you are making here. 32 33 Name, Affiliation, Date: 34 Description of Modification: 35 36 *****************************************************************************/ 37 38 39// $Log: sc_value_base.cpp,v $ 40// Revision 1.2 2011/08/15 16:43:24 acg 41// Torsten Maehne: changes to remove unused argument warnings. 42// 43// Revision 1.1.1.1 2006/12/15 20:20:05 acg 44// SystemC 2.3 45// 46// Revision 1.3 2006/01/13 18:54:01 acg 47// Andy Goodrich: added $Log command so that CVS comments are reproduced in 48// the source. 49// 50 51#include <cctype> 52#include <cstdio> 53#include <cstdlib> 54 55#include "systemc/ext/dt/int/messages.hh" 56#include "systemc/ext/dt/misc/sc_value_base.hh" 57#include "systemc/ext/utils/sc_report_handler.hh" 58 59namespace sc_dt 60{ 61 62void 63sc_value_base::concat_clear_data(bool /* to_ones */) 64{ 65 static const char error_message[] = 66 "concat_clear_data method not supported by this type"; 67 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 68} 69 70bool 71sc_value_base::concat_get_ctrl(sc_digit * /*dst_p*/, int /*low_i*/) const 72{ 73 static const char error_message[] = 74 "concat_get_ctrl method not supported by this type"; 75 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 76 return false; 77} 78 79bool 80sc_value_base::concat_get_data(sc_digit * /*dst_p*/, int /*low_i*/) const 81{ 82 static const char error_message[] = 83 "concat_get_data method not supported by this type"; 84 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 85 return false; 86} 87 88sc_dt::uint64 89sc_value_base::concat_get_uint64() const 90{ 91 static const char error_message[] = 92 "concat_get_uint64 method not supported by this type"; 93 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 94 return 0; 95} 96 97int 98sc_value_base::concat_length(bool * /*xz_present_p*/) const 99{ 100 static const char error_message[] = 101 "concat_length method not supported by this type"; 102 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 103 return 0; 104} 105 106void 107sc_value_base::concat_set(int64 /*src*/, int /*low_i*/) 108{ 109 static const char error_message[] = 110 "concat_set(int64) method not supported by this type"; 111 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 112} 113 114void 115sc_value_base::concat_set(const sc_signed &/*src*/, int /*low_i*/) 116{ 117 static const char error_message[] = 118 "concat_set(sc_signed) method not supported by this type"; 119 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 120} 121 122void 123sc_value_base::concat_set(const sc_unsigned &/*src*/, int /*low_i*/) 124{ 125 static const char error_message[] = 126 "concat_set(sc_unsigned) method not supported by this type"; 127 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 128} 129 130void 131sc_value_base::concat_set(uint64 /*src*/, int /*low_i*/) 132{ 133 static const char error_message[] = 134 "concat_set(uint64) method not supported by this type"; 135 SC_REPORT_ERROR(sc_core::SC_ID_OPERATION_FAILED_, error_message); 136} 137 138} // namespace sc_dt 139