Go to documentation repository
...
The methods of the NissObjectDLLExt classare described in the table below.
Method | Description | Example |
CoreInterface* m_pCore | A pointer to the core interface |
virtual BOOL IsWantAllEvents() | Returns TRUE if the OnEvent function receives events from all objects; returns FALSE if the function receives events from its own object only |
If "CAM,GRABBER" is passed as a parameter, when settings of these objects are modified, the |
DEMO object receives the following messages: |
DEMO|1|UPDATE_CAM|parameters of the camera |
DEMO|1|UPDATE_GRABBER|parameters of the video capture card | |
virtual CString DescribeSubscribeObjectsList() | The method accepts a comma-separated list of objects. When an object from the list is modified, the current object is notified |
virtual CString GetObjectType() | Returns the object type |
|
| ||||
virtual CString GetParentType() | Returns the parent object type |
|
virtual int GetPos() | Returns the position of the object in the |
psim.sec key file. Attention! This parameter must be set in consultation with AxxonSoft |
|
Note: If Axxon PSIM is run in the |
demo mode, the function returns -1 | |
virtual CString GetPort() | Returns the number of the port used for communication between the object and the core. Attention! This parameter must be set in consultation with AxxonSoft |
|
virtual CString GetProcessName() | Returns the process name. Used by the core to search for and automatically run the executable module on startup of the system and initialization of the module |
|
|
virtual CString GetDeviceType() | Determines the type of the object and its behavior. |
ACD – objects of this type receive all events related to the creation, modification, and deletion of the following objects: Users, Time Zone, and Access Levels |
ACD2 – a type similar to ACD, providing the additional (provided by the core) functionality of deleting temporary (fixed-term) cards |
The ACR type means that the object is a reader |
All objects of the ACR type are available in the Access Point drop-down list | |
virtual BOOL HasChild() | Returns TRUE if the object has child objects, FALSE otherwise |
|
virtual UINT HasSetupPanel() | Returns TRUE if the object has a setup panel, FALSE otherwise |
| ||
virtual void OnPanelInit(CWnd*) | Used when the object's setup panel is initialized. The parameter is a pointer to the setup panel's window |
| |
virtual void OnPanelLoad(CWnd*,Msg&) | Used when the setup panel is loaded for setting the parameters of the object. The parameters are the setup panel's window and a message used to pass the parameters and fill in the relevant fields of the setup panel |
|
| virtual void OnPanelSave(CWnd*,Msg&) | Used when the setup panel is saved for saving the parameters of the object. The parameters are a pointer to the setup panel's window and a reference to a message used to pass the parameters and save them in a database |
| |||
virtual void OnPanelExit(CWnd*) | Used when the object's setup panel is closed ("exited"). The parameter is a pointer to the setup panel's window |
| |
virtual void OnPanelButtonPressed(CWnd*,UINT) | Used to handle clicks on the setup panel's buttons. The parameters are a pointer to the setup panel's window and a button ID. Note: A button ID must be a number equal to or greater than 1151. For example, the Resource.h file defines the ID of the Test button as follows: #define IDC_TEST 1151 |
|
|
If a button click is to open your own dialog box created in the same MDL file, you must first use the code shown in the example below |
|
|
|
| |
virtual BOOL IsRegionObject() | Shows whether the object supports Axxon PSIM's regions. Regions are used to group objects. They can also be used in the report system |
| |
virtual BOOL IsProcessObject() | Shows whether the object supports starting and running multiple executable modules simultaneously. |
For example, this may be used for starting a separate module for each COM port. Note: We recommend using one RUN file. This makes it easier to debug and modify the module |
| |
virtual void OnCreate(Msg&) | Used when the object is created. The parameter is a reference to a message that contains object information. The method is also used to set default parameters |
|
virtual void OnInit(Msg&) | Used when the object is initialized. The parameter is a reference to a message that contains object information |
| |||
virtual void OnChange(Msg&,Msg&) | Used when the object is changed. The first and second parameters are references to messages that contain object information before and after the change, respectively |
| |||
virtual void OnDelete(Msg&) | Used when the object is deleted. The parameter is a reference to a message that contains object information |
|
virtual void OnEnable(Msg&) | Used to handle clicks on the Disable button of Axxon PSIM's panel when the object is enabled. The parameter is a reference to a message that contains object information |
| |
virtual void OnDisable(Msg&) | Used to handle clicks on the Disable button of Axxon PSIM's panel when the object is disabled. The parameter is a reference to a message that contains object information |
| |
virtual BOOL OnEvent(Event&) | Used to handle the events that are passed as the parameter |
|
|
|
|
|
| |
virtual BOOL OnReact(React&) | Used to handle the reactions that are passed as the parameter |
|
The CreateNissObject(CoreInterface* core) global function creates instances of the described objects, places them in an array (an instance of CNissObjectDLLExtArray), andreturns a pointer to this array. This function is used to receive a pointer to the core interface. This pointer is later used by objects to call interface methods:
| Code Block |
|---|
CNissObjectDLLExtArray* APIENTRY CreateNissObject(CoreInterface* core)
{
CNissObjectDLLExtArray* ar = new CNissObjectDLLExtArray;
ar->Add(new NissObjectAxxon One DemoNissObjectDemo(core));
ar->Add(new NissObjectDemoDevice(core));
return ar;
} |
...
All object setup panels are stored in resources as dialogs. Each dialog ID has the format IDD_object_SETUP, where object is the name of the corresponding object. For example, the ID of the Axxon One Demo DEMO object is IDD_DEMO_SETUP, and the ID of the DEMO_DEVICE object is IDD_DEMO_DEVICE _SETUP.
| Info | ||
|---|---|---|
| ||
| If you want for the settings tree to show a special icon for a particular object, in the resources of the DLL file, create a 14x14 BITMAP that contains the object name,. |