C/C++, 3
data storage, 67
C# compiler, 202
C# programming, I, 5, 19–20, 20–21
abstract, 245
Application class, 137
ArrayList, 58
base keyword, 246, 247
classes, 46
data access, 82, 83
data types, 255
default, Visual Studio, 29–31
enumerations, 247
exceptions, 52–53
foreach, 81
interfaces, 78–80
keywords, 29–30
managed code, 8
object transfer, 109
objects, 22, 39
parameter arrays, 219
reference type, 60, 253
serialization, 109
SideShow and, 162
static members, 254
subscripts, 254
streams, 67
this keyword, 255
weak references, 67–70
Calendar gadget, SideShow, 160
canvas, component placement, 140–41
Canvas class, 140–41
case studies
EmbeddedFusion ball-in-maze game, 231–36. See also EmbeddedFusion case study
Vista SideShow, 236–44. See also Windows SideShow case study
cast/casting, 246
checkedTime, 182–83
checksum, 61, 75
Child property, 155
Children class, 149
Citizen, 14
class constructors, 51–52
class hierarchies, 142
performance and, 84
class libraries, 7, 27, 244
classes. See also specific classes
abstract, 245
data members, 45–46
defined, 246
instances, 38
hierarchies and performance, 84
ports and, 22–23
private members, 252–53
protected members, 252
public members, 253
static, 253
ToString method, 51
CLI. See Common Language Infrastructure (CLI)
client/server model, 93
clients, 93
listening for, connected flashlight, 105
queuing, connected flashlight, 106
requests, processing, connected flashlight, 108
CLR. See common language runtime (CLR)
code, embedded, i
exception handling, 53
code, managed, 4–5, 6, 244
and Framework Libraries, 242
loops, 243
memory requirements, 5
.NET Micro Framework, 18
poor, 18
vs. native, 8
runtime, 6, 8
SideShow and, 162
code, native, 8
code generation, 19
code samples, downloadable, ii
Color type, 123
colors, .NET Micro Framework, 122–24
ColorUtility, 123
COM ports, 77, 78, 211
verifying, 218–19
command-line arguments, emulator, 209–11
/commandlinearguements, 210
commands, sending, Roomba, 223–24
Common Language Infrastructure (CLI), 18–19
common language runtime (CLR), 8, 188
HAL, 9
support for, 242, 244
Visual Studio, 13
CompareExchange method, 228
compilation, just-in-time (JIT), 20, 243, 256
compilers, 18
casting and, 246
data types, 255
compiling, 202
components. See also software components, device, building, 73
defined, 246
emulator. See Extensible Emulator
flexibility improvement, 76
reusability improvement, 76
testability improvement, 76–77
ComPort, 208
ComPortHandle, 208
ComputeExtent, 130
ComputeTextInRect, 144
/config argument, 209–10
Configuration class, 60–61
Configuration Engine, 189, 192, 193, 209
configuration file, XML, 192, 198, 199, 201, 202
/config, 209–10
importing configurations, 209
ConfigurationMessage, 114
Configure method, 195, 203
Connect method, 102
connected flashlight device, 105
connecting to HQ from flashlight, 113–15
creating HQ server, 105–08
flashlight configuration protocol, 108–13
P2P flashlights, 117–18
updating HQ with UDP, 115–17
connection events, SideShow, 184–85
connections, accepting, connected flashlight, 107–08
ConnectME, 91
console application, 26–27
constructor, code, 38, 52
constructors, class, 51–52
defined, 246–47
errors and exceptions, 52
container objects, creating, 140
content endpoint, SideShow, 168–77
control, bit-based, 21–22
ControlThink, 14, 15
corner radius values, Bitmap, 126–27
Cos method, 85
Count property, 59, 81
Cpu.pin, 41
Create method, 103
Critical, priority level, 72
c_SurviveBoot, 71
c_SurvivePowerdown, 71
CurrentInputManager, 150