Commit 73e1539e authored by claes's avatar claes

*** empty log message ***

parent a3085a6c
/*
* Proview $Id: opc_provider.cpp,v 1.1 2007-03-01 09:12:54 claes Exp $
* Proview $Id: opc_provider.cpp,v 1.2 2007-03-02 08:52:20 claes Exp $
* Copyright (C) 2005 SSAB Oxelsund AB.
*
* This program is free software; you can redistribute it and/or
......@@ -33,6 +33,7 @@
#include "rt_gdh_msg.h"
#include "co_cdh.h"
#include "co_dcli.h"
#include "pwr_opcclasses.h"
#include "opc_soap_H.h"
#include "Service.nsmap"
......@@ -52,9 +53,182 @@ void opc_provider::object( co_procom *pcom)
objectOid( pcom, m_list[0].fchoix);
}
void opc_provider::insert_object( pwr_tOix fth, pwr_tOix bws, ns1__BrowseElement *element,
int first, int last, int load_children)
{
procom_obj o;
strcpy( o.name, element->Name->c_str());
o.oix = next_oix++;
o.fthoix = fth;
if ( !element->IsItem) {
o.cid = pwr_cClass_Opc_Hier;
}
else {
if ( element->Properties.size() &&
element->Properties[0]->Name == "dataType") {
if ( strcmp( element->Properties[0]->Value, "string") == 0) {
o.cid = pwr_cClass_Opc_String;
o.body_size = sizeof(pwr_sClass_Opc_String);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "boolean") == 0) {
o.cid = pwr_cClass_Opc_Boolean;
o.body_size = sizeof(pwr_sClass_Opc_Boolean);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "float") == 0) {
o.cid = pwr_cClass_Opc_Float;
o.body_size = sizeof(pwr_sClass_Opc_Float);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "double") == 0) {
o.cid = pwr_cClass_Opc_Double;
o.body_size = sizeof(pwr_sClass_Opc_Double);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "double") == 0) {
o.cid = pwr_cClass_Opc_Double;
o.body_size = sizeof(pwr_sClass_Opc_Double);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "decimal") == 0) {
o.cid = pwr_cClass_Opc_Decimal;
o.body_size = sizeof(pwr_sClass_Opc_Decimal);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "int") == 0) {
o.cid = pwr_cClass_Opc_Int;
o.body_size = sizeof(pwr_sClass_Opc_Int);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "short") == 0) {
o.cid = pwr_cClass_Opc_Short;
o.body_size = sizeof(pwr_sClass_Opc_Short);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "byte") == 0) {
o.cid = pwr_cClass_Opc_Byte;
o.body_size = sizeof(pwr_sClass_Opc_Byte);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "unsignedLong") == 0) {
o.cid = pwr_cClass_Opc_UnsignedLong;
o.body_size = sizeof(pwr_sClass_Opc_UnsignedLong);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "unsignedInt") == 0) {
o.cid = pwr_cClass_Opc_UnsignedInt;
o.body_size = sizeof(pwr_sClass_Opc_UnsignedInt);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "unsignedShort") == 0) {
o.cid = pwr_cClass_Opc_UnsignedShort;
o.body_size = sizeof(pwr_sClass_Opc_UnsignedShort);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "unsignedByte") == 0) {
o.cid = pwr_cClass_Opc_UnsignedByte;
o.body_size = sizeof(pwr_sClass_Opc_UnsignedByte);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "base64Binary") == 0) {
o.cid = pwr_cClass_Opc_Base64Binary;
o.body_size = sizeof(pwr_sClass_Opc_Base64Binary);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "dateTime") == 0) {
o.cid = pwr_cClass_Opc_DateTime;
o.body_size = sizeof(pwr_sClass_Opc_DateTime);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "time") == 0) {
o.cid = pwr_cClass_Opc_Time;
o.body_size = sizeof(pwr_sClass_Opc_Time);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "date") == 0) {
o.cid = pwr_cClass_Opc_Date;
o.body_size = sizeof(pwr_sClass_Opc_Date);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "duration") == 0) {
o.cid = pwr_cClass_Opc_Duration;
o.body_size = sizeof(pwr_sClass_Opc_Duration);
o.body = calloc( 1, o.body_size);
}
else if ( strcmp( element->Properties[0]->Value, "QName") == 0) {
o.cid = pwr_cClass_Opc_QName;
o.body_size = sizeof(pwr_sClass_Opc_QName);
o.body = calloc( 1, o.body_size);
}
}
else {
o.cid = pwr_cClass_Opc_Hier;
}
}
if ( first)
m_list[fth].fchoix = o.oix;
else {
o.bwsoix = bws;
m_list[bws].fwsoix = o.oix;
}
if ( last) {
m_list[fth].lchoix = o.oix;
if ( !first) {
o.fwsoix = m_list[fth].fchoix;
m_list[o.fwsoix].bwsoix = o.oix;
}
else {
// Single child
o.fwsoix = o.oix;
o.bwsoix = o.oix;
}
}
if ( element->HasChildren && load_children)
o.flags |= procom_obj_mFlags_Loaded;
else if ( !element->HasChildren)
o.flags |= procom_obj_mFlags_Loaded;
m_list.push_back( o);
if ( load_children) {
_ns1__Browse browse;
_ns1__BrowseResponse browse_response;
if ( fth != 0)
browse.ItemPath = new std::string( longname(fth));
browse.ItemName = new std::string( o.name);
std::string s("dataType");
browse.PropertyNames.push_back( s);
if ( soap_call___ns1__Browse( &soap, opc_endpoint, NULL, &browse, &browse_response) ==
SOAP_OK) {
pwr_tOix next_bws;
pwr_tOix bws = 0;
for ( int i = 0; i < (int)browse_response.Elements.size(); i++) {
next_bws = next_oix;
insert_object( o.oix, bws, browse_response.Elements[i],
i == 0, i == (int)browse_response.Elements.size() - 1, 0);
bws = next_bws;
}
}
}
}
void opc_provider::objectOid( co_procom *pcom, pwr_tOix oix)
{
if ( m_list.size() == 0) {
// Insert volume object
procom_obj vo;
vo.cid = pwr_eClass_ExternVolume;
strcpy( vo.name, opc_vname);
vo.body_size = sizeof(pwr_sExternVolume);
vo.body = calloc( 1, vo.body_size);
vo.oix = 0;
vo.flags |= procom_obj_mFlags_Loaded;
m_list.push_back( vo);
// Load Rootlist
_ns1__Browse browse;
_ns1__BrowseResponse browse_response;
......@@ -63,32 +237,67 @@ void opc_provider::objectOid( co_procom *pcom, pwr_tOix oix)
browse.PropertyNames.push_back( s);
if ( soap_call___ns1__Browse( &soap, opc_endpoint, NULL, &browse, &browse_response) ==
SOAP_OK) {
pwr_tOix bws = 0;
pwr_tOix next_bws;
for ( int i = 0; i < (int)browse_response.Elements.size(); i++) {
procom_obj o;
strcpy( o.name, browse_response.Elements[i]->Name->c_str());
strcpy( o.lname, o.name);
o.oix = next_oix++;
if ( i != 0)
o.bwsoix = o.oix - 1;
if ( i != (int)browse_response.Elements.size() - 1)
o.fwsoix = o.oix + 1;
if ( browse_response.Elements[i]->HasChildren)
o.flags |= procom_obj_mFlags_Loaded;
else
o.flags |= procom_obj_mFlags_Loaded;
m_list.push_back( o);
next_bws = next_oix;
insert_object( oix, bws, browse_response.Elements[i],
i == 0, i == (int)browse_response.Elements.size() - 1, 1);
bws = next_bws;
}
}
else
soap_print_fault( &soap, stderr);
}
else if ( oix < m_list.size()) {
if ( !(m_list[oix].flags & procom_obj_mFlags_Loaded)) {
_ns1__Browse browse;
_ns1__BrowseResponse browse_response;
browse.ItemPath = new std::string( longname(m_list[oix].fthoix));
browse.ItemName = new std::string( m_list[oix].name);
std::string s("dataType");
browse.PropertyNames.push_back( s);
if ( soap_call___ns1__Browse( &soap, opc_endpoint, NULL, &browse, &browse_response) ==
SOAP_OK) {
pwr_tOix next_bws;
pwr_tOix bws = 0;
for ( int i = 0; i < (int)browse_response.Elements.size(); i++) {
next_bws = next_oix;
insert_object( oix, bws, browse_response.Elements[i],
i == 0, i == (int)browse_response.Elements.size() - 1, 0);
bws = next_bws;
}
}
m_list[oix].flags |= procom_obj_mFlags_Loaded;
}
}
if ( oix >= m_list.size() || oix < 0) {
pcom->provideStatus( GDH__NOSUCHOBJ);
return;
}
pcom->provideObjects( GDH__SUCCESS, m_list);
#if 0
for ( int i = 0; i < (int)m_list.size(); i++) {
printf( "oix %2d bws %2d fws %2d fth %2d fch %2d lch %2d flags %lu %s\n",
m_list[i].oix, m_list[i].bwsoix, m_list[i].fwsoix, m_list[i].fthoix,
m_list[i].fchoix, m_list[i].lchoix, m_list[i].flags, m_list[i].name);
}
#endif
vector<procom_obj>olist;
for ( int i = 0; i < (int) m_list.size(); i++) {
if ( m_list[i].flags & procom_obj_mFlags_Loaded)
olist.push_back( m_list[i]);
}
printf( "*********************************************\n");
for ( int i = 0; i < (int)olist.size(); i++) {
printf( "oix %2d bws %2d fws %2d fth %2d fch %2d lch %2d flags %lu %s\n",
olist[i].oix, olist[i].bwsoix, olist[i].fwsoix, olist[i].fthoix,
olist[i].fchoix, olist[i].lchoix, olist[i].flags, olist[i].name);
}
pcom->provideObjects( GDH__SUCCESS, olist);
}
void opc_provider::objectName( co_procom *pcom, char *name)
......@@ -271,7 +480,7 @@ int main(int argc, char *argv[])
/* Read arguments */
if ( argc < 4) {
usage();
strcpy( server_url, "http://localhost:18083");
strcpy( server_url, "http://linuxlab1:18083");
strcpy( extern_vid, "0.1.99.55");
strcpy( extern_volume_name, "MyOpcVolume");
// exit(0);
......
/*
* Proview $Id: opc_provider.h,v 1.1 2007-03-01 09:12:54 claes Exp $
* Proview $Id: opc_provider.h,v 1.2 2007-03-02 08:52:20 claes Exp $
* Copyright (C) 2005 SSAB Oxelsund AB.
*
* This program is free software; you can redistribute it and/or
......@@ -58,6 +58,9 @@ public:
virtual bool find( pwr_tOix fthoix, char *name, pwr_tOix *oix);
void insert_object( pwr_tOix fth, pwr_tOix bws, ns1__BrowseElement *element,
int first, int last, int load_children);
vector<procom_obj> m_list;
pwr_tOix root;
pwr_tOix next_oix;
......
/*
* Proview $Id: opc_server.cpp,v 1.1 2007-03-01 09:12:54 claes Exp $
* Proview $Id: opc_server.cpp,v 1.2 2007-03-02 08:52:20 claes Exp $
* Copyright (C) 2005 SSAB Oxelsund AB.
*
* This program is free software; you can redistribute it and/or
......@@ -25,6 +25,51 @@
#include "opc_soap_H.h"
#include "Service.nsmap"
static bool opc_type_to_string( int type, char **str)
{
*str = (char *) malloc(20);
switch ( type) {
case pwr_eType_String:
strcpy( *str, "string");
break;
case pwr_eType_Float32:
strcpy( *str, "float");
break;
case pwr_eType_Float64:
strcpy( *str, "double");
break;
case pwr_eType_Int32:
strcpy( *str, "int");
break;
case pwr_eType_Int16:
strcpy( *str, "short");
break;
case pwr_eType_Int8:
strcpy( *str, "char");
break;
case pwr_eType_UInt32:
strcpy( *str, "unsignedInt");
break;
case pwr_eType_UInt16:
strcpy( *str, "unsignedShort");
break;
case pwr_eType_UInt8:
strcpy( *str, "unsignedChar");
break;
case pwr_eType_Time:
strcpy( *str, "dateTime");
break;
case pwr_eType_DeltaTime:
strcpy( *str, "duration");
break;
default:
free( *str);
*str = 0;
return false;
}
return true;
}
int main()
{
......@@ -163,6 +208,8 @@ SOAP_FMAC5 int SOAP_FMAC6 __ns1__Browse(struct soap*, _ns1__Browse *ns1__Browse,
else {
// Return attributes and children
pwr_tOName itemname;
gdh_sAttrDef *bd;
int rows;
if ( ns1__Browse->ItemPath && !ns1__Browse->ItemPath->empty()) {
strncpy( itemname, ns1__Browse->ItemPath->c_str(), sizeof( itemname));
......@@ -179,6 +226,74 @@ SOAP_FMAC5 int SOAP_FMAC6 __ns1__Browse(struct soap*, _ns1__Browse *ns1__Browse,
return 0;
}
sts = gdh_GetObjectBodyDef( cid, &bd, &rows, oid);
if ( ODD(sts)) {
for ( int i = 0; i < rows; i++) {
if ( bd[i].flags & gdh_mAttrDef_Shadowed)
continue;
if ( bd[i].attr->Param.Info.Flags & PWR_MASK_RTVIRTUAL ||
bd[i].attr->Param.Info.Flags & PWR_MASK_PRIVATE)
continue;
if ( bd[i].attr->Param.Info.Type == pwr_eType_CastId ||
bd[i].attr->Param.Info.Type == pwr_eType_DisableAttr)
continue;
if ( bd[i].attr->Param.Info.Flags & PWR_MASK_RTHIDE)
continue;
if ( bd[i].attr->Param.Info.Flags & PWR_MASK_DISABLEATTR) {
pwr_sAttrRef aref = cdh_ObjidToAref( oid);
pwr_sAttrRef aaref;
pwr_tDisableAttr disabled;
sts = gdh_ArefANameToAref( &aref, bd[i].attrName, &aaref);
if ( EVEN(sts)) return sts;
sts = gdh_ArefDisabled( &aaref, &disabled);
if ( EVEN(sts)) return sts;
if ( disabled)
continue;
}
if ( bd[i].attr->Param.Info.Flags & PWR_MASK_ARRAY ) {
}
else if ( bd[i].attr->Param.Info.Flags & PWR_MASK_CLASS ) {
}
else {
ns1__BrowseElement *element = new ns1__BrowseElement();
element->Name = new std::string( bd[i].attrName);
element->ItemName = element->Name;
element->ItemPath = new std::string( itemname);
element->IsItem = true;
element->HasChildren = false;
for ( int i = 0; i < (int)ns1__Browse->PropertyNames.size(); i++) {
ns1__ItemProperty *property = new ns1__ItemProperty();
property->Name = ns1__Browse->PropertyNames[i];
if ( property->Name == "\"\":dataType") {
char *type_p;
if ( ! opc_type_to_string( bd[i].attr->Param.Info.Type, &type_p)) {
// Untranslatable type
element->IsItem = false;
element->HasChildren = false;
continue;
}
property->Value = type_p;
}
element->Properties.push_back( property);
}
ns1__BrowseResponse->Elements.push_back( element);
}
}
free( (char *)bd);
}
for ( sts = gdh_GetChild( oid, &child); ODD(sts); sts = gdh_GetNextSibling( child, &child)) {
sts = gdh_ObjidToName( child, name, sizeof(name), cdh_mName_object);
if ( EVEN(sts)) continue;
......
Volume Opc $ClassVolume 0.0.250.9
Body SysBody 01-JAN-1970 01:00:00.00
Attr NextOix = "_X1"
Attr NextCix = "_X22"
EndBody
Object Class $ClassHier 1 01-MAR-2007 16:47:50.47
Object Opc_Hier $ClassDef 1 01-MAR-2007 16:48:24.56
Body SysBody 01-MAR-2007 16:47:58.95
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 18:05:06.28
Body SysBody 01-MAR-2007 18:05:06.28
Attr StructName = "Opc_Hier"
EndBody
EndObject
Object Template Opc_Hier 2147975168 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
!/**
! @Version 1.0
! @Group IO_Opc
! Object to browse an OPC item of OPC type 'string'.
!*/
Object Opc_String $ClassDef 2 01-MAR-2007 16:49:18.37
Body SysBody 01-MAR-2007 16:48:51.39
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:49:33.17
Body SysBody 01-MAR-2007 16:49:33.17
Attr StructName = "Opc_String"
Attr NextAix = "_X2"
EndBody
Object Value $Attribute 1 01-MAR-2007 16:49:41.73
Body SysBody 01-MAR-2007 16:49:54.49
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$String80"
EndBody
EndObject
EndObject
Object Template Opc_String 2148237312 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Boolean $ClassDef 19 01-MAR-2007 16:50:41.94
Body SysBody 01-MAR-2007 16:50:28.50
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:28.50
Body SysBody 01-MAR-2007 16:50:28.50
Attr StructName = "Opc_Boolean"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:28.50
Body SysBody 01-MAR-2007 16:50:51.77
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Boolean"
EndBody
EndObject
EndObject
Object Template Opc_Boolean 2152693760 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Float $ClassDef 18 01-MAR-2007 16:51:15.25
Body SysBody 01-MAR-2007 16:50:28.36
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:28.36
Body SysBody 01-MAR-2007 16:50:28.36
Attr StructName = "Opc_Float"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:28.36
Body SysBody 01-MAR-2007 16:51:29.73
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
EndObject
Object Template Opc_Float 2152431616 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Double $ClassDef 17 01-MAR-2007 16:51:56.40
Body SysBody 01-MAR-2007 16:50:28.21
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:28.21
Body SysBody 01-MAR-2007 16:50:28.21
Attr StructName = "Opc_Double"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:28.21
Body SysBody 01-MAR-2007 16:52:07.62
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Float64"
EndBody
EndObject
EndObject
Object Template Opc_Double 2152169472 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Decimal $ClassDef 16 01-MAR-2007 16:52:29.00
Body SysBody 01-MAR-2007 16:50:28.06
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:28.06
Body SysBody 01-MAR-2007 16:50:28.06
Attr StructName = "Opc_Decimal"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:28.06
Body SysBody 01-MAR-2007 16:52:37.40
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Float32"
EndBody
EndObject
EndObject
Object Template Opc_Decimal 2151907328 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Long $ClassDef 15 01-MAR-2007 16:52:57.57
Body SysBody 01-MAR-2007 16:50:27.91
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:27.91
Body SysBody 01-MAR-2007 16:50:27.91
Attr StructName = "Opc_Long"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:27.91
Body SysBody 01-MAR-2007 16:53:11.79
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
EndObject
Object Template Opc_Long 2151645184 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Int $ClassDef 14 01-MAR-2007 16:53:30.28
Body SysBody 01-MAR-2007 16:50:27.77
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:27.77
Body SysBody 01-MAR-2007 16:50:27.77
Attr StructName = "Opc_Int"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:27.77
Body SysBody 01-MAR-2007 16:53:46.18
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Int32"
EndBody
EndObject
EndObject
Object Template Opc_Int 2151383040 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Short $ClassDef 13 01-MAR-2007 16:54:41.65
Body SysBody 01-MAR-2007 16:50:27.62
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:27.62
Body SysBody 01-MAR-2007 16:50:27.62
Attr StructName = "Opc_Short"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:27.62
Body SysBody 01-MAR-2007 16:54:54.38
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Int16"
EndBody
EndObject
EndObject
Object Template Opc_Short 2151120896 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Byte $ClassDef 12 01-MAR-2007 16:55:02.92
Body SysBody 01-MAR-2007 16:50:27.44
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:27.44
Body SysBody 01-MAR-2007 16:50:27.44
Attr StructName = "Opc_Byte"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:27.44
Body SysBody 01-MAR-2007 16:55:12.30
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Int8"
EndBody
EndObject
EndObject
Object Template Opc_Byte 2150858752 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_UnsignedLong $ClassDef 11 01-MAR-2007 16:55:43.95
Body SysBody 01-MAR-2007 16:50:27.27
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:27.27
Body SysBody 01-MAR-2007 16:50:27.27
Attr StructName = "Opc_UnsignedLong"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:27.27
Body SysBody 01-MAR-2007 16:55:57.73
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
EndObject
Object Template Opc_UnsignedLong 2150596608 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_UnsignedInt $ClassDef 10 01-MAR-2007 16:56:14.97
Body SysBody 01-MAR-2007 16:50:27.07
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:27.07
Body SysBody 01-MAR-2007 16:50:27.07
Attr StructName = "Opc_UnsignedInt"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:27.07
Body SysBody 01-MAR-2007 16:56:25.07
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
EndObject
Object Template Opc_UnsignedInt 2150334464 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_UnsignedShort $ClassDef 9 01-MAR-2007 16:56:40.00
Body SysBody 01-MAR-2007 16:50:25.68
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:25.68
Body SysBody 01-MAR-2007 16:50:25.68
Attr StructName = "Opc_UnsignedShort"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:25.68
Body SysBody 01-MAR-2007 16:56:51.26
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$UInt16"
EndBody
EndObject
EndObject
Object Template Opc_UnsignedShort 2150072320 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_UnsignedByte $ClassDef 8 01-MAR-2007 16:57:06.57
Body SysBody 01-MAR-2007 16:50:25.44
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:25.44
Body SysBody 01-MAR-2007 16:50:25.44
Attr StructName = "Opc_UnsignedByte"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:25.44
Body SysBody 01-MAR-2007 16:57:15.03
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$UInt8"
EndBody
EndObject
EndObject
Object Template Opc_UnsignedByte 2149810176 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Base64Binary $ClassDef 20 01-MAR-2007 17:01:30.50
Body SysBody 01-MAR-2007 17:01:17.11
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 17:01:17.11
Body SysBody 01-MAR-2007 17:01:17.11
Attr StructName = "Opc_Base64Binary"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 17:01:17.11
Body SysBody 01-MAR-2007 17:01:47.78
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$UInt32"
EndBody
EndObject
EndObject
Object Template Opc_Base64Binary 2152955904 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_DateTime $ClassDef 7 01-MAR-2007 16:58:17.76
Body SysBody 01-MAR-2007 16:50:25.22
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:25.22
Body SysBody 01-MAR-2007 16:50:25.22
Attr StructName = "Opc_DateTime"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:25.22
Body SysBody 01-MAR-2007 16:58:37.27
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Time"
EndBody
EndObject
EndObject
Object Template Opc_DateTime 2149548032 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Time $ClassDef 6 01-MAR-2007 16:58:53.13
Body SysBody 01-MAR-2007 16:50:25.00
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:25.00
Body SysBody 01-MAR-2007 16:50:25.00
Attr StructName = "Opc_Time"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:25.00
Body SysBody 01-MAR-2007 16:59:03.22
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Time"
EndBody
EndObject
EndObject
Object Template Opc_Time 2149285888 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Date $ClassDef 5 01-MAR-2007 16:59:12.70
Body SysBody 01-MAR-2007 16:50:24.78
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:24.78
Body SysBody 01-MAR-2007 16:50:24.78
Attr StructName = "Opc_Date"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:24.78
Body SysBody 01-MAR-2007 16:59:19.57
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$Time"
EndBody
EndObject
EndObject
Object Template Opc_Date 2149023744 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_Duration $ClassDef 4 01-MAR-2007 16:59:30.41
Body SysBody 01-MAR-2007 16:50:24.50
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:24.50
Body SysBody 01-MAR-2007 16:50:24.50
Attr StructName = "Opc_Duration"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:24.50
Body SysBody 01-MAR-2007 16:59:42.13
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$DeltaTime"
EndBody
EndObject
EndObject
Object Template Opc_Duration 2148761600 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_QName $ClassDef 3 01-MAR-2007 17:00:42.44
Body SysBody 01-MAR-2007 16:50:22.30
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 16:50:22.30
Body SysBody 01-MAR-2007 16:50:22.30
Attr StructName = "Opc_QName"
Attr NextAix = "_X3"
EndBody
Object Value $Attribute 2 01-MAR-2007 16:50:22.30
Body SysBody 01-MAR-2007 17:00:54.92
Attr PgmName = "Value"
Attr TypeRef = "pwrs:Type-$String256"
EndBody
EndObject
EndObject
Object Template Opc_QName 2148499456 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
Object Opc_ServerConfig $ClassDef 21 01-MAR-2007 17:02:45.29
Body SysBody 01-MAR-2007 17:02:25.32
Attr Editor = 0
Attr Method = 0
Attr Flags = 16
EndBody
Object RtBody $ObjBodyDef 1 01-MAR-2007 17:02:58.07
Body SysBody 01-MAR-2007 17:02:58.07
Attr StructName = "Opc_ServerConfig"
Attr NextAix = "_X2"
EndBody
Object Access $Attribute 1 01-MAR-2007 17:03:37.18
Body SysBody 01-MAR-2007 17:03:49.47
Attr PgmName = "Access"
Attr TypeRef = "pwrs:Type-$Mask"
EndBody
EndObject
EndObject
Object Template Opc_ServerConfig 2153218048 01-JAN-1970 01:00:00.00
Body RtBody 01-JAN-1970 01:00:00.00
EndBody
EndObject
EndObject
EndObject
EndVolume
include $(pwre_dir_symbols)
-include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/$(type_name)_generic.mk
ifeq ($($(type_name)_generic_mk),)
-include $(pwre_kroot)/tools/bld/src/$(os_name)/$(type_name)_generic.mk
endif
ifeq ($($(type_name)_generic_mk),)
include $(pwre_kroot)/tools/bld/src/$(type_name)_generic.mk
endif
-include ../../special.mk
-include ../special.mk
-include special.mk
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment