www.pudn.com > AirAPIF.rar > air_table.h
/* Copyright (C) FUJITSU LIMITED 1999-2001 */
/* $Id: air_table.h,v 1.18 2001/03/05 16:00:04 JST age Exp $ */
/* This header file is protected for developers */
/*
* $Log: air_table.h,v $
* Revision 1.18 2001/03/05 16:00:04 JST age
* SymbolPort 追加、AirDBSymbol に attribute 追加
*
* Revision 1.17 2001/02/13 16:34:37 JST age
* 古川 AirDBArchitecture に techseries の追加
*
* Revision 1.16 2001/01/30 10:31:29 JST age
* 古川 AirDBPage に lastblocksymbol の追加
*
* Revision 1.15 2000/08/11 11:55:08 JST age
* 古川 AirDBNetInfo で 8 byte 境界合わせのために、順序を入れ替
*
* Revision 1.14 2000/07/14 15:32:45 JST age
* 古川 AirDBBlock, AirDBComponent, AirDBPortInfo,
* AirDBComponentPortInfo, AirDBNetInfo に attribute 追加
*
* Revision 1.13 2000/06/28 10:34:46 JST age
* 古川 AirDBFigure に rotate の追加
*
* Revision 1.12 2000/05/22 18:53:32 JST age
* 古川 AirDBArchitecture に h_ioblock の追加
*
* Revision 1.11 2000/05/15 14:26:08 JST age
* 古川 8 byte 境界合わせのために、padding を挿入
* AirDBPortInfo の tosamenetinfo_pref を tosamenetinfo_prev に変更
*
* Revision 1.10 2000/04/21 11:30:45 JST age
* 古川 AirDBComponent から toblockinfo 削除
* AirDBComponentInfo に tocomponent 追加
*
* Revision 1.9 2000/04/07 17:09:30 JST age
* 古川 AirDBPage から date 削除、firstdate, currentdate 追加
*
* Revision 1.8 2000/03/28 11:27:00 JST age
* 古川 AirDBBlockInfo の io_f を型変更
* AirDBStack の io_f を型変更
*
* Revision 1.7 2000/03/22 16:59:45 JST age
* 古川 AirDBBlockInfo に io_f の追加
* AirDBStack に io_f の追加
* AirDBPortInfo に tocomponentportinfo の追加
* AirDBNet で tovector の削除
* AirDBNetInfo に tovector の追加
* AirDBGroup に togroupinfo_hier の追加
* AirDBGroupInfo で togroupinfo の双方向化、togroup_hier,
* togroupinfo_next_hier, togroupinfo_prev_hier の追加
*
* Revision 1.6 2000/03/17 16:56:19 JST age
* AirDBPageComment で tonext を unusedlink に変更
* AirDBBlock に toprev の追加
* AirDBBlockInfo で tosamecomponent を双方向化
* AirDBBlockSymbol で tosymbol の削除、tocomponentinfo の追加
* AirDBStack で tonext, toprev の削除
* AirDBSymbol に toprev の追加
* AirDBNetInfo で tonetinfo_multi を双方向化、tonext, toprev の削除
* AirDBFigure で tonext を unusedlink に変更
*
* Revision 1.5 2000/03/13 17:19:36 JST age
* ・AirDBSymbol に tonext の追加
* ・AirDBPageComment::tonext, AirDBFigure::tonext の型変更
*
* Revision 1.4 2000/03/13 16:06:05 JST age
* ・AirDBArchitecture から h_blocksymbol, h_stack, h_netinfo の削除
*
* Revision 1.3 2000/03/13 15:52:33 JST age
* APDB フォーマット の改版
* ・AirDBArchitecture に h_block, h_symbol, h_group の追加
* ・AirDBPageComment の変更(stub->comment に変更、tonext の追加)
* ・AirDBBlock に tonext の追加
* ・AirDBFigure に tonext の追加
*
* Revision 1.2 2000/03/03 17:09:46 JST age
* *** empty log message ***
*
* $Com: 古川 SymbolPort 追加、AirDBSymbol に attribute 追加
*/
/*
* air_table.h: 2001/02/21 :: APDB フォーマット 0.18 版
*/
#ifndef AIR_TABLE_H
#define AIR_TABLE_H
/* 型定義 */
#include "air_tabledef.h"
/* 現在の DBフォーマットの版数 */
#define CURRENT_FORMATREVISION "0.18"
/* 管理 */
struct AirDBEnv {
/* 各種情報 */
AirDBInt n_arch; /* ARCH 管理 の数 */
};
/* ARCH 管理 */
struct AirDBArchitecture {
/* 各種情報 */
AirDBString formatrevision; /* DBフォーマットの版数 */
AirDBInt dbversion; /* データベース版数 */
AirDBString firstdate; /* 初版日時 */
AirDBString currentdate; /* 最新版日時 */
AirDBString techcode; /* テクノロジコード */
AirDBString techseries; /* テクノロジシリーズ */
AirDBString userversion; /* ユーザ管理版数 */
AirDBString designer; /* 設計者名 */
AirDBString division; /* 部署名 */
AirDBString approval; /* 承認者名 */
AirDBString approvaldate; /* 承認日付 */
AirDBString comment; /* コメント */
AirDBString title; /* タイトル */
AirDBString architecturename; /* アーキテクチャ名 */
AirDBBit physical_name_f; /* 名前は半導体名 */
AirDBBit sixtyfour_f; /* 64bit モード */
/* リンク情報 */
AirDBPageRef n_page; /* ページ の使用数 */
AirDBPageRef m_page; /* ページ の最大数 */
AirDBPageFigureRef n_pagefigure; /* ページ図面 の使用数 */
AirDBPageFigureRef m_pagefigure; /* ページ図面 の最大数 */
AirDBPageCommentRef n_pagecomment; /* ページコメント の使用数 */
AirDBPageCommentRef m_pagecomment; /* ページコメント の最大数 */
AirDBBlockRef n_block; /* ブロック の使用数 */
AirDBBlockRef m_block; /* ブロック の最大数 */
AirDBBlockRef n_ioblock; /* IOブロック の使用数 */
AirDBBlockRef m_ioblock; /* IOブロック の最大数 */
AirDBBlockInfoRef n_blockinfo; /* ブロック情報 の使用数 */
AirDBBlockInfoRef m_blockinfo; /* ブロック情報 の最大数 */
AirDBBlockSymbolRef n_blocksymbol; /* ブロックシンボル の使用数 */
AirDBBlockSymbolRef m_blocksymbol; /* ブロックシンボル の最大数 */
AirDBStackRef n_stack; /* スタック の使用数 */
AirDBStackRef m_stack; /* スタック の最大数 */
AirDBComponentRef n_component; /* コンポーネント の使用数 */
AirDBComponentRef m_component; /* コンポーネント の最大数 */
AirDBComponentInfoRef n_componentinfo; /* コンポーネント情報 の使用数 */
AirDBComponentInfoRef m_componentinfo; /* コンポーネント情報 の最大数 */
AirDBSymbolRef n_symbol; /* シンボル の使用数 */
AirDBSymbolRef m_symbol; /* シンボル の最大数 */
AirDBPortRef n_port; /* ポート の使用数 */
AirDBPortRef m_port; /* ポート の最大数 */
AirDBPortInfoRef n_portinfo; /* ポートベクタ の使用数 */
AirDBPortInfoRef m_portinfo; /* ポートベクタ の最大数 */
AirDBComponentPortRef n_componentport; /* コンポーネントポート の使用数 */
AirDBComponentPortRef m_componentport; /* コンポーネントポート の最大数 */
AirDBComponentPortInfoRef n_componentportinfo; /* コンポーネントポートベクタ の使用数 */
AirDBComponentPortInfoRef m_componentportinfo; /* コンポーネントポートベクタ の最大数 */
AirDBSymbolPortRef n_symbolport; /* シンボルポート の使用数 */
AirDBSymbolPortRef m_symbolport; /* シンボルポート の最大数 */
AirDBNetRef n_net; /* ネット の使用数 */
AirDBNetRef m_net; /* ネット の最大数 */
AirDBNetInfoRef n_netinfo; /* ネット情報 の使用数 */
AirDBNetInfoRef m_netinfo; /* ネット情報 の最大数 */
AirDBVectorRef n_vector; /* バウンダリ の使用数 */
AirDBVectorRef m_vector; /* バウンダリ の最大数 */
AirDBVectorInfoRef n_vectorinfo; /* バウンダリ情報 の使用数 */
AirDBVectorInfoRef m_vectorinfo; /* バウンダリ情報 の最大数 */
AirDBGroupRef n_group; /* グループ の使用数 */
AirDBGroupRef m_group; /* グループ の最大数 */
AirDBGroupInfoRef n_groupinfo; /* グループ情報 の使用数 */
AirDBGroupInfoRef m_groupinfo; /* グループ情報 の最大数 */
AirDBFigureRef n_figure; /* 図面 の使用数 */
AirDBFigureRef m_figure; /* 図面 の最大数 */
AirDBNameRef n_name; /* 名前 の使用数 */
AirDBNameRef m_name; /* 名前 の最大数 */
AirDBTextRef n_text; /* テキスト の使用バイト数 */
AirDBTextRef m_text; /* テキスト の最大バイト数 */
AirDBHashRef n_hash; /* ハッシュ の使用配列数 */
AirDBHashRef m_hash; /* ハッシュ の最大配列数 */
AirDBApplDefRef n_appldef; /* アプリケーション定義 の使用バイト数 */
AirDBApplDefRef m_appldef; /* アプリケーション定義 の最大バイト数 */
AirDBInt h_page; /* ページ の使用先頭 */
AirDBInt h_block; /* ブロック の使用先頭 */
AirDBInt h_ioblock; /* IOブロック の使用先頭 */
AirDBInt h_component; /* コンポーネント の使用先頭 */
AirDBInt h_symbol; /* シンボル の使用先頭 */
AirDBInt h_net; /* ネット の使用先頭 */
AirDBInt h_group; /* グループ の使用先頭 */
/* 他 */
AirDBInt relation; /* 関連づけ */
AirDBApplDefRef appls; /* アプリケーション定義 */
AirDBBit textinfo_f; /* テキスト情報がある時 */
AirDBInt exponent; /* mm の指数 */
AirDBLetter caps; /* 大文字小文字 */
AirDBByteOrder byteorder; /* バイトオーダー(エンディアン) */
AirDBBit master_arch_f; /* 代表アーキテクチャフラグ */
};
/*==========================================================================*/
/* ページ */
struct AirDBPage {
/* 各種情報 */
AirDBInt serialnumber; /* 通しページ追番 */
AirDBNameRef pagename; /* ページ名 */
AirDBNameRef firstdate; /* 初版日時 */
AirDBNameRef currentdate; /* 最新版日時 */
AirDBNameRef comment; /* コメント(ページタイトル) */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBPageFigureRef topagefigure; /* ページ図面へのリンク */
AirDBBlockSymbolRef toblocksymbol; /* 同一ページ内ブロックシンボル */
AirDBPageRef tonext; /* 作成順リンク(次) */
AirDBPageRef toprev; /* 作成順リンク(前) */
AirDBGroupInfoRef tosameobj; /* 同一構成要素間グループ情報リンク */
AirDBBlockSymbolRef lastblocksymbol; /* 同一ページ内ブロックシンボル末尾 */
/* 他 */
AirDBInt relation; /* 関連づけ */
AirDBInt dummy3; /* dummy */
AirDBApplDefRef appls; /* アプリケーション定義 */
};
/* ページ図面 */
struct AirDBPageFigure {
AirDBSize pagesize; /* ページサイズ */
AirDBColor pagecolor; /* ページカラー */
AirDBColor pagegroupcolor; /* ページグループカラー */
AirDBNameRef pagegroupname; /* ページグループ名 */
AirDBNameRef pageindex_x; /* ページインデックス x */
AirDBNameRef pageindex_y; /* ページインデックス y */
/* リンク情報 */
AirDBPageCommentRef pagecomment; /* ページコメントへのリンク */
AirDBPageRef backtopage; /* ページへの戻りリンク */
AirDBPageFigureRef unusedlink; /* 空きリンク */
AirDBInt dummy1; /* dummy */
};
/* ページコメント */
struct AirDBPageComment {
/* 未定義 */
/* 文字、線、矢印等が書けるようにする */
AirDBString comment; /* コメント */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBPageCommentRef unusedlink; /* 空きリンク */
AirDBInt dummy2; /* dummy */
};
/* ブロック */
struct AirDBBlock {
/* 各種情報 */
AirDBNameRef blockname; /* ブロック名 */
AirDBNameRef comment; /* コメント */
AirDBNameRef attribute; /* 属性 */
AirDBBit stack_f; /* スタックの場合 */
AirDBBit specialio_f; /* 特殊IO である */
AirDBBit dummy1; /* dummy */
AirDBBit dummy2; /* dummy */
/* リンク情報 */
AirDBStackRef tostack; /* スタックリンク */
AirDBBlockInfoRef toblockinfo; /* ブロック情報へのリンク */
AirDBBlockRef tonext; /* 次リンク */
AirDBBlockRef toprev; /* 前リンク */
};
/* ブロック情報 */
struct AirDBBlockInfo {
/* 各種情報 */
AirDBInt libraryversion; /* ライブラリ版数 */
AirDBInt n_stack; /* スタックの個数 */
AirDBBit io_f; /* IOブロックフラグ */
AirDBBit dummy1; /* dummy */
AirDBBit dummy2; /* dummy */
AirDBBit dummy3; /* dummy */
AirDBInt dummy4; /* dummy */
/* リンク情報 */
AirDBBlockInfoRef tosamecomponent_next; /* 同一コンポーネント間リンク(次) */
AirDBBlockInfoRef tosamecomponent_prev; /* 同一コンポーネント間リンク(前) */
AirDBComponentRef tocomponent; /* コンポーネントへのリンク */
AirDBBlockRef toblock; /* ブロックへのリンク */
AirDBBlockInfoRef tosamestack; /* ブロック情報間リンク */
AirDBBlockSymbolRef toblocksymbol; /* ブロックシンボルへのリンク */
};
/* ブロックシンボル */
struct AirDBBlockSymbol {
/* リンク情報 */
AirDBBlockInfoRef toblockinfo; /* ブロック情報へのリンク */
AirDBBlockSymbolRef tonext; /* 作成順リンク(次) */
AirDBBlockSymbolRef toprev; /* 作成順リンク(前) */
AirDBComponentInfoRef tocomponentinfo; /* コンポーネント情報へのリンク */
AirDBPageRef topage; /* ページへのリンク */
AirDBFigureRef tofigure; /* 図面へのリンク */
AirDBBlockSymbolRef toblocksymbol; /* 複数シンボル用リンク */
AirDBInt dummy1; /* dummy */
};
/* スタック */
struct AirDBStack {
/* 各種情報 */
AirDBNameRef stackname; /* スタック名 */
AirDBNameRef attribute; /* 属性 */
AirDBNameRef variety; /* 形状識別名 */
AirDBBit io_f; /* IOブロックフラグ */
AirDBBit dummy1; /* dummy */
AirDBBit dummy2; /* dummy */
AirDBBit dummy3; /* dummy */
/* リンク情報 */
AirDBStackRef tostack_next; /* スタック間リンク(次) */
AirDBStackRef tostack_prev; /* スタック間リンク(前) */
AirDBBlockRef toblock; /* ブロックへのリンク */
AirDBBlockInfoRef toblockinfo; /* ブロック情報へのリンク */
AirDBPortRef toport; /* ポートへのリンク */
AirDBGroupInfoRef tosameobj; /* 同一構成要素間グループ情報リンク */
AirDBInt dummy4; /* dummy */
/* 他 */
AirDBInt relation; /* 関連づけ */
AirDBInt dummy5; /* dummy */
AirDBApplDefRef appls; /* アプリケーション定義 */
};
/* コンポーネント */
struct AirDBComponent {
/* 各種情報 */
AirDBLID lid; /* 論理識別ID */
AirDBNameRef comment; /* コメント */
AirDBNameRef componentname; /* コンポーネント名 */
AirDBNameRef reference; /* 参照したライブラリの場所 */
AirDBNameRef attribute; /* 属性 */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBBlockInfoRef tosamecomponent; /* 同一コンポーネント間リンク */
AirDBComponentPortRef tocomponentport; /* 同一コンポーネントポート間リンク */
AirDBComponentRef tonext; /* 作成順リンク(次) */
AirDBComponentRef toprev; /* 作成順リンク(前) */
AirDBComponentInfoRef tocomponentinfo; /* コンポーネント情報へのリンク */
AirDBFigureRef tofigure; /* 図面へのリンク */
};
/* コンポーネント情報 */
struct AirDBComponentInfo {
/* リンク情報 */
AirDBSymbolRef tosymbol; /* シンボルへのリンク */
AirDBComponentInfoRef tocomponentinfo; /* 複数シンボル用リンク */
AirDBComponentRef tocomponent; /* コンポーネントへのリンク */
AirDBInt dummy1; /* dummy */
};
/* シンボル */
struct AirDBSymbol {
/* 各種情報 */
AirDBNameRef symbolname; /* シンボル名 */
AirDBNameRef variety; /* 形状識別名 */
AirDBNameRef attribute; /* 属性 */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBSymbolRef duallink; /* DUAL間リンク */
AirDBFigureRef tofigure; /* 図面へのリンク */
AirDBSymbolRef tonext; /* 作成順リンク(次) */
AirDBSymbolRef toprev; /* 作成順リンク(前) */
AirDBSymbolPortRef toport; /* シンボルポートへのリンク */
AirDBInt dummy2; /* dummy */
};
/* ポート */
struct AirDBPort {
/* 各種情報 */
AirDBNameRef packagepinname; /* 実装ピン名 */
AirDBNameRef attribute; /* 論理属性 */
/* リンク情報 */
AirDBFigureRef tofigure; /* 図面へのリンク */
AirDBComponentPortRef tocomponentport; /* コンポーネントポートへのリンク */
AirDBPortRef toport_next; /* 同一ブロックポート間リンク(次) */
AirDBPortRef toport_prev; /* 同一ブロックポート間リンク(前) */
AirDBStackRef tostack; /* スタックへのリンク */
AirDBInt dummy1; /* dummy */
AirDBPortInfoRef toportinfo; /* ポートベクタへのリンク */
};
/* ポートベクタ */
struct AirDBPortInfo {
/* 各種情報 */
AirDBIO io; /* 入出力情報 */
AirDBNameRef attribute; /* 属性 */
/* リンク情報 */
AirDBPortRef toport; /* ポートへのリンク */
AirDBPortInfoRef toportinfo_next; /* 同一ベクタ内リンク(次) */
AirDBPortInfoRef toportinfo_prev; /* 同一ベクタ内リンク(前) */
AirDBPortInfoRef tosamenetinfo_next; /* 同一ネット情報内リンク(次) */
AirDBPortInfoRef tosamenetinfo_prev; /* 同一ネット情報内リンク(前) */
AirDBNetInfoRef tonetinfo; /* ネット情報へのリンク */
AirDBGroupInfoRef tosameobj; /* 同一構成要素間グループ情報リンク */
AirDBComponentPortInfoRef tocomponentportinfo; /* コンポーネントポートベクタへのリンク */
AirDBInt dummy2; /* dummy */
/* 他 */
AirDBInt relation; /* 関連づけ */
AirDBInt dummy3; /* dummy */
AirDBApplDefRef appls; /* アプリケーション定義 */
};
/* コンポーネントポート */
struct AirDBComponentPort {
/* 各種情報 */
AirDBNameRef portname; /* 論理ピン名 */
AirDBNameRef attribute; /* 属性 */
AirDBBit multi_f; /* マルチの場合 */
AirDBBit dummy1; /* dummy */
AirDBBit dummy2; /* dummy */
AirDBBit dummy3; /* dummy */
AirDBInt dummy4; /* dummy */
/* リンク情報 */
AirDBComponentRef tocomponent; /* コンポーネントへのリンク */
AirDBComponentPortRef tocomponentport_next; /* 同一コンポーネントポート間リンク(次) */
AirDBComponentPortRef tocomponentport_prev; /* 同一コンポーネントポート間リンク(前) */
AirDBFigureRef tofigure; /* 図面へのリンク */
AirDBComponentPortInfoRef tocomponentportinfo; /* コンポーネントポートベクタへのリンク */
AirDBVectorRef tovector; /* バウンダリ管理へのリンク */
};
/* コンポーネントポートベクタ */
struct AirDBComponentPortInfo {
/* 各種情報 */
AirDBIO io; /* 入出力情報 */
AirDBNameRef attribute; /* 属性 */
/* リンク情報 */
AirDBComponentPortRef tocomponentport; /* コンポーネントポートへのリンク */
AirDBComponentPortInfoRef tocomponentportinfo_next; /* ベクタ間リンク(次) */
AirDBComponentPortInfoRef tocomponentportinfo_prev; /* ベクタ間リンク(前) */
AirDBVectorInfoRef tovectorinfo; /* バウンダリへのリンク */
};
/* シンボルポート */
struct AirDBSymbolPort {
/* 各種情報 */
AirDBNameRef portname; /* シンボルポート名 */
AirDBDirection direction; /* 方向 */
/* リンク情報 */
AirDBFigureRef tofigure; /* 図面へのリンク */
AirDBSymbolPortRef tonext; /* 同一シンボルポート間リンク(次) */
AirDBSymbolPortRef toprev; /* 同一シンボルポート間リンク(前) */
AirDBSymbolRef tosymbol; /* シンボルへのリンク */
};
/* ネット */
struct AirDBNet {
/* 各種情報 */
AirDBNameRef attribute; /* 属性 */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBNetInfoRef tonetinfo; /* ネット情報へのリンク */
AirDBNetRef tonext; /* 作成順リンク(次) */
AirDBNetRef toprev; /* 作成順リンク(前) */
AirDBInt dummy2; /* dummy */
};
/* ネット情報 */
struct AirDBNetInfo {
/* 各種情報 */
AirDBNameRef netname; /* ネット名 */
AirDBInt n_step; /* 段数 */
AirDBNameRef attribute; /* 属性 */
/* リンク情報 */
AirDBNetRef tonet; /* ネットへのリンク */
AirDBFigureRef tofigure; /* 図面へのリンク */
AirDBNetInfoRef tomulti_next; /* マルチネット間リンク(次) */
AirDBNetInfoRef tomulti_prev; /* マルチネット間リンク(前) */
AirDBVectorRef tovector; /* バウンダリ管理へのリンク */
AirDBVectorInfoRef tovectorinfo; /* バウンダリへのリンク */
AirDBNetInfoRef tonetinfo_next; /* 同一ネット情報間リンク(次) */
AirDBNetInfoRef tonetinfo_prev; /* 同一ネット情報間リンク(前) */
AirDBGroupInfoRef tosameobj; /* 同一構成要素間グループ情報リンク */
AirDBPortInfoRef toportinfo; /* ポートベクタへのリンク */
/* 他 */
AirDBInt relation; /* 関連づけ */
AirDBInt dummy2; /* dummy */
AirDBApplDefRef appls; /* アプリケーション定義 */
};
/* バウンダリ管理 */
struct AirDBVector {
/* 各種情報 */
AirDBKind kind; /* 種別 */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBVectorInfoRef tovectorinfo; /* バウンダリのスタート値 */
AirDBInt dummy2; /* dummy */
AirDBAnyRef backlink; /* 戻りリンク */
};
/* バウンダリ */
struct AirDBVectorInfo {
/* 各種情報 */
AirDBInt dimension; /* 次元 */
AirDBNameRef suffixname; /* サフィックス名 */
/* リンク情報 */
AirDBVectorInfoRef tovectorinfo_up; /* 上位へのリンク */
AirDBVectorInfoRef tovectorinfo_next; /* 同じ階層をつなぐリンク(次) */
AirDBVectorInfoRef tovectorinfo_prev; /* 同じ階層をつなぐリンク(前) */
AirDBVectorInfoRef tovectorinfo_down; /* 下位へのリンク */
AirDBVectorRef tovector; /* バウンダリ管理へのリンク */
AirDBInt dummy1; /* dummy */
AirDBAnyRef backlink; /* 戻りリンク */
};
/* グループ */
struct AirDBGroup {
/* 各種情報 */
AirDBNameRef groupname; /* グループ名 */
AirDBNameRef variety; /* 識別名 */
/* リンク情報 */
AirDBGroupInfoRef togroupinfo; /* グループ情報へのリンク */
AirDBNameRef togroupinfo_hier; /* togroupinfo のある階層名 */
AirDBGroupRef togroup_next; /* 同一階層グループ間リンク(次) */
AirDBGroupRef togroup_prev; /* 同一階層グループ間リンク(前) */
AirDBGroupRef togroup_down; /* 下位階層グループへのリンク */
AirDBGroupRef togroup_up; /* 上位階層グループへのリンク */
/* 他 */
AirDBInt relation; /* 関連づけ */
AirDBInt dummy1; /* dummy */
AirDBApplDefRef appls; /* アプリケーション定義 */
};
/* グループ情報 */
struct AirDBGroupInfo {
/* 各種情報 */
AirDBKind kind; /* 種別 */
AirDBInt dummy1; /* dummy */
/* リンク情報 */
AirDBAnyRef toobj; /* 構成要素へのリンク */
AirDBGroupRef togroup; /* グループへのリンク */
AirDBNameRef togroup_hier; /* togroup のある階層名 */
AirDBGroupInfoRef togroupinfo_next; /* 同一グループ間リンク(次) */
AirDBNameRef togroupinfo_next_hier; /* togroupinfo_next のある階層名 */
AirDBGroupInfoRef togroupinfo_prev; /* 同一グループ間リンク(前) */
AirDBNameRef togroupinfo_prev_hier; /* togroupinfo_next のある階層名 */
AirDBGroupInfoRef tosameobj; /* 同一構成要素間リンク */
AirDBInt dummy2; /* dummy */
};
/* 図面 */
struct AirDBFigure {
/* 各種情報 */
AirDBString coord; /* 位置情報 */
AirDBColor color; /* 色 */
AirDBString font; /* フォント */
AirDBString xysize; /* サイズ */
AirDBBit invisible_f; /* 非表示フラグ */
AirDBString width; /* 太さ */
AirDBString shape; /* 線の形状 */
AirDBString type; /* 端点のタイプ */
AirDBString linecoord; /* 線の座標 */
AirDBString rotate; /* 回転角 */
/* リンク情報 */
AirDBFigureRef unusedlink; /* 空きリンク */
};
/* 名前 */
struct AirDBName {
/* 各種情報 */
AirDBInt byteoftext; /* 文字列バイト数 */
AirDBKind kind; /* 種別 */
AirDBBit alias_f; /* aliasの場合 */
AirDBBit dummy_f; /* ダミーで付けられた場合 */
AirDBBit dummy1; /* dummy */
AirDBBit dummy2; /* dummy */
AirDBInt dummy3; /* dummy */
/* リンク情報 */
AirDBTextRef totext; /* テキストへのリンク */
AirDBInt dummy4; /* dummy */
AirDBAnyRef backlink; /* 戻りリンク */
AirDBNameRef hashlink; /* オーバーフローハッシュリンク */
AirDBNameRef sortlink_next; /* ソートリンク(次) */
AirDBNameRef sortlink_prev; /* ソートリンク(前) */
AirDBNameRef aliaslink; /* aliasリンク */
};
/* テキスト */
struct AirDBText;
/*
次のテキストへのリンク
文字列データのサイズ
フラグ(下位1bitが使用フラグ)
文字列データ(可変長) (使用フラグが0の時,戻りリンク)
自分自身へのリンク
*/
/* ハッシュ */
struct AirDBHash {
/* リンク情報 */
AirDBNameRef toname; /* 名前へのリンク */
AirDBInt dummy1; /* dummy */
};
/* アプリケーション定義領域 */
struct AirDBApplDef;
/*
ヘッダ (ヘッダを含めたトータルバイト数、有効バイト数、
テキストかバイナリかのフラグ、ID、同一構成要素間リンク)
本体
*/
/*==========================================================================*/
/* ARCH 管理実装 */
struct AirDBArchitecturePackage {
/* LSI 実装情報 */
AirDBString assigndate; /* I/Oピン割り付け日時 */
AirDBString packagename; /* M9IOASNで指示しているパッケージ名 */
/* プリント板実装情報 */
AirDBString packagedate; /* 実装日時 */
AirDBString boardcode; /* ボードコード */
};
/* ポート実装 */
struct AirDBPortPackage {
/* 各種情報 */
AirDBString attribute; /* 実装属性 */
};
/* スタック実装 */
struct AirDBStackPackage {
/* プリント板実装情報 */
AirDBString portion; /* ポーション名 */
AirDBString assignclass; /* 割り付け区分 */
};
/* ネット情報 */
struct AirDBNetInfoPackage {
/* プリント板実装情報 */
AirDBString wire; /* WIRE分解 */
AirDBString priorityorder; /* 配線優先順序 */
AirDBString signalcode; /* 信号分解コード */
AirDBString netexec; /* NET実行 */
};
/* C 用 */
#ifndef __cplusplus
typedef struct AirDBEnv AirDBEnv;
typedef struct AirDBArchitecture AirDBArchitecture;
typedef struct AirDBPage AirDBPage;
typedef struct AirDBPageFigure AirDBPageFigure;
typedef struct AirDBPageComment AirDBPageComment;
typedef struct AirDBBlock AirDBBlock;
typedef struct AirDBBlockInfo AirDBBlockInfo;
typedef struct AirDBBlockSymbol AirDBBlockSymbol;
typedef struct AirDBStack AirDBStack;
typedef struct AirDBComponent AirDBComponent;
typedef struct AirDBComponentInfo AirDBComponentInfo;
typedef struct AirDBSymbol AirDBSymbol;
typedef struct AirDBPort AirDBPort;
typedef struct AirDBPortInfo AirDBPortInfo;
typedef struct AirDBComponentPort AirDBComponentPort;
typedef struct AirDBComponentPortInfo AirDBComponentPortInfo;
typedef struct AirDBNet AirDBNet;
typedef struct AirDBNetInfo AirDBNetInfo;
typedef struct AirDBVector AirDBVector;
typedef struct AirDBVectorInfo AirDBVectorInfo;
typedef struct AirDBGroup AirDBGroup;
typedef struct AirDBGroupInfo AirDBGroupInfo;
typedef struct AirDBFigure AirDBFigure;
typedef struct AirDBName AirDBName;
typedef struct AirDBText AirDBText;
typedef struct AirDBHash AirDBHash;
typedef struct AirDBApplDef AirDBApplDef;
typedef struct AirDBArchitecturePackage AirDBArchitecturePackage;
typedef struct AirDBPortPackage AirDBPortPackage;
typedef struct AirDBStackPackage AirDBStackPackage;
typedef struct AirDBNetInfoPackage AirDBNetInfoPackage;
#endif
#endif /* AIR_TABLE_H */