⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 outlet.tcl

📁 linux 下的源代码分析阅读器 red hat公司新版
💻 TCL
字号:
# ----------------------------------------------------------------------#  PURPOSE:  Electrical outlet supplying power for Appliances.##   AUTHOR:  Michael J. McLennan       Phone: (610)712-2842#            AT&T Bell Laboratories   E-mail: michael.mclennan@att.com##      RCS:  $Id: Outlet.tcl 144 2003-02-05 10:56:26Z mdejong $# ----------------------------------------------------------------------#               Copyright (c) 1993  AT&T Bell Laboratories# ======================================================================# Permission to use, copy, modify, and distribute this software and its# documentation for any purpose and without fee is hereby granted,# provided that the above copyright notice appear in all copies and that# both that the copyright notice and warranty disclaimer appear in# supporting documentation, and that the names of AT&T Bell Laboratories# any of their entities not be used in advertising or publicity# pertaining to distribution of the software without specific, written# prior permission.## AT&T disclaims all warranties with regard to this software, including# all implied warranties of merchantability and fitness.  In no event# shall AT&T be liable for any special, indirect or consequential# damages or any damages whatsoever resulting from loss of use, data or# profits, whether in an action of contract, negligence or other# tortuous action, arising out of or in connection with the use or# performance of this software.# ======================================================================itcl_class Outlet {	constructor {config} {}	method config {config} {}	destructor {		if {$usage > 0} bill	}	method use {power} {		set usage [expr $usage+$power]	}	method sendBill {} {		if {[catch "open /tmp/bill w" fout] != 0} {			error "cannot create bill in /tmp"		} else {			set amount [format "$%.2f" [expr $usage*$rate]]			puts $fout "----------------------------------------"			puts $fout "/////////// MEGA-POWER, INC. ///////////"			puts $fout "----------------------------------------"			puts $fout "   Customer: $owner"			puts $fout "     Outlet: $this"			puts $fout "      Usage: $usage kilowatt-hours"			puts $fout "                                        "			puts $fout " Amount Due: $amount"			puts $fout "----------------------------------------"			close $fout			exec mail $owner < /tmp/bill			set usage 0		}	}	proc bill {{customer *}} {		foreach outlet [itcl_info objects -class Outlet] {			set owner [$outlet info public owner -value]			if {[string match $customer $owner]} {				$outlet sendBill			}		}	}	proc rate {{newval ""}} {		if {$newval == ""} {			return $rate		}		set rate $newval	}	public owner {}	protected usage 0	common rate 0.05}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -