VoiceRopeServerSunRPCClientStub.mesa
Copyright Ó 1990 by Xerox Corporation. All rights reserved.
Derived from VoiceRopeServerP912V1ClientImpl.mesa
Generated by PolleZ.pa at May 16, 1990 3:45:53 pm PDT
using Sirocco [2.0] of February 10, 1989 6:26:26 pm PST
Pier, May 24, 1990 2:46:51 pm PDT
Swinehart, September 16, 1990 12:43:16 pm PDT
Polle Zellweger, December 27, 1990 6:15 pm PST
VoiceRopeServerSunRPCClientStub:
CEDAR
PROGRAM
IMPORTS SunRPC, SRPCCalls
EXPORTS VoiceRopeServerSunRPCClient ~ {
OPEN VoiceRopeServerSunRPC, SRPCCalls;
GetError: SunRPCGetErrorProc ~ {
No errors in VoiceRopeServer interface.
ec: ROPE;
explanation: ROPE;
ec ← SunRPC.GetRope[h];
explanation ← SunRPC.GetRope[h];
IF NOT Rope.InlineIsEmpty[ec] THEN ERROR Error[ec, explanation];
Remote Procedures --
Forget:
PUBLIC ForgetType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutRope[h, class];
SunRPC.PutRope[h, refID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~7 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Play:
PUBLIC PlayType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, voiceRope.ropeID];
SunRPC.PutInt32[h, voiceRope.start];
SunRPC.PutInt32[h, voiceRope.length];
SunRPC.PutCard32[h, credentials.partyID];
SunRPC.PutCard32[h, credentials.smartsID];
SunRPC.PutCard32[h, credentials.convID];
SunRPC.PutCard32[h, ORD[credentials.state]];
SunRPC.PutCard32[h, credentials.stateID];
SunRPC.PutCard32[h, serviceID];
SunRPC.PutCard32[h, intID];
SunRPCPutBool[h, queueIt];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~2 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Record:
PUBLIC RecordType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, credentials.partyID];
SunRPC.PutCard32[h, credentials.smartsID];
SunRPC.PutCard32[h, credentials.convID];
SunRPC.PutCard32[h, ORD[credentials.state]];
SunRPC.PutCard32[h, credentials.stateID];
SunRPC.PutCard32[h, serviceID];
SunRPC.PutCard32[h, recordedParty];
SunRPC.PutCard32[h, intID];
SunRPCPutBool[h, queueIt];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
voiceRope.ropeID ← SunRPC.GetRope[h];
voiceRope.start ← SunRPC.GetInt32[h];
voiceRope.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~1 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Cat:
PUBLIC CatType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr1.ropeID];
SunRPC.PutInt32[h, vr1.start];
SunRPC.PutInt32[h, vr1.length];
SunRPC.PutRope[h, vr2.ropeID];
SunRPC.PutInt32[h, vr2.start];
SunRPC.PutInt32[h, vr2.length];
SunRPC.PutRope[h, vr3.ropeID];
SunRPC.PutInt32[h, vr3.start];
SunRPC.PutInt32[h, vr3.length];
SunRPC.PutRope[h, vr4.ropeID];
SunRPC.PutInt32[h, vr4.start];
SunRPC.PutInt32[h, vr4.length];
SunRPC.PutRope[h, vr5.ropeID];
SunRPC.PutInt32[h, vr5.start];
SunRPC.PutInt32[h, vr5.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
new.ropeID ← SunRPC.GetRope[h];
new.start ← SunRPC.GetInt32[h];
new.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~9 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Stop:
PUBLIC StopType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, creentials.partyID];
SunRPC.PutCard32[h, creentials.smartsID];
SunRPC.PutCard32[h, creentials.convID];
SunRPC.PutCard32[h, ORD[creentials.state]];
SunRPC.PutCard32[h, creentials.stateID];
SunRPC.PutCard32[h, serviceID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~3 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Substr:
PUBLIC SubstrType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, start];
SunRPC.PutInt32[h, len];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
new.ropeID ← SunRPC.GetRope[h];
new.start ← SunRPC.GetInt32[h];
new.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~10 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Replace:
PUBLIC ReplaceType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, start];
SunRPC.PutInt32[h, len];
SunRPC.PutRope[h, with.ropeID];
SunRPC.PutInt32[h, with.start];
SunRPC.PutInt32[h, with.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
new.ropeID ← SunRPC.GetRope[h];
new.start ← SunRPC.GetInt32[h];
new.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~11 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
DescribeRope:
PUBLIC DescribeRopeType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, minSilence];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
length ← SunRPC.GetInt32[h];
noise ← UProc1[h];
};
SunRPCCall[h~h, remoteProc~13 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
SetPermissions:
PUBLIC SetPermissionsType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
MProc2[h, playAccess];
MProc2[h, editAccess];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~17 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Pause:
PUBLIC PauseType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, cedentials.partyID];
SunRPC.PutCard32[h, cedentials.smartsID];
SunRPC.PutCard32[h, cedentials.convID];
SunRPC.PutCard32[h, ORD[cedentials.state]];
SunRPC.PutCard32[h, cedentials.stateID];
SunRPC.PutCard32[h, serviceID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~4 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Resume:
PUBLIC ResumeType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutCard32[h, credentials.partyID];
SunRPC.PutCard32[h, credentials.smartsID];
SunRPC.PutCard32[h, credentials.convID];
SunRPC.PutCard32[h, ORD[credentials.state]];
SunRPC.PutCard32[h, credentials.stateID];
SunRPC.PutCard32[h, serviceID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~5 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
GetEnergies:
PUBLIC GetEnergiesType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutCard32[h, samplesPerSegment];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
energies ← UProc3[h];
};
SunRPCCall[h~h, remoteProc~14 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
GetPermissions:
PUBLIC GetPermissionsType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
playAccess ← UProc4[h];
editAccess ← UProc4[h];
};
SunRPCCall[h~h, remoteProc~18 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Length:
PUBLIC LengthType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
len ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~12 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
GetByInterest:
PUBLIC GetByInterestType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, class];
SunRPC.PutRope[h, refID];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
voiceRope.ropeID ← SunRPC.GetRope[h];
voiceRope.start ← SunRPC.GetInt32[h];
voiceRope.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~8 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
StoreBlock:
PUBLIC StoreBlockType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
MProc5[h, block];
FOR i6:
CARDINAL
IN [0..3)
DO
SunRPC.PutCard32[h, key[i6]];
ENDLOOP;
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
voiceRope.ropeID ← SunRPC.GetRope[h];
voiceRope.start ← SunRPC.GetInt32[h];
voiceRope.length ← SunRPC.GetInt32[h];
};
SunRPCCall[h~h, remoteProc~16 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Retain:
PUBLIC RetainType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, callerRName];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutRope[h, class];
SunRPC.PutRope[h, refID];
SunRPC.PutRope[h, other];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
};
SunRPCCall[h~h, remoteProc~6 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
FetchBlock:
PUBLIC FetchBlockType ~ {
PutArgs: SunRPCPutArgsProc ~ {
SunRPC.PutCard32[h, shhh];
SunRPC.PutRope[h, vr.ropeID];
SunRPC.PutInt32[h, vr.start];
SunRPC.PutInt32[h, vr.length];
SunRPC.PutInt32[h, start];
SunRPC.PutInt32[h, len];
SunRPCPutBool[h, decrypt];
};
GetResults: SunRPCGetResultsProc ~ {
nb ← SunRPC.GetRope[h];
block ← UProc7[h];
};
SunRPCCall[h~h, remoteProc~15 , putArgs~PutArgs, getResults~GetResults, getError~GetError];
};
Unmarshal / Marshal Procs --
SunRPCGetBool:
PROC [h: Handle]
RETURNS [
BOOL] ~
INLINE {
RETURN [SunRPC.GetCard32[h] # 0] };
SunRPCPutBool:
PROC [h: Handle, bool:
BOOL] ~
INLINE {
SunRPC.PutCard32[h, IF bool THEN 1 ELSE 0] };
MProc2:
PROC [h: Handle, val: Users] ~ {
SunRPC.PutCard32[h, val.length];
FOR i8:
CARDINAL
IN [0..val.length)
DO
SunRPC.PutRope[h, val.body[i8]];
ENDLOOP;
};
UProc3:
PROC [h: Handle]
RETURNS [res: EnergySequence] ~ {
{
length10: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[EnergySequenceObject[length10]];
FOR i9:
CARDINAL
IN [0..length10)
DO
res.body[i9] ← SunRPC.GetCard32[h];
ENDLOOP;
};
};
MProc5:
PROC [h: Handle, val: VoiceBlock] ~ {
SunRPC.PutCard32[h, val.length];
FOR i11:
CARDINAL
IN [0..val.length)
DO
SunRPC.PutCard32[h, val.body[i11]];
ENDLOOP;
};
UProc4:
PROC [h: Handle]
RETURNS [res: Users] ~ {
{
length13: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[UsersObject[length13]];
FOR i12:
CARDINAL
IN [0..length13)
DO
res.body[i12] ← SunRPC.GetRope[h];
ENDLOOP;
};
};
UProc7:
PROC [h: Handle]
RETURNS [res: VoiceBlock] ~ {
{
length15: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[VoiceBlockObject[length15]];
FOR i14:
CARDINAL
IN [0..length15)
DO
res.body[i14] ← SunRPC.GetCard32[h];
ENDLOOP;
};
};
UProc1:
PROC [h: Handle]
RETURNS [res: IntervalSpecs] ~ {
{
length17: CARDINAL ~ SunRPC.GetCard32[h];
res ← NEW[IntervalSpecsObject[length17]];
FOR i16:
CARDINAL
IN [0..length17)
DO
res.body[i16].start ← SunRPC.GetInt32[h];
res.body[i16].length ← SunRPC.GetInt32[h];
ENDLOOP;
};
};
SunRPCCall:
PROC [h: Handle, remoteProc:
CARD, putArgs: SunRPCPutArgsProc, getResults: SunRPCGetResultsProc, getError: SunRPCGetErrorProc] ~ {
SunRPCProgramCall[h: h, remoteProc: remoteProc, putArgs: putArgs, getResults: getResults, getError: getError];
};
}...