public class PublisherPeriodic extends PublisherBase implements java.lang.Runnable, ObjectCreator<PublisherBase>, ObjectDestructor
一定時間おきにコンシューマの送出処理を呼び出すPublisherです。
Modifier and Type | Class and Description |
---|---|
protected static class |
PublisherPeriodic.Policy |
Constructor and Description |
---|
PublisherPeriodic()
Constructor
|
Modifier and Type | Method and Description |
---|---|
ReturnCode |
activate()
activate
|
protected ReturnCode |
convertReturn(ReturnCode status,
org.omg.CORBA.portable.OutputStream data)
convertReturn
|
protected boolean |
createTask(Properties prop)
Setting Task
|
PublisherBase |
creator_()
creator_
|
ReturnCode |
deactivate()
deactivate
|
void |
destructor_(java.lang.Object obj)
destructor_
|
java.lang.String |
getName()
getName
|
ReturnCode |
init(Properties prop)
Initialization
|
protected ReturnCode |
invokeListener(ReturnCode status,
org.omg.CORBA.portable.OutputStream data) |
boolean |
isActive()
write
|
protected void |
onBufferEmpty()
Connector listener functions
|
protected void |
onBufferFull(org.omg.CORBA.portable.OutputStream data) |
protected void |
onBufferRead(org.omg.CORBA.portable.OutputStream data) |
protected void |
onBufferWrite(org.omg.CORBA.portable.OutputStream data)
Connector data listener functions
|
protected void |
onBufferWriteTimeout(org.omg.CORBA.portable.OutputStream data) |
protected void |
onReceived(org.omg.CORBA.portable.OutputStream data) |
protected void |
onReceiverError(org.omg.CORBA.portable.OutputStream data) |
protected void |
onReceiverFull(org.omg.CORBA.portable.OutputStream data) |
protected void |
onReceiverTimeout(org.omg.CORBA.portable.OutputStream data) |
protected void |
onSend(org.omg.CORBA.portable.OutputStream data) |
protected void |
onSenderEmpty() |
protected void |
onSenderError() |
int |
open()
当該Publisherの駆動を開始します。
|
static void |
PublisherPeriodicInit()
PublisherPeriodicInit
|
protected ReturnCode |
pushAll()
pushAll
|
protected ReturnCode |
pushFifo()
pushFifo
|
protected ReturnCode |
pushNew()
pushNew
|
protected ReturnCode |
pushSkip()
pushSkip
|
void |
release()
駆動フラグがオフとなり、Publisherの駆動が停止します。
|
void |
run()
当該Publisherを駆動するスレッドコンテキストです。コンシューマの送出処理が呼び出されます。
|
ReturnCode |
setBuffer(BufferBase<org.omg.CORBA.portable.OutputStream> buffer)
setBuffer
|
ReturnCode |
setConsumer(InPortConsumer consumer)
setConsumer
|
ReturnCode |
setListener(ConnectorBase.ConnectorInfo info,
ConnectorListeners listeners)
Setting buffer pointer
|
protected void |
setPushPolicy(Properties prop)
Setting PushPolicy
|
int |
svc()
当該Publisherを駆動するスレッドコンテキストです。コンシューマの送出処理が呼び出されます。
|
void |
update()
本Publisher実装では、何も行いません。
|
ReturnCode |
write(org.omg.CORBA.portable.OutputStream data) |
ReturnCode |
write(org.omg.CORBA.portable.OutputStream data,
int sec,
int usec)
Write data
|
protected Logbuf rtcout
public void update()
本Publisher実装では、何も行いません。
public int svc()
当該Publisherを駆動するスレッドコンテキストです。コンシューマの送出処理が呼び出されます。
protected ReturnCode pushAll()
pushAll
push all policy
protected ReturnCode pushFifo()
pushFifo
push "fifo" policy
protected ReturnCode pushSkip()
pushSkip
push "skip" policy
protected ReturnCode pushNew()
pushNew
push "new" policy
public void run()
当該Publisherを駆動するスレッドコンテキストです。コンシューマの送出処理が呼び出されます。
run
in interface java.lang.Runnable
public int open()
当該Publisherの駆動を開始します。
public void release()
駆動フラグがオフとなり、Publisherの駆動が停止します。
ただし、最大1回のみコンシューマの送出処理が呼び出されることがあります。
release
in class PublisherBase
public ReturnCode init(Properties prop)
This function have to be called before using this class object. Properties object that includes certain configuration information should be given as an argument. At least, a numerical value of unit of Hz with the key of "dataport.publisher.push_rate" has to be set to the Properties object of argument. The value is the invocation cycle of data sending process. In case of 5 ms period or 200 Hz, the value should be set as 200.0. False will be returned, if there is no value with the key of "dataport.publisher.push_rate". The following options are available.
init
in class PublisherBase
prop
-
Property objects that includes the control information
of this Publisherprotected void setPushPolicy(Properties prop)
Setting PushPolicy
protected boolean createTask(Properties prop)
Setting Task
public ReturnCode setConsumer(InPortConsumer consumer)
setConsumer
Store InPort consumer
setConsumer
in class PublisherBase
consumer
- public ReturnCode setBuffer(BufferBase<org.omg.CORBA.portable.OutputStream> buffer)
setBuffer
Setting buffer
setBuffer
in class PublisherBase
buffer
- public ReturnCode setListener(ConnectorBase.ConnectorInfo info, ConnectorListeners listeners)
setListener
in class PublisherBase
public ReturnCode write(org.omg.CORBA.portable.OutputStream data, int sec, int usec)
This function writes data into the buffer associated with this Publisher. If a Publisher object calls this function, without initializing correctly such as a consumer, a buffer, listeners, etc., error code PRECONDITION_NOT_MET will be returned and no operation of the writing to a buffer etc. will be performed. Since writing into the buffer and sending data to InPort are performed asynchronously, occasionally this function returns return-codes such as CONNECTION_LOST and BUFFER_FULL that indicate the result of sending data to InPort. In this case, writing data into buffer will not be performed. When publisher writes data to the buffer, if the buffer is filled, returns error, is returned with timeout and returns precondition error, error codes BUFFER_FULL, BUFFER_ERROR, BUFFER_TIMEOUT and PRECONDITION_NOT_MET will be returned respectively. In other cases, PROT_ERROR will be returned.
write
in class PublisherBase
data
-
Data to be wrote to the buffersec
-
Timeout time in unit secondsusec
-
Timeout time in unit micro-secondspublic ReturnCode write(org.omg.CORBA.portable.OutputStream data)
write
in class PublisherBase
public boolean isActive()
write
isActive
in class PublisherBase
public ReturnCode activate()
activate
activate
in class PublisherBase
public ReturnCode deactivate()
deactivate
deactivate
in class PublisherBase
public PublisherBase creator_()
creator_
creator_
in interface ObjectCreator<PublisherBase>
public void destructor_(java.lang.Object obj)
destructor_
destructor_
in interface ObjectDestructor
obj
- The target instances for destructionprotected ReturnCode convertReturn(ReturnCode status, org.omg.CORBA.portable.OutputStream data)
convertReturn
protected ReturnCode invokeListener(ReturnCode status, org.omg.CORBA.portable.OutputStream data)
public static void PublisherPeriodicInit()
PublisherPeriodicInit
public java.lang.String getName()
getName
getName
in class PublisherBase
protected void onBufferWrite(org.omg.CORBA.portable.OutputStream data)
Connector data listener functions
protected void onBufferFull(org.omg.CORBA.portable.OutputStream data)
protected void onBufferWriteTimeout(org.omg.CORBA.portable.OutputStream data)
protected void onBufferRead(org.omg.CORBA.portable.OutputStream data)
protected void onSend(org.omg.CORBA.portable.OutputStream data)
protected void onReceived(org.omg.CORBA.portable.OutputStream data)
protected void onReceiverFull(org.omg.CORBA.portable.OutputStream data)
protected void onReceiverTimeout(org.omg.CORBA.portable.OutputStream data)
protected void onReceiverError(org.omg.CORBA.portable.OutputStream data)
protected void onBufferEmpty()
Connector listener functions
protected void onSenderEmpty()
protected void onSenderError()