NumberOfBuffers=2000 //Compulsory. Number of buffers in the circular buffer defined above. Each buffer is capable of holding a copy of all the DataSourceI signals.
CPUMask=0x8 //Compulsory. Affinity assigned to the threads responsible for asynchronously flush data into the MDSplus database.
StackSize=10000000 //Compulsory. Stack size of the thread above.
TreeName="martetest"//Compulsory. Name of the MDSplus tree.
PulseNumber=-1 //Optional. If -1 a new pulse will be created and the MDSplus pulse number incremented.
StoreOnTrigger=0 //Compulsory. If 0 all the data in the circular buffer is continuously stored. If 1 data is stored when the Trigger signal is 1 (see below).
EventName="updatejScope"//Compulsory. Event sent to jScope when TimeRefresh seconds have elapsed.
TimeRefresh=5 //Compulsory. An event with the name set in the property EventName is sent to jScope when TimeRefresh seconds have elapsed.
NumberOfPreTriggers=0 //Compulsory iff StoreOnTrigger = 1. Number of cycles to store before the trigger.
NumberOfPostTriggers=0 //Compulsory iff StoreOnTrigger = 1. Number of cycles to store after the trigger.
Signals={
/*
Trigger={ //Compulsory when StoreOnTrigger = 1. Must be set in index 0 of the Signals node. When the value of this signal is 1 data will be stored.
Type=uint8 //Type must be uint8
}
Time={ //Compulsory when StoreOnTrigger = 1. Can be store in any index, but TimeSignal must be set = 1
Type=uint32 //Type must be uint32 or int32
TimeSignal=1 //When set, this signal will be considered as the time source against which all signals will be stored.
TimeSignalMultiplier=1e-9 //Default = 1e-6. Multiplier to convert the time signal units into seconds,
Period=1 //Compulsory. Period between signal samples.
AutomaticSegmentation=0 // 1 || 0. When set to 1 MDSplus::putRow() is used instead of MDSplus::makeSegment()
MakeSegmentAfterNWrites=2000 //Compulsory if AutomaticSegmentation = 0. Forces the creation of a segment after N MARTe cycles. If AutomaticSegmentation = 0 then MakeSegmentAfterNWrites = 1.
/*
DecimatedNodeName="SIGUINT16D"//Optional. The node where MDSplus stores the automatically computed decimated signal. When AutomaticSegmentation = 1 this field is ignored.
MinMaxResampleFactor=4 //Compulsory if DecimatedNodeName is set. Decimation factor that MDSplus applies to the decimated version of the signal. AutomaticSegmentation = 1 this field is ignored.
*/
SamplePhase=0 //Optional. Shift the time vector by SamplePhase * Period
//DiscontinuityFactor=0. // Optional. A discontinuity is considered if the delta between two consecutive samples is greater than T+DiscontinuityFactor*T (where T is the nominal period) or
+Messages={ //Optional. If set a message will be fired every time one of the events below occur
Class=ReferenceContainer
+TreeOpenedOK={ //Optional, but if set, the name of the Object shall be TreeOpenedOK. If set a message containing a ConfigurationDatabase with param1=PULSE_NUMBER will be sent to the Destination, every time the Tree is successfully opened
Class=Message
Destination=SomeObject
Function=SomeFunction
Mode=ExpectsReply
}
+TreeOpenedFail={ //Optional, but if set, the name of the Object shall be TreeOpenedFail. If set a message will be sent to the Destination, every time the Tree cannot be successfully opened
Class=Message
Destination=SomeObject
Function=SomeFunction
Mode=ExpectsReply
}
+TreeFlushed={ //Optional, but if set, the name of the Object shall be TreeFlushed. If set a message will be sent to the Destination, every time the Tree is flushed.
*<li>2-->MDSReaderholdsthevaluefollowingthecriteriaofthenearestvaluegivenspecifictime.I.ethenodedatais(t1,d1)=(1,1)and(t2,d2)=(2,5)andthecurrentTimeist=1.6 the