|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectohymosj.OhObject
ohymosj.OhPort
ohymosj.OhSenderPort
このクラスは、送信系端子を作成するための抽象クラスです。
送信系端子は送信機能を持った端子です。
この抽象クラス OhSenderPort から、
自分で持っているデータを送信する OhSendPort と
他の端子から得たデータを中継する OhRelayPort が派生します。
OhSenderPort には複数の送信先端子(データを受信する端子)を接続することができます。
いずれにしても、受信側からすれば、データを送信してくれる機能を持っているので、
その共通部分のインターフェースを OhSenderPort で定義しています。
OhSenderPort; Abstract class for creating sender ports.
By inheritance from this OhSenderPort class, the classes OhSendPort and OhRelayPort are created.
フィールドの概要 | |
protected OhLinkedList |
_bufferList
|
protected java.lang.String |
_commentString
|
protected int |
_numberOfReceivers
|
protected java.lang.Object[] |
_receiverArray
|
クラス ohymosj.OhObject から継承したフィールド |
_className, _objectName, _objectNumber, _owner, NEWLINE |
コンストラクタの概要 | |
OhSenderPort()
|
|
OhSenderPort(java.lang.String aPortName,
int aPortNum)
|
メソッドの概要 | |
boolean |
areYouReady()
|
abstract boolean |
canYouGetData(OhTimePoint aTFrom,
OhTimePoint aTTo)
|
boolean |
canYouSwitch()
|
abstract java.lang.String |
dataType()
|
java.lang.String |
getCommentString()
|
abstract boolean |
getDataPack(java.lang.Object[] aFormer,
OhTimePoint _dataTime,
java.lang.Object[] aLater,
char aMode)
|
abstract void |
getDataPackArray(OhArrayList[] aDpArray,
int[] aNumOfDp)
|
abstract java.util.Vector |
getDctVec()
|
OhTimePoint |
getNecessaryTimeFrom()
|
OhTimePoint |
getNecessaryTimeTo()
|
boolean |
init(java.lang.String aPortName,
int aPortNum)
|
void |
printConnection(java.io.PrintWriter aPw,
java.lang.String aHead)
|
abstract void |
reduceDataPackStock()
|
boolean |
registerReceiver(java.lang.Object aReceiver)
|
void |
setCommentString(java.lang.String aCmt)
|
abstract void |
setDataPackArray()
|
クラス ohymosj.OhPort から継承したメソッド |
calReq, canYouGetData, cPrint, create, getDataPack, getDataPack, getNewestDataTime, getNumberOfDataPacks, getOldestDataTime, setSender |
クラス ohymosj.OhObject から継承したメソッド |
getAbsName, getClassName, getObjectName, getObjectNumber, getOwner, getTopOwner, objCompare, objCompare, objCompare, oPrint, setOwner |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
protected OhLinkedList _bufferList
The list for work.
protected java.lang.Object[] _receiverArray
Array for memorizing the ports of sending place.
protected int _numberOfReceivers
The number of elements of "_receiverArray".
protected java.lang.String _commentString
Comment about data.
コンストラクタの詳細 |
public OhSenderPort()
public OhSenderPort(java.lang.String aPortName, int aPortNum) throws OhError
aPortName
- a String
valueaPortNum
- an int
value
OhError
- if an error occurs
メソッドの詳細 |
public abstract java.lang.String dataType()
基底クラス OhPort の抽象メソッドです。 このクラス OhSenderPort でも抽象メソッドとしておきます。
Returns the datapack type string of this port. Because this is an abstract method, it should be implemented in derived classes.
OhPort
内の dataType
String
valuepublic abstract java.util.Vector getDctVec()
Abstract method. It should return the data connection vector.
Vector
valuepublic abstract void setDataPackArray()
基底クラス OhPort の抽象メソッドです。 このクラス OhSenderPort でも抽象メソッドとしておきます。
実際には、 _dataPackArray の要素数を _numberOfDataPacks に設定するだけです。
Abstract method. Makes data pack array.
OhPort
内の setDataPackArray
public abstract boolean canYouGetData(OhTimePoint aTFrom, OhTimePoint aTTo)
基底クラス OhPort の抽象メソッドです。 このクラス OhSenderPort でも抽象メソッドとしておきます。
canYouGetData(OhTimePoint aTFrom, OhTimePoint aTTo) は, aTFrom 以前から、 aTTo 以降までのデータパックをこの端子から取得可能ならば、 true を返し、不可能なら false を返すように各派生クラスで定義します.
ARGUMENT: ・aTFrom aTFrom 以前からのデータパックが取得可能であることを確認する. ・aTTo aTTo 以降までのデータパックが取得可能であることを確認する. RETURN: ・YES aTFrom 以前から aTTo 以降までのデータパックを取得可能な場合. t におけるデータが取得可能な場合. ・NO aTFrom 以前から aTTo 以降までのデータパックを取得不可能な場合.
Abstract method. Checks the data time recorded.
OhPort
内の canYouGetData
aTFrom
- an OhTimePoint
valueaTTo
- an OhTimePoint
value
boolean
valuepublic abstract void getDataPackArray(OhArrayList[] aDpArray, int[] aNumOfDp)
基底クラス OhPort の抽象メソッドです。 このクラス OhSenderPort でも抽象メソッドとしておきます。
派生クラスにおいて、データパック配列を取得するメソッドを定義します。 aDpArray にはデータパック配列を格納し、aNumOfDp には、aDpArray の要素数を格納します。
Abstract method. Sends the datapack array.
OhPort
内の getDataPackArray
aDpArray
- an OhArrayList
valueaNumOfDp
- an int[]
valuepublic abstract boolean getDataPack(java.lang.Object[] aFormer, OhTimePoint _dataTime, java.lang.Object[] aLater, char aMode)
基底クラス OhPort の抽象メソッドです。 このクラス OhSenderPort でも抽象メソッドとしておきます。
派生クラスにおいて、時刻を指定してデータパックを取得する関数を定義します。
aFormer には、データ記録時刻が _dataTime 以前で _dataTime に最も近い収録データパックを取得、格納します。
aLater には、データ記録時刻が _dataTime 以降で _dataTime に最も近い収録データパックを取得、格納します。
aFlag は取得のモードを選択するためのオプションで、下記の通りです。
・"b" aFormer, aLater の両方を必ず取得する。 取得できない場合は、両方とも null に設定する。 ・"f" aLater を取得できなくても、aFormer のみ取得する。 aLater を取得できない場合、null に設定する。 ・"l" aFormer を取得できなくても、aLater のみ取得する。 aFormer を取得できない場合、null に設定する。 ・その他 aFormer, aLater のすくなくとも一方を取得する。 取得できないものは null に設定する。aFlag のデフォルト値は、 "b" です。
また、 引数に aLater を渡さない場合は、 aFlag を f として aFormer のみ取得し、 引数に aFormer を渡さない場合は、 aFlag を l として aLater のみ取得します。
データ記録時刻が丁度 _dataTime であるデータパックが収録されている場合は、 aFormer, aLater ともそれを格納します。
条件を満たすデータパックを取得できない場合、aFormer, aLater は null に設定されます。
データを取得できた場合は、true を返します。
Abstract method. Sends the datapacks.
OhPort
内の getDataPack
aFormer
- an Object[]
value_dataTime
- an OhTimePoint
valueaLater
- an Object[]
valueaMode
- a char
value
boolean
valuepublic abstract void reduceDataPackStock()
基底クラス OhPort の抽象メソッドです。 このクラス OhSenderPort でも抽象メソッドとしておきます。
この端子で取得可能なデータパックのうち、 getNecessaryTimeFrom() よりデータ記録時刻が早いデータパックを消去するよう、 派生クラスで定義します。
Abstract method. Deletion of an unnecessary datapacks.
OhPort
内の reduceDataPackStock
public boolean init(java.lang.String aPortName, int aPortNum) throws OhError
Initialization.
OhPort
内の init
aPortName
- a String
valueaPortNum
- an int
value
boolean
value
OhError
- if an error occurspublic boolean registerReceiver(java.lang.Object aReceiver) throws OhError
基底クラス OhPort のメソッドをオーバーライドしています。
このメソッドは、端子間の接続の際に呼び出されます。
OhLinkedList.add(Object) により _bufferList に 引数である aReceiver を登録し、 true を返します。
ただし、次の場合はエラーメッセージを表示して false を返します。
Register a receiver. This function is an abstract method in the base class OhPort. Implemented in this class OhSenerPort.
OhPort
内の registerReceiver
aReceiver
- an Object
value
boolean
value
OhError
- if an error occurspublic boolean canYouSwitch() throws OhError
基底クラス OhPort の抽象メソッドを実装しています。
_bufferList に登録されている送信先受信端子を _receiverArray に配列化し、 _receiverArray の要素数を _numberOfReceivers に設定します。
_receiverArray が作成済みの場合は、エラーメッセージを表示して false を返します。
接続作業の終了後、_owner の計算開始前に必ず用いて下さい。 ただし、このメソッドの実行後は接続関係を変更できません。
_receiverArray が正常に作成された場合は true を返します。
Makes "_receiverArray" from the port of the sending place registered into "_bufferList". And, the number of elements of "_receiverArray" is set as "_numberOfReceivers".
OhPort
内の canYouSwitch
boolean
value
OhError
- if an error occurspublic boolean areYouReady()
計算作業前の確認を行ないます。
基底クラス OhPort の抽象メソッドを実装しています。
データパックを送信可能な状態であることを確認します。 _numberOfReceivers が 0 以上ならば _receiverArray が設定済みで、 送信先端子にデータパックを送信することができます。
[RETURN] ・true --> _receiverArray が設定済みの場合。 ・false -> _receiverArray が未設定の場合。
Check that it is in the state where data packs can be transmitted. If _numberOfReceivers >= 0, _receiverArray is setting ending, and you can send data packs to a send port.
OhPort
内の areYouReady
boolean
valuepublic void setCommentString(java.lang.String aCmt)
Copy the string "cmt" to "_commentString" which is a instance variable of this class.
aCmt
- a String
valuepublic java.lang.String getCommentString()
Returns "_commentString".
String
valuepublic OhTimePoint getNecessaryTimeFrom()
基底クラス OhPort の抽象メソッドを実装しています。
このメソッドでは、 _owner の OhElement.getNecessaryTimeFrom()、 送信先端子の OhPort.getNecessaryTimeFrom() のうち、 最小のものを返します。 この時、_owner が null なら OhTimePoint.OhTimePointMin を返します。
The minimum thing is returned among OhElement.getNecessaryTimeFrom() of the "_owner" and OhPort.getNecessaryTimeFrom() of the port of a sending place. If "_owner" is "null", Returns OhTimePoint.OhTimePointMin.
OhPort
内の getNecessaryTimeFrom
OhTimePoint
valuepublic OhTimePoint getNecessaryTimeTo()
基底クラス OhPort の抽象メソッドを実装しています。
このメソッドでは、 _owner の OhElement.getNecessaryTimeTo()、 送信先端子の OhPort.getNecessaryTimeTo() のうち、 最大のものを返します。 この時、_owner が null なら OhTimePoint.OhTimePointMax を返します。
The maxmum thing is returned among OhElement.getNecessaryTimeTo() of the "_owner" and OhPort.getNecessaryTimeTo() of the port of a sending place. If "_owner" is "null", Returns OhTimePoint.OhTimePointMax.
OhPort
内の getNecessaryTimeTo
OhTimePoint
valuepublic void printConnection(java.io.PrintWriter aPw, java.lang.String aHead)
この端子の接続関係に関する情報を第一引数であるストリーム aPw に出力します。
[in] aPw -- 出力先のストリーム。 [in] head - 出力時のヘッダ。デフォルト値は4カラム。
The information about the connection relation of this port is outputted to "aPw".
OhPort
内の printConnection
aPw
- a PrintWriter
valueaHead
- a String
value
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |