
(object Petal
    version    	42
    _written   	"Microsoft Visual Modeler 2.0.8139"
    charSet    	0)

(object Design "Logical View"
    is_unit    	TRUE
    is_loaded  	TRUE
    defaults   	(object defaults
	rightMargin 	0.250000
	leftMargin 	0.250000
	topMargin  	0.250000
	bottomMargin 	0.500000
	pageOverlap 	0.250000
	clipIconLabels 	TRUE
	autoResize 	TRUE
	snapToGrid 	TRUE
	gridX      	16
	gridY      	16
	defaultFont 	(object Font
	    size       	9
	    face       	"Tahoma"
	    bold       	FALSE
	    italics    	FALSE
	    underline  	FALSE
	    strike     	FALSE
	    color      	0
	    default_color 	TRUE)
	showMessageNum 	3
	showClassOfObject 	TRUE
	notation   	"Unified")
    root_usecase_package 	(object Class_Category "Use Case View"
	quid       	"3A2C52850248"
	exportControl 	"Public"
	global     	TRUE
	logical_models 	(list unit_reference_list)
	logical_presentations 	(list unit_reference_list
	    (object UseCaseDiagram "Main"
		quid       	"3A2C52880382"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    root_category 	(object Class_Category "Logical View"
	quid       	"3A2C52850247"
	exportControl 	"Public"
	global     	TRUE
	subsystem  	"Component View"
	quidu      	"3A2C52850249"
	logical_models 	(list unit_reference_list
	    (object Class_Category "User Services"
		attributes 	(list Attribute_Set
		    (object Attribute
			tool       	"VisualBasic"
			name       	"TierPackage"
			value      	"User Services"))
		quid       	"3A2C528803A9"
		documentation 	"User services provide the visual interface for presenting information and gathering data in an application. The user services connect the user with the application and request the business and/or data services needed by the user to execute business tasks."
		visible_categories 	(list visibility_relationship_list
		    (object Visibility_Relationship
			attributes 	(list Attribute_Set
			    (object Attribute
				tool       	"VisualBasic"
				name       	"TierPackage"
				value      	"Business Services"))
			quid       	"3A2C528803AF"
			supplier   	"Logical View::Business Services"
			quidu      	"3A2C528803AB")
		    (object Visibility_Relationship
			attributes 	(list Attribute_Set
			    (object Attribute
				tool       	"VisualBasic"
				name       	"TierPackage"
				value      	"Data Services"))
			quid       	"3A2C528803B0"
			supplier   	"Logical View::Data Services"
			quidu      	"3A2C528803AD"))
		exportControl 	"Public"
		logical_models 	(list unit_reference_list
		    (object Class_Category "gs_directdraw"
			quid       	"3A2C52F703A9"
			exportControl 	"Public"
			logical_models 	(list unit_reference_list
			    (object Class "DirectDrawObject"
				quid       	"3A2C53160231"
				operations 	(list Operations
				    (object Operation "DirectDrawObject* Instance"
					quid       	"3A2D9EDB007C"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "bool IsInstantiated"
					quid       	"3A387FE20279"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Create"
					quid       	"3A2C6AA1009C"
					parameters 	(list Parameters
					    (object Parameter "int screen_width")
					    (object Parameter "int screen_height")
					    (object Parameter "char graphics_path[]"
						initv      	
|"."
						)
					    (object Parameter "int display_device"
						initv      	"0"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "bool IsCreated"
					quid       	"3A38827301B5"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Destroy"
					quid       	"3A38827A020F"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "int GetScreenWidth"
					quid       	"3A38828501CF"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "int GetScreenHeight"
					quid       	"3A38828B03C2"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void SetGraphicsDirectory"
					quid       	"3A2C6E0101E9"
					parameters 	(list Parameters
					    (object Parameter "char path[]"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void LostWinFocus"
					quid       	"3A2C6E3701DD"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "bool GotWinFocus"
					quid       	"3A2C6E4F03E0"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void SetDisplayMode"
					quid       	"3A2C6C0203C5"
					parameters 	(list Parameters
					    (object Parameter "HWND hwnd")
					    (object Parameter "tDisplayMode display_mode"
						initv      	"FULLSCREEN"))
					concurrency 	"Sequential"
					opExportControl 	"Protected"
					uid        	0))
				class_attributes 	(list class_attribute_list
				    (object ClassAttribute "LPDIRECTDRAW m_pDDraw;"
					quid       	"3A2C60FC00E2"
					exportControl 	"Protected")
				    (object ClassAttribute "char m_GraphicsDir[];"
					quid       	"3A2C631E01E2"
					exportControl 	"Protected")
				    (object ClassAttribute "int m_ScreenWidth, m_ScreenHeight;"
					quid       	"3A2C635801F9"
					exportControl 	"Protected")
				    (object ClassAttribute "int m_ID;"
					quid       	"3A2C6CB903C8")))
			    (object Class "GenericSurfaceObject"
				quid       	"3A2C63A500AF"
				superclasses 	(list inheritance_relationship_list
				    (object Inheritance_Relationship
					quid       	"3A2C6404017E"
					label      	"protected inheritance"
					supplier   	"Logical View::User Services::gs_directdraw::DirectDrawObject"
					quidu      	"3A2C53160231"))
				operations 	(list Operations
				    (object Operation "SAME DRAWING METHODS AS BEFORE"
					quid       	"3A2C664000C3"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Create"
					quid       	"3A2DA40B037F"
					parameters 	(list Parameters
					    (object Parameter "int width")
					    (object Parameter "int height"))
					concurrency 	"Sequential"
					opExportControl 	"Protected"
					uid        	0)
				    (object Operation "void Destroy"
					quid       	"3A38852E01EC"
					concurrency 	"Sequential"
					opExportControl 	"Protected"
					uid        	0))
				class_attributes 	(list class_attribute_list
				    (object ClassAttribute "FontObject *m_pFontObject;"
					quid       	"3A2C65FA02E9")
				    (object ClassAttribute "LPDIRECTDRAWSURFACE m_pDDrawSurface;"
					quid       	"3A2C644C029A"
					exportControl 	"Protected")
				    (object ClassAttribute "int m_SurfHeight, m_SurfWidth;"
					quid       	"3A2C64DD0271"
					exportControl 	"Protected")
				    (object ClassAttribute "DDSURFACEDESC m_DDSurfaceDesc;"
					quid       	"3A38848F0157"
					exportControl 	"Protected")
				    (object ClassAttribute "unsigned char m_SurfaceInfoFlags;"
					quid       	"3A3884DB02A1"
					exportControl 	"Protected")
				    (object ClassAttribute "int m_ID;"
					quid       	"3A2C661203D4"
					exportControl 	"Protected")))
			    (object Class "PrimarySurfaceObject"
				quid       	"3A2C63D601AA"
				superclasses 	(list inheritance_relationship_list
				    (object Inheritance_Relationship
					quid       	"3A2C740600E1"
					supplier   	"Logical View::User Services::gs_directdraw::DisplaySurfaceObject"
					quidu      	"3A2C7D330233"))
				operations 	(list Operations
				    (object Operation "PrimarySurfaceObject* Instance"
					quid       	"3A388688024E"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "bool IsInstantiated"
					quid       	"3A3886960013"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Create"
					quid       	"3A3886A400DC"
					parameters 	(list Parameters
					    (object Parameter "HINSTANCE hInstance")
					    (object Parameter "LPCSTR caption")
					    (object Parameter "tDisplayMode display_mode"
						initv      	"FULLSCREEN"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Create"
					quid       	"3A2C7316004F"
					parameters 	(list Parameters
					    (object Parameter "WindowObject *window_object"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "bool IsCreated"
					quid       	"3A38876201D9"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "tDisplayMode ToggleDisplayMode"
					quid       	"3A38871C003E"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Display"
					quid       	"3A2C672201E0"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "WindowObject *GetWindowObject"
					quid       	"3A2C73590164"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0))
				class_attributes 	(list class_attribute_list
				    (object ClassAttribute "LPDIRECTDRAWSURFACE m_pDDrawPrimarySurface;"
					quid       	"3A2C66E903BF")
				    (object ClassAttribute "WindowObject *m_pWinObject;"
					quid       	"3A2C72140044")
				    (object ClassAttribute "bool m_CreatedWindowObject"
					quid       	"3A2F16830382")))
			    (object Class "WindowSurfaceObject"
				quid       	"3A2C63FA027E"
				superclasses 	(list inheritance_relationship_list
				    (object Inheritance_Relationship
					quid       	"3A2DA17503C3"
					supplier   	"Logical View::User Services::gs_directdraw::DisplaySurfaceObject"
					quidu      	"3A2C7D330233"))
				operations 	(list Operations
				    (object Operation "void Create"
					quid       	"3A2C74FD0317"
					parameters 	(list Parameters
					    (object Parameter "int width")
					    (object Parameter "int height"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Display"
					quid       	"3A2C673501BF"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0))
				class_attributes 	(list class_attribute_list
				    (object ClassAttribute "CDC *m_pDC"
					quid       	"3A2C74D401CD")))
			    (object Class "DisplayDeviceEnumerator"
				quid       	"3A2C6F1A003F"
				operations 	(list Operations
				    (object Operation "int GetNumDevices"
					quid       	"3A388B2403DB"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "char* GetDeviceDescription"
					quid       	"3A2C6F4803AC"
					parameters 	(list Parameters
					    (object Parameter "int device_num"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void SetDevice"
					quid       	"3A389F430360"
					parameters 	(list Parameters
					    (object Parameter "int device_num"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "int GetDevice"
					quid       	"3A389F4D0382"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "LPGUID GetDeviceGUID"
					quid       	"3A389F540179"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0))
				class_attributes 	(list class_attribute_list
				    (object ClassAttribute "int m_NumDevices;"
					quid       	"3A388BC0017D")
				    (object ClassAttribute "tDisplayDeviceInfo *m_pDisplayDeviceInfo;"
					quid       	"3A2C6F8C033C")
				    (object ClassAttribute "int m_DeviceInfoIndex;"
					quid       	"3A2C6FA10089")))
			    (object Class "FontObject"
				quid       	"3A2C73EF0160"
				operations 	(list Operations
				    (object Operation "NO CHANGE TO THIS CLASS"
					quid       	"3A2C73F6019C"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)))
			    (object Class "DisplaySurfaceObject"
				quid       	"3A2C7D330233"
				superclasses 	(list inheritance_relationship_list
				    (object Inheritance_Relationship
					quid       	"3A2C7D5603D8"
					label      	"public inheritance"
					supplier   	"Logical View::User Services::gs_directdraw::GenericSurfaceObject"
					quidu      	"3A2C63A500AF"))
				operations 	(list Operations
				    (object Operation "void Create"
					quid       	"3A3885B10028"
					parameters 	(list Parameters
					    (object Parameter "HWND hwnd")
					    (object Parameter "tDisplayMode display_mode"))
					concurrency 	"Sequential"
					opExportControl 	"Protected"
					uid        	0)
				    (object Operation "void SetDisplayMode"
					quid       	"3A3885C301A0"
					concurrency 	"Sequential"
					opExportControl 	"Protected"
					uid        	0)
				    (object Operation "void SetDisplayMode"
					quid       	"3A3885CB0314"
					parameters 	(list Parameters
					    (object Parameter "HWND hwnd")
					    (object Parameter "tDisplayMode display_mode"))
					concurrency 	"Sequential"
					opExportControl 	"Protected"
					uid        	0)
				    (object Operation "virtual void Display"
					quid       	"3A2C7DCE01D2"
					concurrency 	"Sequential"
					opExportControl 	"Implementation"
					uid        	0))
				class_attributes 	(list class_attribute_list
				    (object ClassAttribute "HWND m_hwnd;"
					quid       	"3A38861C0108")
				    (object ClassAttribute "tDispayMode m_DisplayMode;"
					quid       	"3A3886220066")))
			    (object Class "SurfaceObject"
				quid       	"3A2D9E6C0362"
				superclasses 	(list inheritance_relationship_list
				    (object Inheritance_Relationship
					quid       	"3A2DA16B036E"
					supplier   	"Logical View::User Services::gs_directdraw::GenericSurfaceObject"
					quidu      	"3A2C63A500AF"))
				operations 	(list Operations
				    (object Operation "void Create"
					quid       	"3A2DA0730079"
					parameters 	(list Parameters
					    (object Parameter "int width")
					    (object Parameter "int height"))
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)
				    (object Operation "void Destroy"
					quid       	"3A2DA0E90368"
					concurrency 	"Sequential"
					opExportControl 	"Public"
					uid        	0)))
			    (object Association "uses"
				quid       	"3A2C766602D0"
				roles      	(list role_list
				    (object Role "$UNNAMED$0"
					quid       	"3A2C766603C0"
					supplier   	"Logical View::User Services::gs_directdraw::GenericSurfaceObject"
					quidu      	"3A2C63A500AF"
					is_navigable 	TRUE)
				    (object Role "$UNNAMED$1"
					quid       	"3A2C766603CA"
					supplier   	"Logical View::User Services::gs_directdraw::FontObject"
					quidu      	"3A2C73EF0160")))
			    (object Association "uses"
				quid       	"3A2C767001BC"
				roles      	(list role_list
				    (object Role "$UNNAMED$2"
					quid       	"3A2C767002DE"
					supplier   	"Logical View::User Services::gs_directdraw::DirectDrawObject"
					quidu      	"3A2C53160231"
					is_navigable 	TRUE)
				    (object Role "$UNNAMED$3"
					quid       	"3A2C767002DF"
					supplier   	"Logical View::User Services::gs_directdraw::DisplayDeviceEnumerator"
					quidu      	"3A2C6F1A003F")))
			    (object Association "uses singleton"
				quid       	"3A2DA1850308"
				roles      	(list role_list
				    (object Role "$UNNAMED$4"
					quid       	"3A2DA18503DA"
					supplier   	"Logical View::User Services::gs_directdraw::GenericSurfaceObject"
					quidu      	"3A2C63A500AF"
					is_navigable 	TRUE)
				    (object Role "$UNNAMED$5"
					quid       	"3A2DA18503E4"
					supplier   	"Logical View::User Services::gs_directdraw::DirectDrawObject"
					quidu      	"3A2C53160231"
					is_navigable 	TRUE)))
			    (object Association "$UNNAMED$6"
				quid       	"3A2DA1D60200"
				roles      	(list role_list
				    (object Role "$UNNAMED$7"
					quid       	"3A2DA1D60296"
					supplier   	"Logical View::User Services::gs_directdraw::DirectDrawObject"
					quidu      	"3A2C53160231"
					is_navigable 	TRUE)
				    (object Role "$UNNAMED$8"
					quid       	"3A2DA1D602A0"
					supplier   	"Logical View::User Services::gs_directdraw::GenericSurfaceObject"
					quidu      	"3A2C63A500AF")))
			    (object Association "$UNNAMED$9"
				quid       	"3A2DA1DA013D"
				roles      	(list role_list
				    (object Role "$UNNAMED$10"
					quid       	"3A2DA1DA01C9"
					supplier   	"Logical View::User Services::gs_directdraw::DisplayDeviceEnumerator"
					quidu      	"3A2C6F1A003F"
					is_navigable 	TRUE)
				    (object Role "$UNNAMED$11"
					quid       	"3A2DA1DA01CA"
					supplier   	"Logical View::User Services::gs_directdraw::DirectDrawObject"
					quidu      	"3A2C53160231")))
			    (object Association "$UNNAMED$12"
				quid       	"3A2DA1DC0277"
				roles      	(list role_list
				    (object Role "$UNNAMED$13"
					quid       	"3A2DA1DC03DF"
					supplier   	"Logical View::User Services::gs_directdraw::FontObject"
					quidu      	"3A2C73EF0160"
					is_navigable 	TRUE)
				    (object Role "$UNNAMED$14"
					quid       	"3A2DA1DC03E0"
					supplier   	"Logical View::User Services::gs_directdraw::GenericSurfaceObject"
					quidu      	"3A2C63A500AF"))))
			logical_presentations 	(list unit_reference_list
			    (object ClassDiagram "Package Overview"
				quid       	"3A2C52F703AA"
				title      	"Package Overview"
				zoom       	100
				max_height 	28350
				max_width  	21600
				origin_x   	0
				origin_y   	0
				items      	(list diagram_item_list
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::PrimarySurfaceObject" @1
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(1440, 2832)
					label      	(object ItemLabel
					    Parent_View 	@1
					    location   	(965, 2541)
					    nlines     	1
					    max_width  	950
					    justify    	0
					    label      	"PrimarySurfaceObject")
					icon_style 	"Icon"
					quidu      	"3A2C63D601AA"
					compartment 	(object Compartment
					    Parent_View 	@1
					    location   	(965, 2595)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	12
					    max_width  	947)
					width      	968
					height     	604
					annotation 	8
					autoResize 	TRUE)
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::WindowSurfaceObject" @2
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(2304, 2656)
					label      	(object ItemLabel
					    Parent_View 	@2
					    location   	(2098, 2541)
					    nlines     	1
					    max_width  	412
					    justify    	0
					    label      	"WindowSurfaceObject")
					icon_style 	"Icon"
					quidu      	"3A2C63FA027E"
					compartment 	(object Compartment
					    Parent_View 	@2
					    location   	(2098, 2595)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	4
					    max_width  	275)
					width      	430
					height     	252
					annotation 	8
					autoResize 	TRUE)
				    (object NoteView @3
					location   	(400, 240)
					label      	(object ItemLabel
					    Parent_View 	@3
					    location   	(93, 128)
					    nlines     	5
					    max_width  	578
					    label      	
|- Singleton class
|- Create only does half the work - SetScreenMode() must be called by a DisplaySurfaceObject.
					    )
					width      	638
					height     	237)
				    (object NoteView @4
					location   	(592, 3008)
					label      	(object ItemLabel
					    Parent_View 	@4
					    location   	(314, 2889)
					    nlines     	5
					    max_width  	521
					    label      	
|- Singleton class
|- Sets the mode on the single DirectDrawObject and toggles the mode as well.
					    )
					width      	581
					height     	250)
				    (object AttachView "" @5
					stereotype 	TRUE
					client     	@4
					supplier   	@1
					line_style 	0)
				    (object NoteView @6
					location   	(2224, 2000)
					label      	(object ItemLabel
					    Parent_View 	@6
					    location   	(1892, 1916)
					    nlines     	3
					    max_width  	628
					    label      	
|- Pure virtual class (interface)
|- Cannot be instantiated
					    )
					width      	688
					height     	181)
				    (object NoteView @7
					location   	(368, 1312)
					label      	(object ItemLabel
					    Parent_View 	@7
					    location   	(136, 1234)
					    nlines     	3
					    max_width  	428
					    label      	
|- Generic surface
|- Cannot be instatiated
					    )
					width      	488
					height     	168)
				    (object NoteView @8
					location   	(2880, 2592)
					label      	(object ItemLabel
					    Parent_View 	@8
					    location   	(2595, 2486)
					    nlines     	4
					    max_width  	534
					    label      	
|- Can be any size
|- Actually copies raw data from the surface to the device context of the window
					    )
					width      	594
					height     	225)
				    (object AttachView "" @9
					stereotype 	TRUE
					client     	@8
					supplier   	@2
					line_style 	0)
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::SurfaceObject" @10
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(560, 2640)
					label      	(object ItemLabel
					    Parent_View 	@10
					    location   	(411, 2546)
					    nlines     	1
					    max_width  	298
					    justify    	0
					    label      	"SurfaceObject")
					icon_style 	"Icon"
					quidu      	"3A2D9E6C0362"
					compartment 	(object Compartment
					    Parent_View 	@10
					    location   	(411, 2600)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	3
					    max_width  	294)
					width      	316
					height     	210
					annotation 	8
					autoResize 	TRUE)
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::DisplaySurfaceObject" @11
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(1440, 2160)
					label      	(object ItemLabel
					    Parent_View 	@11
					    location   	(1163, 1979)
					    nlines     	1
					    max_width  	554
					    justify    	0
					    label      	"DisplaySurfaceObject")
					icon_style 	"Icon"
					quidu      	"3A2C7D330233"
					compartment 	(object Compartment
					    Parent_View 	@11
					    location   	(1163, 2033)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	7
					    max_width  	550)
					width      	572
					height     	384
					annotation 	8
					autoResize 	TRUE)
				    (object AttachView "" @12
					stereotype 	TRUE
					client     	@6
					supplier   	@11
					line_style 	0)
				    (object InheritView "" @13
					stereotype 	TRUE
					quidu      	"3A2C740600E1"
					client     	@1
					supplier   	@11
					line_style 	0)
				    (object InheritView "" @14
					stereotype 	TRUE
					quidu      	"3A2DA17503C3"
					client     	@2
					supplier   	@11
					line_style 	0)
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::DisplayDeviceEnumerator" @15
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					ShowOperationSignature 	TRUE
					location   	(2208, 496)
					label      	(object ItemLabel
					    Parent_View 	@15
					    location   	(1801, 271)
					    nlines     	1
					    max_width  	814
					    justify    	0
					    label      	"DisplayDeviceEnumerator")
					icon_style 	"Icon"
					quidu      	"3A2C6F1A003F"
					compartment 	(object Compartment
					    Parent_View 	@15
					    location   	(1801, 325)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	9
					    max_width  	812)
					width      	832
					height     	472
					annotation 	8
					autoResize 	TRUE)
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::DirectDrawObject" @16
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(1168, 496)
					label      	(object ItemLabel
					    Parent_View 	@16
					    location   	(815, 117)
					    nlines     	1
					    max_width  	706
					    justify    	0
					    label      	"DirectDrawObject")
					icon_style 	"Icon"
					quidu      	"3A2C53160231"
					compartment 	(object Compartment
					    Parent_View 	@16
					    location   	(815, 171)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	16
					    max_width  	703)
					width      	724
					height     	780
					annotation 	8
					autoResize 	TRUE)
				    (object AttachView "" @17
					stereotype 	TRUE
					client     	@3
					supplier   	@16
					line_style 	0)
				    (object AssociationViewNew "$UNNAMED$9" @18
					location   	(1660, 496)
					stereotype 	TRUE
					quidu      	"3A2DA1DA013D"
					roleview_list 	(list RoleViews
					    (object RoleView "$UNNAMED$10" @19
						Parent_View 	@18
						location   	(764, 176)
						stereotype 	TRUE
						quidu      	"3A2DA1DA01C9"
						client     	@18
						supplier   	@15
						line_style 	0)
					    (object RoleView "$UNNAMED$11" @20
						Parent_View 	@18
						location   	(764, 176)
						stereotype 	TRUE
						quidu      	"3A2DA1DA01CA"
						client     	@18
						supplier   	@16
						line_style 	0)))
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::FontObject" @21
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(2112, 1376)
					label      	(object ItemLabel
					    Parent_View 	@21
					    location   	(1823, 1305)
					    nlines     	1
					    max_width  	578
					    justify    	0
					    label      	"FontObject")
					icon_style 	"Icon"
					quidu      	"3A2C73EF0160"
					compartment 	(object Compartment
					    Parent_View 	@21
					    location   	(1823, 1359)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	2
					    max_width  	584)
					width      	596
					height     	164
					annotation 	8
					autoResize 	TRUE)
				    (object ClassView "Class" "Logical View::User Services::gs_directdraw::GenericSurfaceObject" @22
					ShowCompartmentStereotypes 	TRUE
					IncludeAttribute 	TRUE
					IncludeOperation 	TRUE
					location   	(1168, 1376)
					label      	(object ItemLabel
					    Parent_View 	@22
					    location   	(754, 1129)
					    nlines     	1
					    max_width  	828
					    justify    	0
					    label      	"GenericSurfaceObject")
					icon_style 	"Icon"
					quidu      	"3A2C63A500AF"
					compartment 	(object Compartment
					    Parent_View 	@22
					    location   	(754, 1183)
					    icon_style 	"Icon"
					    anchor     	2
					    nlines     	10
					    max_width  	825)
					width      	846
					height     	516
					annotation 	8
					autoResize 	TRUE)
				    (object InheritView "public inheritance" @23
					label      	(object ItemLabel
					    Parent_View 	@23
					    location   	(1315, 1800)
					    anchor_loc 	1
					    nlines     	1
					    max_width  	450
					    justify    	0
					    label      	"public inheritance")
					stereotype 	TRUE
					quidu      	"3A2C7D5603D8"
					client     	@11
					supplier   	@22
					line_style 	0)
				    (object AttachView "" @24
					stereotype 	TRUE
					client     	@7
					supplier   	@22
					line_style 	0)
				    (object InheritView "" @25
					stereotype 	TRUE
					quidu      	"3A2DA16B036E"
					client     	@10
					supplier   	@22
					line_style 	0)
				    (object AssociationViewNew "$UNNAMED$6" @26
					location   	(1168, 1001)
					stereotype 	TRUE
					quidu      	"3A2DA1D60200"
					roleview_list 	(list RoleViews
					    (object RoleView "$UNNAMED$7" @27
						Parent_View 	@26
						location   	(-64, -247)
						stereotype 	TRUE
						quidu      	"3A2DA1D60296"
						client     	@26
						supplier   	@16
						line_style 	0)
					    (object RoleView "$UNNAMED$8" @28
						Parent_View 	@26
						location   	(-64, -247)
						stereotype 	TRUE
						quidu      	"3A2DA1D602A0"
						client     	@26
						supplier   	@22
						line_style 	0)))
				    (object AssociationViewNew "$UNNAMED$12" @29
					location   	(1702, 1376)
					stereotype 	TRUE
					quidu      	"3A2DA1DC0277"
					roleview_list 	(list RoleViews
					    (object RoleView "$UNNAMED$13" @30
						Parent_View 	@29
						location   	(470, 128)
						stereotype 	TRUE
						quidu      	"3A2DA1DC03DF"
						client     	@29
						supplier   	@21
						line_style 	0)
					    (object RoleView "$UNNAMED$14" @31
						Parent_View 	@29
						location   	(470, 128)
						stereotype 	TRUE
						quidu      	"3A2DA1DC03E0"
						client     	@29
						supplier   	@22
						line_style 	0))))))))
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "Package Overview"
			quid       	"3A2C528803AA"
			title      	"Package Overview"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list
			    (object CategoryView "Logical View::User Services::gs_directdraw" @32
				location   	(336, 240)
				label      	(object ItemLabel
				    Parent_View 	@32
				    location   	(192, 156)
				    nlines     	2
				    max_width  	288
				    justify    	0
				    label      	"gs_directdraw")
				icon_style 	"Icon"
				quidu      	"3A2C52F703A9"
				width      	300
				height     	180)))))
	    (object Class_Category "Business Services"
		attributes 	(list Attribute_Set
		    (object Attribute
			tool       	"VisualBasic"
			name       	"TierPackage"
			value      	"Business Services"))
		quid       	"3A2C528803AB"
		documentation 	"Business services respond to requests from the user (or other business services) in order to execute a business task. They accomplish this by requesting the data services needed and applying formal procedures and business rules to the relevant data. This protocol insulates the user from direct interaction with the database. Because business rules tend to change more frequently than the specific business tasks they support, they are ideal candidates for encapsulating in components that are physically separate from the application logic itself."
		visible_categories 	(list visibility_relationship_list
		    (object Visibility_Relationship
			attributes 	(list Attribute_Set
			    (object Attribute
				tool       	"VisualBasic"
				name       	"TierPackage"
				value      	"User Services"))
			quid       	"3A2C528803B1"
			supplier   	"Logical View::User Services"
			quidu      	"3A2C528803A9")
		    (object Visibility_Relationship
			attributes 	(list Attribute_Set
			    (object Attribute
				tool       	"VisualBasic"
				name       	"TierPackage"
				value      	"Data Services"))
			quid       	"3A2C528803B2"
			supplier   	"Logical View::Data Services"
			quidu      	"3A2C528803AD"))
		exportControl 	"Public"
		logical_models 	(list unit_reference_list)
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "Package Overview"
			quid       	"3A2C528803AC"
			title      	"Package Overview"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list))))
	    (object Class_Category "Data Services"
		attributes 	(list Attribute_Set
		    (object Attribute
			tool       	"VisualBasic"
			name       	"TierPackage"
			value      	"Data Services"))
		quid       	"3A2C528803AD"
		documentation 	"Data services maintain, access, and update data. They also manage and satisfy requests to manipulate data that are initiated by business services. Separating data services allows the data structure and access mechanisms to be maintained, modified, or, if necessary, even re-architected without affecting business or user services."
		visible_categories 	(list visibility_relationship_list
		    (object Visibility_Relationship
			attributes 	(list Attribute_Set
			    (object Attribute
				tool       	"VisualBasic"
				name       	"TierPackage"
				value      	"User Services"))
			quid       	"3A2C528803B3"
			supplier   	"Logical View::User Services"
			quidu      	"3A2C528803A9")
		    (object Visibility_Relationship
			attributes 	(list Attribute_Set
			    (object Attribute
				tool       	"VisualBasic"
				name       	"TierPackage"
				value      	"Data Services"))
			quid       	"3A2C528803B4"
			supplier   	"Logical View::Business Services"
			quidu      	"3A2C528803AB"))
		exportControl 	"Public"
		logical_models 	(list unit_reference_list)
		logical_presentations 	(list unit_reference_list
		    (object ClassDiagram "Package Overview"
			quid       	"3A2C528803AE"
			title      	"Package Overview"
			zoom       	100
			max_height 	28350
			max_width  	21600
			origin_x   	0
			origin_y   	0
			items      	(list diagram_item_list)))))
	logical_presentations 	(list unit_reference_list
	    (object Tier_Diagram "Three-Tiered Service Model"
		quid       	"3A2C528803B5"
		title      	"Three-Tiered Service Model"
		documentation 	"A three-tiered architectural approach separates the various components of a client/server system into three tiers of services. The user services, business and other middle tier services, and data services are the logical tiers that collaborate in an application"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list
		    (object TierView "User Services" @33
			label      	(object ItemLabel
			    Parent_View 	@33
			    location   	(6, 6)
			    nlines     	2
			    max_width  	-12
			    justify    	0
			    label      	"User Services")
			icon_style 	"Icon"
			hidden     	TRUE
			quidu      	"3A2C528803A9"
			width      	300
			height     	180)
		    (object TierView "Business Services" @34
			location   	(600, 0)
			label      	(object ItemLabel
			    Parent_View 	@34
			    location   	(606, 6)
			    nlines     	2
			    max_width  	-12
			    justify    	0
			    label      	"Business Services")
			icon_style 	"Icon"
			hidden     	TRUE
			quidu      	"3A2C528803AB"
			width      	300
			height     	180)
		    (object TierView "Data Services" @35
			location   	(1200, 0)
			label      	(object ItemLabel
			    Parent_View 	@35
			    location   	(1206, 6)
			    nlines     	2
			    max_width  	-12
			    justify    	0
			    label      	"Data Services")
			icon_style 	"Icon"
			hidden     	TRUE
			quidu      	"3A2C528803AD"
			width      	300
			height     	180)
		    (object CategoryView "Logical View::User Services::gs_directdraw" @36
			location   	(288, 224)
			label      	(object ItemLabel
			    Parent_View 	@36
			    location   	(144, 140)
			    nlines     	2
			    max_width  	288
			    justify    	0
			    label      	"gs_directdraw")
			icon_style 	"Icon"
			quidu      	"3A2C52F703A9"
			width      	300
			height     	180)))))
    root_subsystem 	(object SubSystem "Component View"
	quid       	"3A2C52850249"
	physical_models 	(list unit_reference_list)
	physical_presentations 	(list unit_reference_list
	    (object Module_Diagram "Main"
		quid       	"3A2C52880381"
		title      	"Main"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    process_structure 	(object Processes
	quid       	"3A2C5285024A"
	ProcsNDevs 	(list
	    (object Process_Diagram "Deployment View"
		quid       	"3A2C52850264"
		title      	"Deployment View"
		zoom       	100
		max_height 	28350
		max_width  	21600
		origin_x   	0
		origin_y   	0
		items      	(list diagram_item_list))))
    properties 	(object Properties
	attributes 	(list Attribute_Set
	    (object Attribute
		tool       	"Repository"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"SourceSafe"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"TypeLibImporter"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"VC++"
		name       	"propertyId"
		value      	"809135966")
	    (object Attribute
		tool       	"VC++"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"VC++"
			name       	"Generate"
			value      	TRUE)
		    (object Attribute
			tool       	"VC++"
			name       	"HeaderFile"
			value      	"AUTO GENERATE")))
	    (object Attribute
		tool       	"VC++"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"VC++"
			name       	"OperationIsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"VC++"
			name       	"OperationKindSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"VC++"
				name       	"Non-virtual"
				value      	200)
			    (object Attribute
				tool       	"VC++"
				name       	"Abstract"
				value      	201)
			    (object Attribute
				tool       	"VC++"
				name       	"Virtual"
				value      	202)))
		    (object Attribute
			tool       	"VC++"
			name       	"OperationKind"
			value      	("OperationKindSet" 200))))
	    (object Attribute
		tool       	"VC++"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"VJ++"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"Visual Basic"
		name       	"propertyId"
		value      	"783606378")
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Class"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CreatableSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Private"
				value      	221)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"PublicNotCreatable"
				value      	213)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"SingleUse"
				value      	214)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"GlobalSingleUse"
				value      	215)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"MultiUse"
				value      	219)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"GlobalMultiUse"
				value      	220)))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionBase"
			value      	"0")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionExplicit"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OptionCompare"
			value      	("CompareSet" 202))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Creatable"
			value      	("CreatableSet" 221))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateInitialization"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateTermination"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CollectionClass"
			value      	"Collection")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"CompareSet"
			value      	(list Attribute_Set
			    (object Attribute
				tool       	"Visual Basic"
				name       	"None"
				value      	202)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Binary"
				value      	203)
			    (object Attribute
				tool       	"Visual Basic"
				name       	"Text"
				value      	204)))))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Operation"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"OperationName"
			value      	"$operation")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"LibraryName"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"AliasName"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"IsStatic"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"EntryCode"
			value      	(value Text ""))
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ExitCode"
			value      	(value Text ""))))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Attribute"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"IsConst"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"New"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"WithEvents"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Subscript"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"NameIfUnlabeled"
			value      	"the$supplier")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateGetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateSetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateLetOperation"
			value      	FALSE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Role"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"New"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"WithEvents"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"Subscript"
			value      	"")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"NameIfUnlabeled"
			value      	"the$supplier")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateDataMember"
			value      	TRUE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"DataMemberName"
			value      	"$relationship")
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateGetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateSetOperation"
			value      	FALSE)
		    (object Attribute
			tool       	"Visual Basic"
			name       	"GenerateLetOperation"
			value      	FALSE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Inherit"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ImplementsDelegation"
			value      	TRUE)))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"default__Module-Spec"
		value      	(list Attribute_Set
		    (object Attribute
			tool       	"Visual Basic"
			name       	"ProjectFile"
			value      	"")))
	    (object Attribute
		tool       	"Visual Basic"
		name       	"HiddenTool"
		value      	FALSE)
	    (object Attribute
		tool       	"VisualStudio"
		name       	"HiddenTool"
		value      	FALSE))
	quid       	"3A2C5285024B"))
