15 namespace parameter_server {
 
   22   virtual uint32_t read(
void* out_data, uint32_t size, 
struct timespec* update_time) = 0;
 
   24   virtual bool compareAndSwapUpdateCounter(uint32_t& last_update_counter) = 0;
 
   26   virtual void setUpdateOutputFlag(
bool newval) = 0;
 
   28   virtual void setUpdateOutputOnceFlag(uint32_t length) = 0;
 
   30   virtual void setUpdateOutputOnInputFlag(
bool newval) = 0;
 
   32   virtual uint32_t addRequest() = 0;
 
   34   virtual uint32_t getReplyId() = 0;
 
   36   virtual void write(
const void* in_data, uint32_t size) = 0;
 
   38   virtual void force(
const void* in_data, uint32_t size) = 0;
 
   40   virtual void setForceFlag(
bool overwrite_active) = 0;
 
   42   virtual void setUserGroup(UserGroup user_group, 
bool recursive) = 0;
 
   44   virtual void setPermissions(Permission permission, 
bool recursive) = 0;
 
   46   virtual void activateLink(
bool flag) = 0;
 
   50   virtual size_t getSize() 
const = 0;
 
   52   virtual size_t getMaxSize() 
const = 0;