Смекни!
smekni.com

Программа регистрации процесса производства для автоматизированной системы управления предприятием электронной промышленности (стр. 19 из 20)

2. Поспелов Д.А. Принципы ситуационного управления // Известия АН СССР. Серия Техническая кибернетика. 1971. N.2.

3. Клыков Ю.И. Ситуационное управление большими системами. М.: Энергия, 1974.

4. Поспелов Д.А. Большие системы. Ситуационное управление. М.: Знание, 1975.

5. Искусственный интеллект. - В 3-х кн. Справочник. М.: Радио и связь, 1990.

6. MES Explained: A High Level Vision for Executives. White Paper of MESA International (1997). Интернет-адрес: http://www.mesa.org/html/main. cgi? sub=7

7. Technical Articles of Consilium Company. Интернет-адрес: http://www.consilium.com/Publications/technica. htm

8. Уоссермен Ф. Нейрокомпьютерная техника. Теория и практика. М.: Мир, 1992.238 с.

9. С.С. Гайсарян. Объектно-ориентированные технологии проектирования прикладных программных систем. Интернет-адрес: http://www.citforum.ru/programming/oop_rsis/index. shtml

10. P. Coad, M. Mayfield. Object Models: Strategies, Patterns and Applications (Yourdon Press Computing Series). 1996.

11. Буч.Г. "Объектно-ориентированный анализ и проектирование с примерами приложений на C++", М.,"Бином", 1998 г.

Приложение

Фрагменты исходного кода

// Angstrem. h: main header file for the ANGSTREM application

//

#if _MSC_VER > 1000

#pragma once

#endif // _MSC_VER > 1000

#ifndef __AFXWIN_H__

#error include 'stdafx. h' before including this file for PCH

#endif

#include "resource. h" // main symbols

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CAngstremApp:

// See Angstrem. cpp for the implementation of this class

//

class CAngstremApp: public CWinApp

{

public:

CAngstremApp ();

// Overrides

// ClassWizard generated virtual function overrides

// {{AFX_VIRTUAL (CAngstremApp)

public:

virtual BOOL InitInstance ();

// }}AFX_VIRTUAL

// Implementation

// {{AFX_MSG (CAngstremApp)

afx_msg void OnAppAbout ();

afx_msg void OnObjectsPartsNew ();

afx_msg void OnObjectsPartsOpen ();

afx_msg void OnObjectsPartsViewall ();

afx_msg void OnObjectsPartsDelete ();

afx_msg void OnAppFindpart ();

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// {{AFX_INSERT_LOCATION}}

// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

// Angstrem. cpp: Defines the class behaviors for the application.

//

#include "stdafx. h"

#include "Angstrem. h"

#include "MainFrame. h"

#include "ChildFrame. h"

#include "AngstremDoc. h"

#include "AngstremView. h"

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE [] = __FILE__;

#endif

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CAngstremApp

BEGIN_MESSAGE_MAP (CAngstremApp, CWinApp)

// {{AFX_MSG_MAP (CAngstremApp)

ON_COMMAND (ID_APP_ABOUT, OnAppAbout)

ON_COMMAND (ID_OBJECTS_PARTS_NEW, OnObjectsPartsNew)

ON_COMMAND (ID_OBJECTS_PARTS_OPEN, OnObjectsPartsOpen)

ON_COMMAND (ID_OBJECTS_PARTS_VIEWALL, OnObjectsPartsViewall)

ON_COMMAND (ID_OBJECTS_PARTS_DELETE, OnObjectsPartsDelete)

ON_COMMAND (ID_APP_FINDPART, OnAppFindpart)

// }}AFX_MSG_MAP

// Standard file based document commands

END_MESSAGE_MAP ()

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CAngstremApp construction

CAngstremApp:: CAngstremApp ()

{

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// The one and only CAngstremApp object

CAngstremApp theApp;

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CAngstremApp initialization

BOOL CAngstremApp:: InitInstance ()

{

// Standard initialization

// If you are not using these features and wish to reduce the size

// of your final executable, you should remove from the following

// the specific initialization routines you do not need.

#ifdef _AFXDLL

Enable3dControls (); // Call this when using MFC in a shared DLL

#else

Enable3dControlsStatic (); // Call this when linking to MFC statically

#endif

// Change the registry key under which our settings are stored.

// TODO: You should modify this string to be something appropriate

// such as the name of your company or organization.

SetRegistryKey (_T ("Local AppWizard-Generated Applications"));

LoadStdProfileSettings (); // Load standard INI file options (including MRU)

// Register the application's document templates. Document templates

// serve as the connection between documents, frame windows and views.

CMultiDocTemplate* pDocTemplate;

pDocTemplate = new CMultiDocTemplate (

IDR_ANGSTRTYPE,

RUNTIME_CLASS (CAngstremDoc),

RUNTIME_CLASS (CChildFrame), // custom MDI child frame

RUNTIME_CLASS (CAngstremView));

AddDocTemplate (pDocTemplate);

// create main MDI Frame window

CMainFrame* pMainFrame = new CMainFrame;

if (! pMainFrame->LoadFrame (IDR_MAINFRAME))

return FALSE;

m_pMainWnd = pMainFrame;

// Enable drag/drop open

m_pMainWnd->DragAcceptFiles ();

// Enable DDE Execute open

EnableShellOpen ();

RegisterShellFileTypes (TRUE);

// Parse command line for standard shell commands, DDE, file open

CCommandLineInfo cmdInfo;

ParseCommandLine (cmdInfo);

// Dispatch commands specified on the command line

if (! ProcessShellCommand (cmdInfo))

return FALSE;

// The main window has been initialized, so show and update it.

pMainFrame->ShowWindow (m_nCmdShow);

pMainFrame->UpdateWindow ();

return TRUE;

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CAboutDlg dialog used for App About

class CAboutDlg: public CDialog

{

public:

CAboutDlg ();

// Dialog Data

// {{AFX_DATA (CAboutDlg)

enum { IDD = IDD_ABOUTBOX };

// }}AFX_DATA

// ClassWizard generated virtual function overrides

// {{AFX_VIRTUAL (CAboutDlg)

protected:

virtual void DoDataExchange (CDataExchange* pDX); // DDX/DDV support

// }}AFX_VIRTUAL

// Implementation

protected:

// {{AFX_MSG (CAboutDlg)

// No message handlers

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

CAboutDlg:: CAboutDlg (): CDialog (CAboutDlg:: IDD)

{

// {{AFX_DATA_INIT (CAboutDlg)

// }}AFX_DATA_INIT

}

void CAboutDlg:: DoDataExchange (CDataExchange* pDX)

{

CDialog:: DoDataExchange (pDX);

// {{AFX_DATA_MAP (CAboutDlg)

// }}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP (CAboutDlg, CDialog)

// {{AFX_MSG_MAP (CAboutDlg)

// No message handlers

// }}AFX_MSG_MAP

END_MESSAGE_MAP ()

// App command to run the dialog

void CAngstremApp:: OnAppAbout ()

{

CAboutDlg aboutDlg;

aboutDlg. DoModal ();

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CNewPartDlg dialog

class CNewPartDlg: public CDialog

{

// Construction

public:

CNewPartDlg (CWnd* pParent = NULL); // standard constructor

// Dialog Data

// {{AFX_DATA (CNewPartDlg)

enum { IDD = IDD_PARTNEW };

// NOTE: the ClassWizard will add data members here

// }}AFX_DATA

// Overrides

// ClassWizard generated virtual function overrides

// {{AFX_VIRTUAL (CNewPartDlg)

protected:

virtual void DoDataExchange (CDataExchange* pDX); // DDX/DDV support

// }}AFX_VIRTUAL

// Implementation

protected:

// Generated message map functions

// {{AFX_MSG (CNewPartDlg)

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

CNewPartDlg:: CNewPartDlg (CWnd* pParent /*=NULL*/)

: CDialog (CNewPartDlg:: IDD, pParent)

{

// {{AFX_DATA_INIT (CNewPartDlg)

// NOTE: the ClassWizard will add member initialization here

// }}AFX_DATA_INIT

}

void CNewPartDlg:: DoDataExchange (CDataExchange* pDX)

{

CDialog:: DoDataExchange (pDX);

// {{AFX_DATA_MAP (CNewPartDlg)

// NOTE: the ClassWizard will add DDX and DDV calls here

// }}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP (CNewPartDlg, CDialog)

// {{AFX_MSG_MAP (CNewPartDlg)

// }}AFX_MSG_MAP

END_MESSAGE_MAP ()

void CAngstremApp:: OnObjectsPartsNew ()

{

// TODO: Add your command handler code here

CNewPartDlg newPartDlg;

newPartDlg. DoModal ();

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// COpenPartDlg dialog

class COpenPartDlg: public CDialog

{

// Construction

public:

COpenPartDlg (CWnd* pParent = NULL); // standard constructor

// Dialog Data

// {{AFX_DATA (COpenPartDlg)

enum { IDD = IDD_PARTOPEN };

// NOTE: the ClassWizard will add data members here

// }}AFX_DATA

// Overrides

// ClassWizard generated virtual function overrides

// {{AFX_VIRTUAL (COpenPartDlg)

protected:

virtual void DoDataExchange (CDataExchange* pDX); // DDX/DDV support

// }}AFX_VIRTUAL

// Implementation

protected:

// Generated message map functions

// {{AFX_MSG (COpenPartDlg)

// NOTE: the ClassWizard will add member functions here

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

COpenPartDlg:: COpenPartDlg (CWnd* pParent /*=NULL*/)

: CDialog (COpenPartDlg:: IDD, pParent)

{

// {{AFX_DATA_INIT (COpenPartDlg)

// NOTE: the ClassWizard will add member initialization here

// }}AFX_DATA_INIT

}

void COpenPartDlg:: DoDataExchange (CDataExchange* pDX)

{

CDialog:: DoDataExchange (pDX);

// {{AFX_DATA_MAP (COpenPartDlg)

// NOTE: the ClassWizard will add DDX and DDV calls here

// }}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP (COpenPartDlg, CDialog)

// {{AFX_MSG_MAP (COpenPartDlg)

// NOTE: the ClassWizard will add message map macros here

// }}AFX_MSG_MAP

END_MESSAGE_MAP ()

void CAngstremApp:: OnObjectsPartsOpen ()

{

// TODO: Add your command handler code here

COpenPartDlg openPartDlg;

openPartDlg. DoModal ();

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CViewAllPartsDlg dialog

class CViewAllPartsDlg: public CDialog

{

// Construction

public:

CViewAllPartsDlg (CWnd* pParent = NULL); // standard constructor

// Dialog Data

// {{AFX_DATA (CViewAllPartsDlg)

enum { IDD = IDD_PARTSVIEWALL };

// NOTE: the ClassWizard will add data members here

// }}AFX_DATA

// Overrides

// ClassWizard generated virtual function overrides

// {{AFX_VIRTUAL (CViewAllPartsDlg)

protected:

virtual void DoDataExchange (CDataExchange* pDX); // DDX/DDV support

// }}AFX_VIRTUAL

// Implementation

protected:

// Generated message map functions

// {{AFX_MSG (CViewAllPartsDlg)

// NOTE: the ClassWizard will add member functions here

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

CViewAllPartsDlg:: CViewAllPartsDlg (CWnd* pParent /*=NULL*/)

: CDialog (CViewAllPartsDlg:: IDD, pParent)

{

// {{AFX_DATA_INIT (CViewAllPartsDlg)

// NOTE: the ClassWizard will add member initialization here

// }}AFX_DATA_INIT

}

void CViewAllPartsDlg:: DoDataExchange (CDataExchange* pDX)

{

CDialog:: DoDataExchange (pDX);

// {{AFX_DATA_MAP (CViewAllPartsDlg)

// NOTE: the ClassWizard will add DDX and DDV calls here

// }}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP (CViewAllPartsDlg, CDialog)

// {{AFX_MSG_MAP (CViewAllPartsDlg)

// NOTE: the ClassWizard will add message map macros here

// }}AFX_MSG_MAP

END_MESSAGE_MAP ()

void CAngstremApp:: OnObjectsPartsViewall ()

{

// TODO: Add your command handler code here

CViewAllPartsDlg viewAllPartsDlg;

viewAllPartsDlg. DoModal ();

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CDeletePartDlg dialog

class CDeletePartDlg: public CDialog

{

// Construction

public:

CDeletePartDlg (CWnd* pParent = NULL); // standard constructor

// Dialog Data

// {{AFX_DATA (CDeletePartDlg)

enum { IDD = IDD_PARTDELETE };

// NOTE: the ClassWizard will add data members here

// }}AFX_DATA

// Overrides

// ClassWizard generated virtual function overrides

// {{AFX_VIRTUAL (CDeletePartDlg)

protected:

virtual void DoDataExchange (CDataExchange* pDX); // DDX/DDV support

// }}AFX_VIRTUAL

// Implementation

protected:

// Generated message map functions

// {{AFX_MSG (CDeletePartDlg)

// NOTE: the ClassWizard will add member functions here

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

CDeletePartDlg:: CDeletePartDlg (CWnd* pParent /*=NULL*/)

: CDialog (CDeletePartDlg:: IDD, pParent)

{

// {{AFX_DATA_INIT (CDeletePartDlg)

// NOTE: the ClassWizard will add member initialization here

// }}AFX_DATA_INIT

}

void CDeletePartDlg:: DoDataExchange (CDataExchange* pDX)

{

CDialog:: DoDataExchange (pDX);

// {{AFX_DATA_MAP (CDeletePartDlg)

// NOTE: the ClassWizard will add DDX and DDV calls here

// }}AFX_DATA_MAP

}

BEGIN_MESSAGE_MAP (CDeletePartDlg, CDialog)

// {{AFX_MSG_MAP (CDeletePartDlg)

// NOTE: the ClassWizard will add message map macros here

// }}AFX_MSG_MAP

END_MESSAGE_MAP ()

void CAngstremApp:: OnObjectsPartsDelete ()

{

// TODO: Add your command handler code here

CDeletePartDlg deletePartDlg;

deletePartDlg. DoModal ();

}

// // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /

// CPartProcessingPage dialog

class CPartProcessingPage: public CPropertyPage

{

DECLARE_DYNCREATE (CPartProcessingPage)

// Construction

public:

CPartProcessingPage ();

~CPartProcessingPage ();

// Dialog Data

// {{AFX_DATA (CPartProcessingPage)

enum { IDD = IDD_PART_PROCESSING };

// NOTE - ClassWizard will add data members here.

// DO NOT EDIT what you see in these blocks of generated code!

// }}AFX_DATA

// Overrides

// ClassWizard generate virtual function overrides

// {{AFX_VIRTUAL (CPartProcessingPage)

protected:

virtual void DoDataExchange (CDataExchange* pDX); // DDX/DDV support

// }}AFX_VIRTUAL

// Implementation

protected:

// Generated message map functions

// {{AFX_MSG (CPartProcessingPage)

afx_msg void OnRefresh ();

afx_msg void OnStart ();

afx_msg void OnFinish ();

// }}AFX_MSG

DECLARE_MESSAGE_MAP ()

};

IMPLEMENT_DYNCREATE (CPartProcessingPage, CPropertyPage)

CPartProcessingPage:: CPartProcessingPage (): CPropertyPage (CPartProcessingPage:: IDD)

{

// {{AFX_DATA_INIT (CPartProcessingPage)

// NOTE: the ClassWizard will add member initialization here

// }}AFX_DATA_INIT

}

CPartProcessingPage:: ~CPartProcessingPage ()